Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Middleware ¶
type Middleware struct {
// contains filtered or unexported fields
}
Middleware implements RBAC authorization Uses O(1) hash set lookups instead of O(n) linear search
func NewMiddleware ¶
func NewMiddleware() *Middleware
NewMiddleware creates a new RBAC middleware with O(1) permission lookups
func (*Middleware) HasPermission ¶
func (m *Middleware) HasPermission(role Role, perm Permission) bool
HasPermission checks if a role has a specific permission Optimized: O(1) hash lookup instead of O(n) linear search
func (*Middleware) Require ¶
func (m *Middleware) Require(perm Permission) func(http.Handler) http.Handler
Require returns a middleware that enforces permission
type Permission ¶
type Permission string
Permission represents an action permission
const ( PermBan Permission = "ban" PermUnban Permission = "unban" PermList Permission = "list" PermSearch Permission = "search" PermMetricsRead Permission = "metrics.read" PermAuditRead Permission = "audit.read" PermConfigRead Permission = "config.read" PermConfigWrite Permission = "config.write" PermServiceControl Permission = "service.control" )
Click to show internal directories.
Click to hide internal directories.