From f4971155f5b807375edf4bfe819dfe54df7c6140 Mon Sep 17 00:00:00 2001 From: "lucio.lelii" Date: Wed, 26 Oct 2016 07:48:56 +0000 Subject: [PATCH] git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/Common/authorization-common-client@133548 82a268e6-3cf1-43bd-a215-b396298e98cf --- pom.xml | 2 +- .../client/proxy/AuthorizationProxy.java | 3 +- .../proxy/DefaultAuthorizationProxy.java | 30 ++++++++++--------- .../authorizationservice/cl/CallTest.java | 11 ++++--- 4 files changed, 24 insertions(+), 22 deletions(-) diff --git a/pom.xml b/pom.xml index 6b73e58..a0364de 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 org.gcube.common authorization-client - 2.0.0-SNAPSHOT + 2.0.1-SNAPSHOT authorization service client library diff --git a/src/main/java/org/gcube/common/authorization/client/proxy/AuthorizationProxy.java b/src/main/java/org/gcube/common/authorization/client/proxy/AuthorizationProxy.java index ff39de4..8213aa5 100644 --- a/src/main/java/org/gcube/common/authorization/client/proxy/AuthorizationProxy.java +++ b/src/main/java/org/gcube/common/authorization/client/proxy/AuthorizationProxy.java @@ -1,5 +1,6 @@ package org.gcube.common.authorization.client.proxy; +import java.io.File; import java.util.List; import java.util.Map; @@ -39,6 +40,6 @@ public interface AuthorizationProxy { Map retrieveApiKeys() throws Exception; - //File getSymmKey(String filePath) throws Exception; + File getSymmKey(String filePath) throws Exception; } diff --git a/src/main/java/org/gcube/common/authorization/client/proxy/DefaultAuthorizationProxy.java b/src/main/java/org/gcube/common/authorization/client/proxy/DefaultAuthorizationProxy.java index 636e85c..a7cd368 100644 --- a/src/main/java/org/gcube/common/authorization/client/proxy/DefaultAuthorizationProxy.java +++ b/src/main/java/org/gcube/common/authorization/client/proxy/DefaultAuthorizationProxy.java @@ -4,6 +4,8 @@ import static org.gcube.common.authorization.client.Constants.CONTEXT_PARAM; import java.io.BufferedOutputStream; import java.io.BufferedReader; +import java.io.File; +import java.io.FileOutputStream; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; @@ -190,11 +192,11 @@ public class DefaultAuthorizationProxy implements AuthorizationProxy { String methodPath = "/token/node"; int infrastructureHash = Utils.getInfrastructureHashfromContext(context); - + StringBuilder callUrl; - + callUrl = new StringBuilder(getInternalEnpoint(infrastructureHash)).append(methodPath).append("?context=").append(context); - + URL url = new URL(callUrl.toString()); HttpURLConnection connection = makeRequest(url, "PUT", false); connection.setDoOutput(true); @@ -218,7 +220,7 @@ public class DefaultAuthorizationProxy implements AuthorizationProxy { } return Utils.addInfrastructureHashToToken(token, infrastructureHash); } - + @Override public String requestActivation(ContainerInfo container) throws Exception { @@ -226,11 +228,11 @@ public class DefaultAuthorizationProxy implements AuthorizationProxy { String methodPath = "/token/node"; int infrastructureHash = Utils.getInfrastructureHashFromToken(SecurityTokenProvider.instance.get(), endpoints.getDefaultInfrastructure()); - + StringBuilder callUrl; - + callUrl = new StringBuilder(getInternalEnpoint(infrastructureHash)).append(methodPath); - + URL url = new URL(callUrl.toString()); HttpURLConnection connection = makeRequest(url, "PUT", true); connection.setDoOutput(true); @@ -340,7 +342,7 @@ public class DefaultAuthorizationProxy implements AuthorizationProxy { } } - /* + @Override public File getSymmKey(String filePath) throws Exception{ final String methodPath = "/symmKey/"; @@ -351,15 +353,15 @@ public class DefaultAuthorizationProxy implements AuthorizationProxy { URL url = new URL(callUrl.toString()); HttpURLConnection connection = makeRequest(url, "GET", true); connection.setDoInput(true); - if (connection.getResponseCode()!=200) throw new Exception("error retrieving policies"); + if (connection.getResponseCode()!=200) throw new Exception("error retrieving key"); if (connection.getContentLengthLong()<=0) return null; - + String resourceName = (String)connection.getHeaderField("resource-name"); File toReturnFile = new File(filePath+"/"+resourceName); toReturnFile.createNewFile(); - + try(InputStream stream = (InputStream)connection.getContent(); - OutputStream os = new FileOutputStream(filePath)){ + OutputStream os = new FileOutputStream(toReturnFile)){ int read = 0; byte[] bytes = new byte[1024]; @@ -369,8 +371,8 @@ public class DefaultAuthorizationProxy implements AuthorizationProxy { } } return toReturnFile; - - }*/ + + } private HttpURLConnection makeRequest(URL url, String method, boolean includeTokenInHeader) throws Exception{ HttpURLConnection connection; diff --git a/src/test/java/org/gcube/common/authorizationservice/cl/CallTest.java b/src/test/java/org/gcube/common/authorizationservice/cl/CallTest.java index beb3c8b..29ce00f 100644 --- a/src/test/java/org/gcube/common/authorizationservice/cl/CallTest.java +++ b/src/test/java/org/gcube/common/authorizationservice/cl/CallTest.java @@ -20,7 +20,7 @@ public class CallTest { @Test public void resolveNodeToken() throws Exception{ - System.out.println(resolveToken("d7a6b96b-97eb-40fd-96ff-c8e5f37a91c7-98187548")); //81caac0f-8a0d-4923-9312-7ff0eb3f2d5e|98187548")); + System.out.println(resolveToken("a7caa51b-6979-4b1d-abc6-449365b8350a-98187548")); //81caac0f-8a0d-4923-9312-7ff0eb3f2d5e|98187548")); } @Test @@ -36,7 +36,6 @@ public class CallTest { authorizationService().addPolicies(policies); } - @Test public void getPolicies() throws Exception{ SecurityTokenProvider.instance.set(requestTestToken("/gcube/devNext/NextNext")); @@ -57,12 +56,12 @@ public class CallTest { public void createKeyWithError() throws Exception { authorizationService().generateApiKey("TEST"); } - /* + @Test public void getSymmKey() throws Exception{ SecurityTokenProvider.instance.set(_requestNodeToken()); authorizationService().getSymmKey("/tmp"); - }*/ + } @Test @@ -85,13 +84,13 @@ public class CallTest { public String _requestNodeToken() throws Exception { SecurityTokenProvider.instance.set(requestTestToken("/gcube")); - String token = authorizationService().requestActivation(new ContainerInfo("mynode",8080), "/gcube/devSec"); + String token = authorizationService().requestActivation(new ContainerInfo("dlib29.isti.cnr.it",8080), "/gcube/devsec"); return token; } @Test public void createTestToken() throws Exception { - System.out.println(requestTestToken("/gcube/devNext/NextNext")); + System.out.println(requestTestToken("/gcube/devsec/devVRE")); } private String requestTestToken(String context) throws Exception{