authorization

package
v0.0.4 Latest Latest
Warning

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

Go to latest
Published: Mar 17, 2025 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

View Source
const (
	EntityIDsKey   = "entity_ids"
	PrincipalIDKey = "principal_id"
	RoleKey        = "role"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AuthorizeMany

type AuthorizeMany struct {
	Meta `bson:",inline"`
	Comp `bson:",inline"`
	// EntityIDs is a list of IDs for the entities to authorize.
	// example:["5f8f9a9a9a9a9a9a9a9a9a9a","5f8f9a9a9a9a9a9a9a9a9a9a"]
	// required:true
	EntityIDs *[]primitive.ObjectID `json:"entity_ids" validate:"nonnilpointer,nonzeropointerelem"`
	// PrincipalID is the ID of the principal to authorize for entity access.
	// example:5f8f9a9a9a9a9a9a9a9a9a9a
	// required:true
	PrincipalID *primitive.ObjectID `json:"principal_id" validate:"nonnilpointer,nonzeropointerelem"`
	// Role is the role assigned to the principal for the entities, as defined in the authorization microservice.
	// example:1
	// required:true
	// format:int64
	Role *int64 `json:"role" validate:"nonnilpointer,rolerange"`
}

AuthorizeMany represents the payload to authorize multiple entities. swagger:model

func NewAuthorizeMany

func NewAuthorizeMany(m Meta, c Comp, entityIDs []primitive.ObjectID, principalID primitive.ObjectID, role int64) *AuthorizeMany

func (*AuthorizeMany) GetEntityIDs

func (a *AuthorizeMany) GetEntityIDs() []primitive.ObjectID

func (*AuthorizeMany) GetPrincipalID

func (a *AuthorizeMany) GetPrincipalID() primitive.ObjectID

func (*AuthorizeMany) GetRole

func (a *AuthorizeMany) GetRole() int64

func (*AuthorizeMany) SetEntityIDs

func (a *AuthorizeMany) SetEntityIDs(x []primitive.ObjectID)

func (*AuthorizeMany) SetPrincipalID

func (a *AuthorizeMany) SetPrincipalID(x primitive.ObjectID)

func (*AuthorizeMany) SetRole

func (a *AuthorizeMany) SetRole(x int64)

type Comp

type Comp struct{}

func ApplyComp

func ApplyComp(c *Comp, modifiers ...CompOption) Comp

type CompOption

type CompOption = contract.CompOption[Comp]

type Meta

type Meta struct{}

func ApplyMeta

func ApplyMeta(m *Meta, modifiers ...MetaOption) Meta

type MetaOption

type MetaOption = contract.MetaOption[Meta]

Jump to

Keyboard shortcuts

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