Chore: remove IsDisabled method for access control (#74340)
remove IsDisabled method for access control, clean up tests
This commit is contained in:
@@ -10,7 +10,6 @@ import (
|
||||
contextmodel "github.com/grafana/grafana/pkg/services/contexthandler/model"
|
||||
"github.com/grafana/grafana/pkg/services/org"
|
||||
"github.com/grafana/grafana/pkg/services/user"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
)
|
||||
|
||||
type AccessControl interface {
|
||||
@@ -19,8 +18,6 @@ type AccessControl interface {
|
||||
// RegisterScopeAttributeResolver allows the caller to register a scope resolver for a
|
||||
// specific scope prefix (ex: datasources:name:)
|
||||
RegisterScopeAttributeResolver(prefix string, resolver ScopeAttributeResolver)
|
||||
//IsDisabled returns if access control is enabled or not
|
||||
IsDisabled() bool
|
||||
}
|
||||
|
||||
type Service interface {
|
||||
@@ -43,8 +40,6 @@ type Service interface {
|
||||
SaveExternalServiceRole(ctx context.Context, cmd SaveExternalServiceRoleCommand) error
|
||||
// DeleteExternalServiceRole removes an external service's role and its assignment.
|
||||
DeleteExternalServiceRole(ctx context.Context, externalServiceID string) error
|
||||
//IsDisabled returns if access control is enabled or not
|
||||
IsDisabled() bool
|
||||
}
|
||||
|
||||
type RoleRegistry interface {
|
||||
@@ -371,10 +366,6 @@ func ManagedBuiltInRoleName(builtInRole string) string {
|
||||
return fmt.Sprintf("managed:builtins:%s:permissions", strings.ToLower(builtInRole))
|
||||
}
|
||||
|
||||
func IsDisabled(cfg *setting.Cfg) bool {
|
||||
return !cfg.RBACEnabled
|
||||
}
|
||||
|
||||
// GetOrgRoles returns legacy org roles for a user
|
||||
func GetOrgRoles(user identity.Requester) []string {
|
||||
roles := []string{string(user.GetOrgRole())}
|
||||
|
||||
@@ -63,7 +63,3 @@ func (a *AccessControl) Evaluate(ctx context.Context, user identity.Requester, e
|
||||
func (a *AccessControl) RegisterScopeAttributeResolver(prefix string, resolver accesscontrol.ScopeAttributeResolver) {
|
||||
a.resolvers.AddScopeAttributeResolver(prefix, resolver)
|
||||
}
|
||||
|
||||
func (a *AccessControl) IsDisabled() bool {
|
||||
return accesscontrol.IsDisabled(a.cfg)
|
||||
}
|
||||
|
||||
@@ -215,10 +215,6 @@ func (s *Service) RegisterFixedRoles(ctx context.Context) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s *Service) IsDisabled() bool {
|
||||
return accesscontrol.IsDisabled(s.cfg)
|
||||
}
|
||||
|
||||
func permissionCacheKey(user identity.Requester) (string, error) {
|
||||
key, err := user.GetCacheKey()
|
||||
if err != nil {
|
||||
|
||||
@@ -12,7 +12,6 @@ var _ accesscontrol.RoleRegistry = new(FakeService)
|
||||
|
||||
type FakeService struct {
|
||||
ExpectedErr error
|
||||
ExpectedDisabled bool
|
||||
ExpectedCachedPermissions bool
|
||||
ExpectedPermissions []accesscontrol.Permission
|
||||
ExpectedFilteredUserPermissions []accesscontrol.Permission
|
||||
@@ -49,10 +48,6 @@ func (f FakeService) RegisterFixedRoles(ctx context.Context) error {
|
||||
return f.ExpectedErr
|
||||
}
|
||||
|
||||
func (f FakeService) IsDisabled() bool {
|
||||
return f.ExpectedDisabled
|
||||
}
|
||||
|
||||
func (f FakeService) SaveExternalServiceRole(ctx context.Context, cmd accesscontrol.SaveExternalServiceRoleCommand) error {
|
||||
return f.ExpectedErr
|
||||
}
|
||||
@@ -65,7 +60,6 @@ var _ accesscontrol.AccessControl = new(FakeAccessControl)
|
||||
|
||||
type FakeAccessControl struct {
|
||||
ExpectedErr error
|
||||
ExpectedDisabled bool
|
||||
ExpectedEvaluate bool
|
||||
}
|
||||
|
||||
@@ -76,10 +70,6 @@ func (f FakeAccessControl) Evaluate(ctx context.Context, user identity.Requester
|
||||
func (f FakeAccessControl) RegisterScopeAttributeResolver(prefix string, resolver accesscontrol.ScopeAttributeResolver) {
|
||||
}
|
||||
|
||||
func (f FakeAccessControl) IsDisabled() bool {
|
||||
return f.ExpectedDisabled
|
||||
}
|
||||
|
||||
type FakeStore struct {
|
||||
ExpectedUserPermissions []accesscontrol.Permission
|
||||
ExpectedUsersPermissions map[int64][]accesscontrol.Permission
|
||||
|
||||
@@ -22,7 +22,6 @@ type Calls struct {
|
||||
Evaluate []interface{}
|
||||
GetUserPermissions []interface{}
|
||||
ClearUserPermissionCache []interface{}
|
||||
IsDisabled []interface{}
|
||||
DeclareFixedRoles []interface{}
|
||||
DeclarePluginRoles []interface{}
|
||||
GetUserBuiltInRoles []interface{}
|
||||
@@ -38,8 +37,6 @@ type Calls struct {
|
||||
type Mock struct {
|
||||
// Unless an override is provided, permissions will be returned by GetUserPermissions
|
||||
permissions []accesscontrol.Permission
|
||||
// Unless an override is provided, disabled will be returned by IsDisabled
|
||||
disabled bool
|
||||
// Unless an override is provided, builtInRoles will be returned by GetUserBuiltInRoles
|
||||
builtInRoles []string
|
||||
|
||||
@@ -50,7 +47,6 @@ type Mock struct {
|
||||
EvaluateFunc func(context.Context, *user.SignedInUser, accesscontrol.Evaluator) (bool, error)
|
||||
GetUserPermissionsFunc func(context.Context, *user.SignedInUser, accesscontrol.Options) ([]accesscontrol.Permission, error)
|
||||
ClearUserPermissionCacheFunc func(*user.SignedInUser)
|
||||
IsDisabledFunc func() bool
|
||||
DeclareFixedRolesFunc func(...accesscontrol.RoleRegistration) error
|
||||
DeclarePluginRolesFunc func(context.Context, string, string, []plugins.RoleRegistration) error
|
||||
GetUserBuiltInRolesFunc func(user *user.SignedInUser) []string
|
||||
@@ -72,7 +68,6 @@ var _ fullAccessControl = New()
|
||||
func New() *Mock {
|
||||
mock := &Mock{
|
||||
Calls: Calls{},
|
||||
disabled: false,
|
||||
permissions: []accesscontrol.Permission{},
|
||||
builtInRoles: []string{},
|
||||
scopeResolvers: accesscontrol.NewResolvers(log.NewNopLogger()),
|
||||
@@ -90,11 +85,6 @@ func (m *Mock) WithPermissions(permissions []accesscontrol.Permission) *Mock {
|
||||
return m
|
||||
}
|
||||
|
||||
func (m *Mock) WithDisabled() *Mock {
|
||||
m.disabled = true
|
||||
return m
|
||||
}
|
||||
|
||||
func (m *Mock) WithBuiltInRoles(builtInRoles []string) *Mock {
|
||||
m.builtInRoles = builtInRoles
|
||||
return m
|
||||
@@ -160,18 +150,6 @@ func (m *Mock) ClearUserPermissionCache(usr identity.Requester) {
|
||||
}
|
||||
}
|
||||
|
||||
// Middleware checks if service disabled or not to switch to fallback authorization.
|
||||
// This mock return m.disabled unless an override is provided.
|
||||
func (m *Mock) IsDisabled() bool {
|
||||
m.Calls.IsDisabled = append(m.Calls.IsDisabled, struct{}{})
|
||||
// Use override if provided
|
||||
if m.IsDisabledFunc != nil {
|
||||
return m.IsDisabledFunc()
|
||||
}
|
||||
// Otherwise return the Disabled bool
|
||||
return m.disabled
|
||||
}
|
||||
|
||||
// DeclareFixedRoles allow the caller to declare, to the service, fixed roles and their
|
||||
// assignments to organization roles ("Viewer", "Editor", "Admin") or "Grafana Admin"
|
||||
// This mock returns no error unless an override is provided.
|
||||
|
||||
Reference in New Issue
Block a user