20 lines
412 B
Go
20 lines
412 B
Go
package auth
|
|
|
|
func HasPermission(principal Principal, permission string) bool {
|
|
for _, allowed := range principal.Permissions {
|
|
if allowed == "*" || allowed == permission {
|
|
return true
|
|
}
|
|
}
|
|
return false
|
|
}
|
|
|
|
func HasAnyPermission(principal Principal, permissions ...string) bool {
|
|
for _, permission := range permissions {
|
|
if HasPermission(principal, permission) {
|
|
return true
|
|
}
|
|
}
|
|
return false
|
|
}
|