Documentation
¶
Overview ¶
Package query provides the client for querying spicedb
Index ¶
- Variables
- func GetResourceTypes() []types.ResourceType
- type Engine
- func (e *Engine) AssignSubjectRole(ctx context.Context, subject types.Resource, role types.Role) (string, error)
- func (e *Engine) CreateRelationships(ctx context.Context, rels []types.Relationship) (string, error)
- func (e *Engine) CreateRole(ctx context.Context, res types.Resource, actions []string) (types.Role, string, error)
- func (e *Engine) ListAssignments(ctx context.Context, role types.Role, queryToken string) ([]types.Resource, error)
- func (e *Engine) ListRelationships(ctx context.Context, resource types.Resource, queryToken string) ([]types.Relationship, error)
- func (e *Engine) ListRoles(ctx context.Context, resource types.Resource, queryToken string) ([]types.Role, error)
- func (e *Engine) NewResourceFromURN(urn *urnx.URN) (types.Resource, error)
- func (e *Engine) NewURNFromResource(res types.Resource) (*urnx.URN, error)
- func (e *Engine) SubjectHasPermission(ctx context.Context, subject types.Resource, action string, ...) error
- type Stores
Constants ¶
This section is empty.
Variables ¶
var ( // ErrActionNotAssigned represents an error condition where the subject is not able to complete // the given request. ErrActionNotAssigned = errors.New("the subject does not have permissions to complete this request") // ErrInvalidReference represents an error condition where a given SpiceDB object reference is for some reason invalid. ErrInvalidReference = errors.New("invalid reference") )
Functions ¶
func GetResourceTypes ¶
func GetResourceTypes() []types.ResourceType
GetResourceTypes returns the list of resource types.
Types ¶
type Engine ¶
type Engine struct {
// contains filtered or unexported fields
}
Engine represents a client for making permissions queries.
func (*Engine) AssignSubjectRole ¶
func (e *Engine) AssignSubjectRole(ctx context.Context, subject types.Resource, role types.Role) (string, error)
AssignSubjectRole assigns the given role to the given subject.
func (*Engine) CreateRelationships ¶
func (e *Engine) CreateRelationships(ctx context.Context, rels []types.Relationship) (string, error)
CreateRelationships atomically creates the given relationships in SpiceDB.
func (*Engine) CreateRole ¶
func (e *Engine) CreateRole(ctx context.Context, res types.Resource, actions []string) (types.Role, string, error)
CreateRole creates a role scoped to the given resource with the given actions.
func (*Engine) ListAssignments ¶
func (e *Engine) ListAssignments(ctx context.Context, role types.Role, queryToken string) ([]types.Resource, error)
ListAssignments returns the assigned subjects for a given role.
func (*Engine) ListRelationships ¶
func (e *Engine) ListRelationships(ctx context.Context, resource types.Resource, queryToken string) ([]types.Relationship, error)
ListRelationships returns all non-role relationships bound to a given resource.
func (*Engine) ListRoles ¶
func (e *Engine) ListRoles(ctx context.Context, resource types.Resource, queryToken string) ([]types.Role, error)
ListRoles returns all roles bound to a given resource.
func (*Engine) NewResourceFromURN ¶
NewResourceFromURN returns a new resource struct from a given urn
func (*Engine) NewURNFromResource ¶
NewURNFromResource creates a new URN namespaced to the given engine from the given resource.