authz

package
v1.8.4 Latest Latest
Warning

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

Go to latest
Published: Jul 23, 2026 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CapProjectsRead  = "projects.read"
	CapProjectsWrite = "projects.write"

	CapMembersRead  = "members.read"
	CapMembersWrite = "members.write"

	CapRolesRead  = "roles.read"
	CapRolesWrite = "roles.write"

	CapTenantsRead   = "tenants.read"
	CapTenantsWrite  = "tenants.write"
	CapTenantsDelete = "tenants.delete"

	CapSchemaRead    = "schema.read"
	CapSchemaWrite   = "schema.write"
	CapSchemaPublish = "schema.publish"

	CapDataRead   = "data.read"
	CapDataWrite  = "data.write"
	CapDataDelete = "data.delete"

	CapRelationsWrite = "relations.write"

	CapFunctionsRead   = "functions.read"
	CapFunctionsWrite  = "functions.write"
	CapFunctionsTest   = "functions.test"
	CapFunctionsDeploy = "functions.deploy"
	CapFunctionsDelete = "functions.delete"

	CapFilesRead   = "files.read"
	CapFilesWrite  = "files.write"
	CapFilesDelete = "files.delete"

	CapPluginsRead   = "plugins.read"
	CapPluginsWrite  = "plugins.write"
	CapPluginsDeploy = "plugins.deploy"

	CapSyncRead  = "sync.read"
	CapSyncWrite = "sync.write"

	CapAuditRead     = "audit.read"
	CapSettingsRead  = "settings.read"
	CapSettingsWrite = "settings.write"

	CapDatabaseRead  = "database.read"
	CapDatabaseWrite = "database.write"
)

Canonical capability identifiers.

View Source
const (
	RiskLow    = "low"
	RiskMedium = "medium"
	RiskHigh   = "high"
	RiskDanger = "danger"
)

Risk tiers for Console danger acknowledgements.

Variables

This section is empty.

Functions

func AllCapabilityIDs

func AllCapabilityIDs() []string

AllCapabilityIDs returns every registered capability id.

func ErrUnknownCapability

func ErrUnknownCapability(id string) error

ErrUnknownCapability constructs the error.

func ErrUnknownPreset

func ErrUnknownPreset(id string) error

ErrUnknownPreset constructs the error.

func ExpandImplies

func ExpandImplies(caps []string) []string

ExpandImplies adds implied capabilities transitively.

func HasCapability

func HasCapability(granted []string, required string) bool

HasCapability reports whether granted (already expanded) includes required.

func HasDangerCapability

func HasDangerCapability(caps []string) bool

HasDangerCapability reports whether any capability requires danger acknowledgement.

func ResolvePreset

func ResolvePreset(presetID string, custom []string) ([]string, error)

ResolvePreset returns capabilities for a preset id. custom returns nil (caller supplies).

func ValidateCapabilities

func ValidateCapabilities(caps []string) ([]string, error)

ValidateCapabilities rejects unknown ids. Returns normalized unique list (with implies expanded).

Types

type Capability

type Capability struct {
	ID          string   `json:"id"`
	Label       string   `json:"label"`
	Group       string   `json:"group"`
	Description string   `json:"description"`
	Risk        string   `json:"risk"`
	Implies     []string `json:"implies,omitempty"`
	Danger      bool     `json:"danger,omitempty"`
}

Capability describes one registry entry.

func All

func All() []Capability

All returns a copy of the capability registry.

func Get

func Get(id string) (Capability, bool)

Get returns a capability by id.

type OperationBinding

type OperationBinding struct {
	Operation  string `json:"operation"`
	Capability string `json:"capability"`
	Surface    string `json:"surface"`
}

OperationBinding maps a logical operation to required capability.

func DefaultOperationBindings

func DefaultOperationBindings() []OperationBinding

DefaultOperationBindings is the explicit endpoint→capability map (enforce gradually).

type Preset

type Preset struct {
	ID           string   `json:"id"`
	Label        string   `json:"label"`
	Description  string   `json:"description"`
	Capabilities []string `json:"capabilities"`
	Danger       bool     `json:"danger,omitempty"`
	DefaultDays  int      `json:"default_days"`
}

Preset is a Console-facing capability bundle.

func Presets

func Presets() []Preset

Presets returns Console presets.

Jump to

Keyboard shortcuts

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