[management] Auditor role (#3721)

This commit is contained in:
Pedro Maia Costa 2025-04-25 15:04:25 +01:00 committed by GitHub
parent c0eaea938e
commit 39483f8ca8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 23 additions and 3 deletions

View File

@ -0,0 +1,16 @@
package roles
import (
"github.com/netbirdio/netbird/management/server/permissions/operations"
"github.com/netbirdio/netbird/management/server/types"
)
var Auditor = RolePermissions{
Role: types.UserRoleAuditor,
AutoAllowNew: map[operations.Operation]bool{
operations.Read: true,
operations.Create: false,
operations.Update: false,
operations.Delete: false,
},
}

View File

@ -15,7 +15,8 @@ type RolePermissions struct {
type Permissions map[modules.Module]map[operations.Operation]bool type Permissions map[modules.Module]map[operations.Operation]bool
var RolesMap = map[types.UserRole]RolePermissions{ var RolesMap = map[types.UserRole]RolePermissions{
types.UserRoleOwner: Owner, types.UserRoleOwner: Owner,
types.UserRoleAdmin: Admin, types.UserRoleAdmin: Admin,
types.UserRoleUser: User, types.UserRoleUser: User,
types.UserRoleAuditor: Auditor,
} }

View File

@ -15,6 +15,7 @@ const (
UserRoleUser UserRole = "user" UserRoleUser UserRole = "user"
UserRoleUnknown UserRole = "unknown" UserRoleUnknown UserRole = "unknown"
UserRoleBillingAdmin UserRole = "billing_admin" UserRoleBillingAdmin UserRole = "billing_admin"
UserRoleAuditor UserRole = "auditor"
UserStatusActive UserStatus = "active" UserStatusActive UserStatus = "active"
UserStatusDisabled UserStatus = "disabled" UserStatusDisabled UserStatus = "disabled"
@ -35,6 +36,8 @@ func StrRoleToUserRole(strRole string) UserRole {
return UserRoleUser return UserRoleUser
case "billing_admin": case "billing_admin":
return UserRoleBillingAdmin return UserRoleBillingAdmin
case "auditor":
return UserRoleAuditor
default: default:
return UserRoleUnknown return UserRoleUnknown
} }