package rbac import ( "encoding/json" "sort" ) const ( DashboardRead = "dashboard:read" AlertsRead = "alerts:read" AlertsHandle = "alerts:handle" EventsRead = "events:read" RulesRead = "rules:read" RulesWrite = "rules:write" UsersRead = "users:read" UsersWrite = "users:write" AuditRead = "audit:read" SyntheticWrite = "synthetic:write" ) type Set map[string]struct{} func (s Set) Has(permission string) bool { _, ok := s[permission]; return ok } func (s Set) MarshalJSON() ([]byte, error) { values := make([]string, 0, len(s)) for value := range s { values = append(values, value) } sort.Strings(values) return json.Marshal(values) }