guacamole

package module
v0.0.0-...-fc50f9e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 11, 2022 License: MIT Imports: 9 Imported by: 0

README

Guacamole Golang Frontend API

This package is built for (Apache Guacamole)[http://guacamole.apache.org].

I created it to access the built-in client application's frontend API in order to programatically add Users, Connections and Permissions for those connections. It's done by reverse engineering the AJAX calls from the webUI.

The Goal is to use this library in a terraform provider that creates these resources when needed.

In it's current state the style of the code is very raw, and a Work In Progress Also a caveat that i am by no means a software developer, and i'm doing this partly to get familiar with Golang.

PRs are most welcome.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Guac

type Guac struct {
	URI      string
	Username string
	Password string
	Token    string
}

func (*Guac) Call

func (g *Guac) Call(m, u string, xq map[string]string, b interface{}) ([]byte, error)

func (*Guac) Connect

func (g *Guac) Connect() error

func (*Guac) CreateConnection

func (g *Guac) CreateConnection(conn *GuacConnection) (GuacConnection, error)

func (*Guac) CreateConnectionGroup

func (g *Guac) CreateConnectionGroup(conn *GuacConnectionGroup) (GuacConnectionGroup, error)

func (*Guac) CreateUser

func (g *Guac) CreateUser(user *GuacUser) (GuacUser, error)

func (*Guac) CreateUserGroup

func (g *Guac) CreateUserGroup(group *GuacUserGroup) (GuacUserGroup, error)

func (*Guac) DeleteConnection

func (g *Guac) DeleteConnection(conn *GuacConnection) error

func (*Guac) DeleteConnectionGroup

func (g *Guac) DeleteConnectionGroup(conn *GuacConnectionGroup) error

func (*Guac) DeleteUser

func (g *Guac) DeleteUser(user *GuacUser) error

func (*Guac) DeleteUserGroup

func (g *Guac) DeleteUserGroup(group *GuacUserGroup) error

func (*Guac) GetConnectionTree

func (g *Guac) GetConnectionTree() (GuacConnectionGroup, error)

func (*Guac) GetUserConnectionPermissions

func (g *Guac) GetUserConnectionPermissions(user string) (GuacPermissionData, error)

func (*Guac) ListConnectionGroups

func (g *Guac) ListConnectionGroups() ([]GuacConnectionGroup, error)

func (*Guac) ListConnections

func (g *Guac) ListConnections() ([]GuacConnection, error)

func (*Guac) ListUserGroups

func (g *Guac) ListUserGroups() ([]GuacUserGroup, error)

func (*Guac) ListUsers

func (g *Guac) ListUsers() ([]GuacUser, error)

func (*Guac) ReadConnection

func (g *Guac) ReadConnection(conn *GuacConnection) (GuacConnection, error)

func (*Guac) ReadConnectionGroup

func (g *Guac) ReadConnectionGroup(conn *GuacConnectionGroup) (GuacConnectionGroup, error)

func (*Guac) ReadUser

func (g *Guac) ReadUser(user *GuacUser) (GuacUser, error)

func (*Guac) ReadUserGroup

func (g *Guac) ReadUserGroup(group *GuacUserGroup) (GuacUserGroup, error)

func (*Guac) RefreshToken

func (g *Guac) RefreshToken() error

func (*Guac) SendUserConnectionPermissionChanges

func (g *Guac) SendUserConnectionPermissionChanges(user string, p []GuacPermissionItem) error

func (*Guac) UpdateConnection

func (g *Guac) UpdateConnection(conn *GuacConnection) error

func (*Guac) UpdateConnectionGroup

func (g *Guac) UpdateConnectionGroup(conn *GuacConnectionGroup) error

func (*Guac) UpdateUser

func (g *Guac) UpdateUser(user *GuacUser) error

func (*Guac) UpdateUserGroup

func (g *Guac) UpdateUserGroup(group *GuacUserGroup) error

Directories

Path Synopsis
examples

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL