Any user can remove self from cache
This commit is contained in:
parent
4e015d5a44
commit
180e043e65
|
@ -158,7 +158,8 @@ public class User extends REST<CKANUser> implements org.gcube.gcat.api.interface
|
||||||
public Response removeUserFromCache(@PathParam(GCUBE_USERNAME_PARAMETER) String username) {
|
public Response removeUserFromCache(@PathParam(GCUBE_USERNAME_PARAMETER) String username) {
|
||||||
SecretManager secretManager = SecretManagerProvider.instance.get();
|
SecretManager secretManager = SecretManagerProvider.instance.get();
|
||||||
org.gcube.common.authorization.utils.user.User user = secretManager.getUser();
|
org.gcube.common.authorization.utils.user.User user = secretManager.getUser();
|
||||||
if(user.getRoles().contains(Role.MANAGER.getPortalRole())) {
|
if(user.getRoles().contains(Role.MANAGER.getPortalRole()) || user.getUsername().compareToIgnoreCase(username)==0) {
|
||||||
|
// Any user can remove self from cache
|
||||||
CKANUserCache.removeUserFromCache(username);
|
CKANUserCache.removeUserFromCache(username);
|
||||||
}else {
|
}else {
|
||||||
throw new ForbiddenException("Only " + Role.MANAGER.getPortalRole() + "s are authorized to remove an user from the cache");
|
throw new ForbiddenException("Only " + Role.MANAGER.getPortalRole() + "s are authorized to remove an user from the cache");
|
||||||
|
|
Loading…
Reference in New Issue