Documentation ¶
Overview ¶
Package ipc contains types and functions used for interprocess communication between Seesaw components.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AuthGroups ¶
func AuthGroups() []string
AuthGroups returns a list of groups who are permitted to authenticate.
Types ¶
type ConfigSource ¶
ConfigSource contains data for a config source IPC.
type Context ¶
type Context struct { AuthToken string AuthType AuthType Groups []string Peer Peer // Untrusted - client provided Proxy Peer User User }
Context contains information relating to interprocess communication.
func NewAuthContext ¶
NewAuthContext returns a new authenticated context for the given component.
func NewContext ¶
NewContext returns a new context for the given component.
func NewTrustedContext ¶
NewTrustedContext returns a new trusted context for the given component.
func (*Context) CanRead ¶
CanRead reports whether the context is allowed to read data or config. Either the context is trusted, or the remote user is authenticated and is authorized to read.
func (*Context) CanWrite ¶
CanWrite reports whether the context is allowed to mutate Seesaw state. Either the context is trusted, or the remote user is authenticated and is a member of the admin group.
func (*Context) IsAuthenticated ¶
IsAuthenticated returns whether a context is authenticated.
type Override ¶
type Override struct { Ctx *Context Vserver *seesaw.VserverOverride Destination *seesaw.DestinationOverride Backend *seesaw.BackendOverride }
Override contains data for an override IPC.
type User ¶
User contains information identifying a user.
func (User) IsOperator ¶
IsOperator returns whether the user has operator rights (includes admins).