ginoidc/keycloakclaims/utils.go

36 lines
789 B
Go

package keycloakclaims
// RoleInRoles returns true if role is present in the claims.
//
// Deprecated: RoleInRoles will be replaced by HasRole
func RoleInRoles(role string, claims *Claims) bool {
for _, v := range claims.RealmAccess.Roles {
if role == v {
return true
}
}
return false
}
// HasRole returns true if role is present in the claims.
func HasRole(query string, claims *Claims) bool {
for _, role := range claims.RealmAccess.Roles {
if query == role {
return true
}
}
return false
}
// HasAnyRole returns true if any of the given roles is present in the claims.
func HasAnyRole(query []string, claims *Claims) bool {
for _, q := range query {
for _, role := range claims.RealmAccess.Roles {
if q == role {
return true
}
}
}
return false
}