RBAC: Allow omitting default permissions when a new resource is created (#90720)
* Cfg: Move rbac settings to own struct * Cfg: Add setting to control if resource should generate managed permissions when created * Dashboards: Check if we should generate default permissions when dashboard is created * Folders: Check if we should generate default permissions when folder is created * Datasource: Check if we should generate default permissions when datasource is created * ServiceAccount: Check if we should generate default permissions when service account is created * Cfg: Add option to specify resources for wich we should default seed * ManagedPermissions: Move providers to their own files * Dashboards: Default seed all possible managed permissions if configured * Folders: Default seed all possible managed permissions if configured * Cfg: Remove service account from list * RBAC: Move utility function * remove managed permission settings from the config file examples, change the setting names * remove ini file changes from the PR * fix setting reading * fix linting errors * fix tests * fix wildcard role seeding --------- Co-authored-by: Karl Persson <kalle.persson@grafana.com> Co-authored-by: jguer <me@jguer.space>
This commit is contained in:
co-authored by
Karl Persson
jguer
parent
82236976ae
commit
9bb2cf4968
@@ -362,6 +362,20 @@ func GetOrgRoles(user identity.Requester) []string {
|
||||
return roles
|
||||
}
|
||||
|
||||
// PermissionsForActions generate Permissions for all actions provided scoped to provided scope.
|
||||
func PermissionsForActions(actions []string, scope string) []Permission {
|
||||
permissions := make([]Permission, len(actions))
|
||||
|
||||
for i, action := range actions {
|
||||
permissions[i] = Permission{
|
||||
Action: action,
|
||||
Scope: scope,
|
||||
}
|
||||
}
|
||||
|
||||
return permissions
|
||||
}
|
||||
|
||||
func BackgroundUser(name string, orgID int64, role org.RoleType, permissions []Permission) identity.Requester {
|
||||
return &user.SignedInUser{
|
||||
OrgID: orgID,
|
||||
|
||||
Reference in New Issue
Block a user