mirror of
https://github.com/netbirdio/netbird.git
synced 2026-04-18 08:16:39 +00:00
Merge branch 'feature/user-info-with-role-permissions' into feature/users-roles-endpoint
# Conflicts: # management/server/permissions/manager.go # management/server/permissions/manager_mock.go
This commit is contained in:
@@ -21,7 +21,7 @@ type Manager interface {
|
|||||||
ValidateRoleModuleAccess(ctx context.Context, accountID string, role roles.RolePermissions, module modules.Module, operation operations.Operation) bool
|
ValidateRoleModuleAccess(ctx context.Context, accountID string, role roles.RolePermissions, module modules.Module, operation operations.Operation) bool
|
||||||
ValidateAccountAccess(ctx context.Context, accountID string, user *types.User, allowOwnerAndAdmin bool) error
|
ValidateAccountAccess(ctx context.Context, accountID string, user *types.User, allowOwnerAndAdmin bool) error
|
||||||
|
|
||||||
GetRolePermissions(ctx context.Context, role types.UserRole) (roles.Permissions, error)
|
GetPermissionsByRole(ctx context.Context, role types.UserRole) (roles.Permissions, error)
|
||||||
GetPermissions(ctx context.Context) []roles.RolePermissions
|
GetPermissions(ctx context.Context) []roles.RolePermissions
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -100,7 +100,7 @@ func (m *managerImpl) ValidateAccountAccess(ctx context.Context, accountID strin
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *managerImpl) GetRolePermissions(ctx context.Context, role types.UserRole) (roles.Permissions, error) {
|
func (m *managerImpl) GetPermissionsByRole(ctx context.Context, role types.UserRole) (roles.Permissions, error) {
|
||||||
roleMap, ok := roles.RolesMap[role]
|
roleMap, ok := roles.RolesMap[role]
|
||||||
if !ok {
|
if !ok {
|
||||||
return roles.Permissions{}, status.NewUserRoleNotFoundError(string(role))
|
return roles.Permissions{}, status.NewUserRoleNotFoundError(string(role))
|
||||||
@@ -122,7 +122,7 @@ func (m *managerImpl) GetRolePermissions(ctx context.Context, role types.UserRol
|
|||||||
func (m *managerImpl) GetPermissions(ctx context.Context) []roles.RolePermissions {
|
func (m *managerImpl) GetPermissions(ctx context.Context) []roles.RolePermissions {
|
||||||
permissions := make([]roles.RolePermissions, 0, len(roles.RolesMap))
|
permissions := make([]roles.RolePermissions, 0, len(roles.RolesMap))
|
||||||
for role, roleMap := range roles.RolesMap {
|
for role, roleMap := range roles.RolesMap {
|
||||||
rolePermissions, _ := m.GetRolePermissions(ctx, role)
|
rolePermissions, _ := m.GetPermissionsByRole(ctx, role)
|
||||||
|
|
||||||
permissions = append(permissions, roles.RolePermissions{
|
permissions = append(permissions, roles.RolePermissions{
|
||||||
Role: role,
|
Role: role,
|
||||||
|
|||||||
@@ -52,19 +52,19 @@ func (mr *MockManagerMockRecorder) GetPermissions(ctx interface{}) *gomock.Call
|
|||||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPermissions", reflect.TypeOf((*MockManager)(nil).GetPermissions), ctx)
|
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPermissions", reflect.TypeOf((*MockManager)(nil).GetPermissions), ctx)
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetRolePermissions mocks base method.
|
// GetPermissionsByRole mocks base method.
|
||||||
func (m *MockManager) GetRolePermissions(ctx context.Context, role types.UserRole) (roles.Permissions, error) {
|
func (m *MockManager) GetPermissionsByRole(ctx context.Context, role types.UserRole) (roles.Permissions, error) {
|
||||||
m.ctrl.T.Helper()
|
m.ctrl.T.Helper()
|
||||||
ret := m.ctrl.Call(m, "GetRolePermissions", ctx, role)
|
ret := m.ctrl.Call(m, "GetPermissionsByRole", ctx, role)
|
||||||
ret0, _ := ret[0].(roles.Permissions)
|
ret0, _ := ret[0].(roles.Permissions)
|
||||||
ret1, _ := ret[1].(error)
|
ret1, _ := ret[1].(error)
|
||||||
return ret0, ret1
|
return ret0, ret1
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetRolePermissions indicates an expected call of GetRolePermissions.
|
// GetPermissionsByRole indicates an expected call of GetPermissionsByRole.
|
||||||
func (mr *MockManagerMockRecorder) GetRolePermissions(ctx, role interface{}) *gomock.Call {
|
func (mr *MockManagerMockRecorder) GetPermissionsByRole(ctx, role interface{}) *gomock.Call {
|
||||||
mr.mock.ctrl.T.Helper()
|
mr.mock.ctrl.T.Helper()
|
||||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetRolePermissions", reflect.TypeOf((*MockManager)(nil).GetRolePermissions), ctx, role)
|
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPermissionsByRole", reflect.TypeOf((*MockManager)(nil).GetPermissionsByRole), ctx, role)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ValidateAccountAccess mocks base method.
|
// ValidateAccountAccess mocks base method.
|
||||||
|
|||||||
@@ -1244,7 +1244,7 @@ func (am *DefaultAccountManager) GetCurrentUserInfo(ctx context.Context, account
|
|||||||
Restricted: user.IsRestrictable() && settings.RegularUsersViewBlocked,
|
Restricted: user.IsRestrictable() && settings.RegularUsersViewBlocked,
|
||||||
}
|
}
|
||||||
|
|
||||||
permissions, err := am.permissionsManager.GetRolePermissions(ctx, user.Role)
|
permissions, err := am.permissionsManager.GetPermissionsByRole(ctx, user.Role)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
userWithPermissions.Permissions = permissions
|
userWithPermissions.Permissions = permissions
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user