You've already forked ionscale
mirror of
https://github.com/jsiebens/ionscale.git
synced 2026-04-05 12:32:58 +01:00
fix: system admin is always a tag owner
This commit is contained in:
@@ -59,10 +59,10 @@ func (a ACLPolicy) CheckTagOwners(tags []string, p *User) error {
|
||||
}
|
||||
|
||||
func (a ACLPolicy) IsTagOwner(tag string, p *User) bool {
|
||||
if p.UserType == UserTypeService {
|
||||
return true
|
||||
}
|
||||
if tagOwners, ok := a.TagOwners[tag]; ok {
|
||||
if p.UserType == UserTypeService {
|
||||
return true
|
||||
}
|
||||
return a.validateTagOwners(tagOwners, p)
|
||||
}
|
||||
return false
|
||||
|
||||
@@ -28,6 +28,13 @@ func TestACLPolicy_IsTagOwner(t *testing.T) {
|
||||
userType: UserTypeService,
|
||||
expectErr: false,
|
||||
},
|
||||
{
|
||||
name: "system admin is always a valid owner",
|
||||
tag: "tag:unknown",
|
||||
userName: "system admin",
|
||||
userType: UserTypeService,
|
||||
expectErr: false,
|
||||
},
|
||||
{
|
||||
name: "direct tag owner",
|
||||
tag: "tag:web",
|
||||
|
||||
Reference in New Issue
Block a user