realm access roles

This commit is contained in:
Alfredo Oliviero 2024-04-16 12:06:50 +02:00
parent 85637986d6
commit 0b95dd49d4
2 changed files with 9 additions and 1 deletions

View File

@ -23,6 +23,9 @@ public class GCubeJWTObject {
@JsonProperty("resource_access")
private Map<String, Roles> contextAccess = new HashMap<>();
@JsonProperty("realm_access")
private List<String> realmAccess = new ArrayList<>();
@JsonProperty("preferred_username")
private String username;
@ -56,6 +59,11 @@ public class GCubeJWTObject {
return contextAccess.get(this.context) == null ? MINIMAL_ROLES : contextAccess.get(this.context).roles;
}
public List<String> getRealmRoles(){
return realmAccess;
}
public String getContext() {
try {
return URLDecoder.decode(context, StandardCharsets.UTF_8.toString());

View File

@ -71,7 +71,7 @@ public class UmaTokenSecret extends Secret {
this.accessToken = objectMapper.readValue(decodedAccessPart, AccessToken.class);
GCubeJWTObject obj = objectMapper.readValue(decodedAccessPart, GCubeJWTObject.class);
owner = new Owner(obj.getUsername(), obj.getRoles(), obj.getEmail(), obj.getFirstName(), obj.getLastName(), obj.isExternalService(), obj.isApplication());
owner = new Owner(obj.getUsername(), obj.getRoles(), obj.getRealmRoles(), obj.getEmail(), obj.getFirstName(), obj.getLastName(), obj.isExternalService(), obj.isApplication());
owner.setClientName(obj.getClientName());
owner.setContactOrganisation(obj.getContactOrganisation());
owner.setClientName(obj.getClientName());