From c4a1bbe4f921b224d682fea9d9ae223eb45cc0ca Mon Sep 17 00:00:00 2001 From: Massimiliano Assante Date: Tue, 2 Feb 2021 18:18:47 +0100 Subject: [PATCH] save and restore the previous UMA Token in ThreadLocal --- .../admin/vredeployer/server/VREDeployerServiceImpl.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/gcube/portlets/admin/vredeployer/server/VREDeployerServiceImpl.java b/src/main/java/org/gcube/portlets/admin/vredeployer/server/VREDeployerServiceImpl.java index 4d51f14..811789b 100644 --- a/src/main/java/org/gcube/portlets/admin/vredeployer/server/VREDeployerServiceImpl.java +++ b/src/main/java/org/gcube/portlets/admin/vredeployer/server/VREDeployerServiceImpl.java @@ -38,6 +38,7 @@ import org.gcube.applicationsupportlayer.social.NotificationsManager; import org.gcube.applicationsupportlayer.social.shared.SocialNetworkingSite; import org.gcube.applicationsupportlayer.social.shared.SocialNetworkingUser; import org.gcube.common.authorization.library.provider.SecurityTokenProvider; +import org.gcube.common.authorization.library.provider.UmaJWTProvider; import org.gcube.common.homelibrary.home.HomeLibrary; import org.gcube.common.homelibrary.home.workspace.Workspace; import org.gcube.common.portal.PortalContext; @@ -93,7 +94,6 @@ import org.gcube.vremanagement.vremodel.cl.stubs.types.VREDescription; import org.gcube.vremanagement.vremodeler.utils.Utils; import org.gcube.vremanagement.vremodeler.utils.reports.DeployReport; import org.gcube.vremanagement.vremodeler.utils.reports.FunctionalityReport; -import org.gcube.vremanagement.vremodeler.utils.reports.GHNonCloudReport; import org.gcube.vremanagement.vremodeler.utils.reports.Resource; import org.gcube.vremanagement.vremodeler.utils.reports.ServiceReport; import org.gcube.vremanagement.vremodeler.utils.reports.Status; @@ -699,6 +699,7 @@ public class VREDeployerServiceImpl extends RemoteServiceServlet implements Vre private void createVRESharedGroupFolder(UserManager uMan, org.gcube.vomanagement.usermanagement.model.GCubeGroup vreCreated, String designer, String manager, String description) throws Exception { GroupManager gm = new LiferayGroupManager(); String previousToken = SecurityTokenProvider.instance.get(); + String previousUMAToken = UmaJWTProvider.instance.get(); //get the super user log.info("Getting super user with role {}", GatewayRolesNames.INFRASTRUCTURE_MANAGER.getRoleName()); //get the super user @@ -722,6 +723,7 @@ public class VREDeployerServiceImpl extends RemoteServiceServlet implements Vre SecurityTokenProvider.instance.set(theAdminToken); OIDCUmaUtil.provideConfiguredPortalClientUMATokenInThreadLocal("/" + PortalContext.getConfiguration().getInfrastructureName()); + System.out.println("\n\n***** new authorizationService PortalClient UMA-Token In ThreadLocal done **** "); String newVreContext = gm.getInfrastructureScope(vreCreated.getGroupId()); @@ -737,7 +739,10 @@ public class VREDeployerServiceImpl extends RemoteServiceServlet implements Vre log.info("Created the VRE Folder on storageHub: {} ", vreFolderName); + UmaJWTProvider.instance.set(previousUMAToken); SecurityTokenProvider.instance.set(previousToken); + + //} } /**