mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
auth: cleanup store.go
This commit is contained in:
parent
65abcc1a59
commit
f8c1a50195
@ -353,20 +353,18 @@ func (as *authStore) UserRevokeRole(r *pb.AuthUserRevokeRoleRequest) (*pb.AuthUs
|
||||
return nil, ErrUserNotFound
|
||||
}
|
||||
|
||||
updatedUser := &authpb.User{}
|
||||
updatedUser.Name = user.Name
|
||||
updatedUser.Password = user.Password
|
||||
updatedUser := &authpb.User{
|
||||
Name: user.Name,
|
||||
Password: user.Password,
|
||||
}
|
||||
|
||||
revoked := false
|
||||
for _, role := range user.Roles {
|
||||
if strings.Compare(role, r.Role) != 0 {
|
||||
updatedUser.Roles = append(updatedUser.Roles, role)
|
||||
} else {
|
||||
revoked = true
|
||||
}
|
||||
}
|
||||
|
||||
if !revoked {
|
||||
if len(updatedUser.Roles) == len(user.Roles) {
|
||||
return nil, ErrRoleNotGranted
|
||||
}
|
||||
|
||||
@ -406,19 +404,17 @@ func (as *authStore) RoleRevokePermission(r *pb.AuthRoleRevokePermissionRequest)
|
||||
return nil, ErrRoleNotFound
|
||||
}
|
||||
|
||||
updatedRole := &authpb.Role{}
|
||||
updatedRole.Name = role.Name
|
||||
updatedRole := &authpb.Role{
|
||||
Name: role.Name,
|
||||
}
|
||||
|
||||
revoked := false
|
||||
for _, perm := range role.KeyPermission {
|
||||
if !bytes.Equal(perm.Key, []byte(r.Key)) || !bytes.Equal(perm.RangeEnd, []byte(r.RangeEnd)) {
|
||||
updatedRole.KeyPermission = append(updatedRole.KeyPermission, perm)
|
||||
} else {
|
||||
revoked = true
|
||||
}
|
||||
}
|
||||
|
||||
if !revoked {
|
||||
if len(role.KeyPermission) == len(updatedRole.KeyPermission) {
|
||||
return nil, ErrPermissionNotGranted
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user