diff --git a/src/main/java/org/gcube/common/authorization/utils/secret/JWTSecret.java b/src/main/java/org/gcube/common/authorization/utils/secret/JWTSecret.java index e3c1836..392da15 100644 --- a/src/main/java/org/gcube/common/authorization/utils/secret/JWTSecret.java +++ b/src/main/java/org/gcube/common/authorization/utils/secret/JWTSecret.java @@ -169,7 +169,7 @@ public class JWTSecret extends Secret { @Override public String getUsername() throws Exception { - return accessToken.getPreferredUsername(); + return getAccessToken().getPreferredUsername(); } @Override diff --git a/src/main/java/org/gcube/common/authorization/utils/user/KeycloakUser.java b/src/main/java/org/gcube/common/authorization/utils/user/KeycloakUser.java index 45ef517..32b87ea 100644 --- a/src/main/java/org/gcube/common/authorization/utils/user/KeycloakUser.java +++ b/src/main/java/org/gcube/common/authorization/utils/user/KeycloakUser.java @@ -21,7 +21,7 @@ public class KeycloakUser extends AccessToken implements User { @Override @JsonIgnore public String getUsername() { - return (String) getOtherClaims().getOrDefault("preferred_username", getId()); + return getPreferredUsername(); } @Override diff --git a/src/test/java/org/gcube/common/authorization/utils/ContextTest.java b/src/test/java/org/gcube/common/authorization/utils/ContextTest.java index 7153bd7..6cd1d2d 100644 --- a/src/test/java/org/gcube/common/authorization/utils/ContextTest.java +++ b/src/test/java/org/gcube/common/authorization/utils/ContextTest.java @@ -36,7 +36,10 @@ public class ContextTest { } catch(IOException e) { throw new RuntimeException(e); } - + + //DEFAULT_TEST_SCOPE_NAME = "/pred4s/preprod/preVRE"; + // DEFAULT_TEST_SCOPE_NAME = "/gcube/devsec/devVRE"; + ROOT = "/gcube"; // VO = ROOT + "/devsec"; // VRE = VO + "/devVRE"; @@ -83,4 +86,4 @@ public class ContextTest { SecretManagerProvider.instance.reset(); } -} +} \ No newline at end of file diff --git a/src/test/java/org/gcube/common/authorization/utils/manager/SecretManagerTest.java b/src/test/java/org/gcube/common/authorization/utils/manager/SecretManagerTest.java index 7f5f308..b842917 100644 --- a/src/test/java/org/gcube/common/authorization/utils/manager/SecretManagerTest.java +++ b/src/test/java/org/gcube/common/authorization/utils/manager/SecretManagerTest.java @@ -3,6 +3,7 @@ package org.gcube.common.authorization.utils.manager; import java.util.Set; import org.gcube.common.authorization.utils.ContextTest; +import org.gcube.common.authorization.utils.secret.JWTSecret; import org.gcube.common.authorization.utils.secret.Secret; import org.junit.Test; import org.slf4j.Logger; @@ -25,4 +26,11 @@ public class SecretManagerTest extends ContextTest { } } + @Test + public void testApptoken() throws Exception { + Secret secret = new JWTSecret("eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJSSklZNEpoNF9qdDdvNmREY0NlUDFfS1l0akcxVExXVW9oMkQ2Tzk1bFNBIn0.eyJleHAiOjE2NDgwNDU2NjMsImlhdCI6MTY0ODA0NTM2MywianRpIjoiZTRmZDgyMmUtY2E3MS00MDA5LTkxYjctZTg4NzgyNGEzZDM3IiwiaXNzIjoiaHR0cHM6Ly9hY2NvdW50cy5kZXYuZDRzY2llbmNlLm9yZy9hdXRoL3JlYWxtcy9kNHNjaWVuY2UiLCJhdWQiOiIlMkZnY3ViZSUyRmRldnNlYyUyRmRldlZSRSIsInN1YiI6ImE5YTJhZTBiLTY5YzktNDFiNy05ZTRhLThhNGIyMmFhNWRkZSIsInR5cCI6IkJlYXJlciIsImF6cCI6IkJsdWUtQ2xvdWQtRU9TQy1vbmJvYXJkaW5nIiwic2Vzc2lvbl9zdGF0ZSI6IjBlYjkyMGU1LWViYzItNDdjYS05NGMzLTFjNjI0MTYzNjUyNiIsImFjciI6IjEiLCJhbGxvd2VkLW9yaWdpbnMiOlsiLyoiXSwicmVzb3VyY2VfYWNjZXNzIjp7IiUyRmdjdWJlJTJGZGV2c2VjJTJGZGV2VlJFIjp7InJvbGVzIjpbIkNhdGFsb2d1ZS1FZGl0b3IiLCJNZW1iZXIiXX19LCJhdXRob3JpemF0aW9uIjp7InBlcm1pc3Npb25zIjpbeyJyc2lkIjoiNTcyODU1MTAtMzkzOS00ZGU3LThmYzEtZTNhOWQzY2NlMjgxIiwicnNuYW1lIjoiRGVmYXVsdCBSZXNvdXJjZSJ9XX0sInNjb3BlIjoiZW1haWwgcHJvZmlsZSIsImNsaWVudEhvc3QiOiIxNDYuNDguODcuMTgzIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJjbGllbnRJZCI6IkJsdWUtQ2xvdWQtRU9TQy1vbmJvYXJkaW5nIiwicHJlZmVycmVkX3VzZXJuYW1lIjoic2VydmljZS1hY2NvdW50LWJsdWUtY2xvdWQtZW9zYy1vbmJvYXJkaW5nIiwiY2xpZW50QWRkcmVzcyI6IjE0Ni40OC44Ny4xODMifQ.IiFfE3mCOyX0W6PnEUq5_cW8no_nFqugi7jQzLLYwTjLMT6A5AGkfaNJYakbUXeVnsVyLkEES5uLu5TX3_nxruNyH3OpgKyDOCaejytj-qifJIhszEA5I5msoGRxt6v_JWMWkhdVmUfRKhOdhsN8JNBNUWVsEAUHoYM26sJl1CoW9_zE5VmnfYHFMnsFLptKlGyIWqO6leo-cPHclA4mfTWHoB13QTHoX5qeFuszymw8xACRBTJbyWfM3YdRDtwu1lTsMuvZ2gZNIn9ofbJlqpRxDRVfqvJBGBY_48pb21TeRHCdWJLEaNlYCE1fxztEX8gdk_G_KbwRtA_C10SbtA\",\"expires_in\":300,\"refresh_expires_in\":1800,\"refresh_token\":\"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJjOTk5YmVjNC1iNDc4LTQ4Y2YtYmI5OS0wMWMxODY5NzcwNGIifQ.eyJleHAiOjE2NDgwNDcxNjMsImlhdCI6MTY0ODA0NTM2MywianRpIjoiNDUwOTFiOTgtZjlhYy00MGFhLWE1ZDItNmRmYzI2YzUzOTcxIiwiaXNzIjoiaHR0cHM6Ly9hY2NvdW50cy5kZXYuZDRzY2llbmNlLm9yZy9hdXRoL3JlYWxtcy9kNHNjaWVuY2UiLCJhdWQiOiJodHRwczovL2FjY291bnRzLmRldi5kNHNjaWVuY2Uub3JnL2F1dGgvcmVhbG1zL2Q0c2NpZW5jZSIsInN1YiI6ImE5YTJhZTBiLTY5YzktNDFiNy05ZTRhLThhNGIyMmFhNWRkZSIsInR5cCI6IlJlZnJlc2giLCJhenAiOiJCbHVlLUNsb3VkLUVPU0Mtb25ib2FyZGluZyIsInNlc3Npb25fc3RhdGUiOiIwZWI5MjBlNS1lYmMyLTQ3Y2EtOTRjMy0xYzYyNDE2MzY1MjYiLCJhdXRob3JpemF0aW9uIjp7InBlcm1pc3Npb25zIjpbeyJyc2lkIjoiNTcyODU1MTAtMzkzOS00ZGU3LThmYzEtZTNhOWQzY2NlMjgxIiwicnNuYW1lIjoiRGVmYXVsdCBSZXNvdXJjZSJ9XX0sInNjb3BlIjoiZW1haWwgcHJvZmlsZSJ9.t1yYIMzxrUC2UeiVxZ-LATSP-tYT2RsOD2"); + String username = secret.getUsername(); + String anotherUsername = secret.getUser().getUsername(); + logger.debug("{} - {}", username, anotherUsername); + } }