Documentation ¶
Overview ¶
Package role defines an interface for requesting blessings from a role account server.
Index ¶
Constants ¶
const RoleSuffix = "_role"
Role.SeekBlessings will return an error if the requestor does not present blessings that end in this suffix.
Variables ¶
var RoleDesc rpc.InterfaceDesc = descRole
RoleDesc describes the Role interface.
Functions ¶
This section is empty.
Types ¶
type RoleClientMethods ¶
type RoleClientMethods interface {
SeekBlessings(*context.T, ...rpc.CallOpt) (security.Blessings, error)
}
RoleClientMethods is the client interface containing Role methods.
Role is an interface to request blessings from a role account server. The returned blessings are bound to the client's public key thereby authorizing the client to acquire the role. The server may tie the returned blessings with the client's presented blessing name in order to maintain audit information in the blessing.
In order to avoid granting role blessings to all delegates of a principal, the role server requires that each authorized blessing presented by the client have the string "_role" as suffix.
type RoleClientStub ¶
type RoleClientStub interface { RoleClientMethods rpc.UniversalServiceMethods }
RoleClientStub adds universal methods to RoleClientMethods.
func RoleClient ¶
func RoleClient(name string) RoleClientStub
RoleClient returns a client stub for Role.
type RoleServerMethods ¶
type RoleServerMethods interface {
SeekBlessings(*context.T, rpc.ServerCall) (security.Blessings, error)
}
RoleServerMethods is the interface a server writer implements for Role.
Role is an interface to request blessings from a role account server. The returned blessings are bound to the client's public key thereby authorizing the client to acquire the role. The server may tie the returned blessings with the client's presented blessing name in order to maintain audit information in the blessing.
In order to avoid granting role blessings to all delegates of a principal, the role server requires that each authorized blessing presented by the client have the string "_role" as suffix.
type RoleServerStub ¶
type RoleServerStub interface { RoleServerStubMethods // Describe the Role interfaces. Describe__() []rpc.InterfaceDesc }
RoleServerStub adds universal methods to RoleServerStubMethods.
func RoleServer ¶
func RoleServer(impl RoleServerMethods) RoleServerStub
RoleServer returns a server stub for Role. It converts an implementation of RoleServerMethods into an object that may be used by rpc.Server.
type RoleServerStubMethods ¶
type RoleServerStubMethods RoleServerMethods
RoleServerStubMethods is the server interface containing Role methods, as expected by rpc.Server. There is no difference between this interface and RoleServerMethods since there are no streaming methods.