git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/Common/authorization-common-client@132578 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
202183e928
commit
93101b776f
|
@ -38,10 +38,14 @@ public class Utils {
|
|||
}
|
||||
|
||||
protected static String getRealToken(String token) {
|
||||
Pattern pattern = Pattern.compile(REAL_TOKEN_REGEXPR);
|
||||
Matcher matcher = pattern.matcher(token);
|
||||
matcher.find();
|
||||
String realToken = matcher.group(1);
|
||||
return realToken;
|
||||
try{
|
||||
Pattern pattern = Pattern.compile(REAL_TOKEN_REGEXPR);
|
||||
Matcher matcher = pattern.matcher(token);
|
||||
matcher.find();
|
||||
String realToken = matcher.group(1);
|
||||
return realToken;
|
||||
}catch(Exception e){
|
||||
throw new RuntimeException("token required for this method", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ public class CallTest {
|
|||
|
||||
@Test
|
||||
public void resolveNodeToken() throws Exception{
|
||||
System.out.println(resolveToken("36501a0d-a205-4bf1-87ad-4c7185faa0d6")); //81caac0f-8a0d-4923-9312-7ff0eb3f2d5e|98187548"));
|
||||
System.out.println(resolveToken("d7a6b96b-97eb-40fd-96ff-c8e5f37a91c7-98187548")); //81caac0f-8a0d-4923-9312-7ff0eb3f2d5e|98187548"));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -49,11 +49,15 @@ public class CallTest {
|
|||
authorizationService().removePolicies(2, 3, 4);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void requestToken() throws Exception{
|
||||
System.out.println(authorizationService().generateUserToken(new UserInfo("andrea.dellamico", new ArrayList<String>()), "/gcube"));
|
||||
}
|
||||
@Test(expected=RuntimeException.class)
|
||||
public void createKeyWithError() throws Exception {
|
||||
authorizationService().generateApiKey("TEST");
|
||||
}
|
||||
/*
|
||||
/*
|
||||
@Test
|
||||
public void getSymmKey() throws Exception{
|
||||
SecurityTokenProvider.instance.set(_requestNodeToken());
|
||||
|
@ -80,6 +84,7 @@ public class CallTest {
|
|||
}
|
||||
|
||||
public String _requestNodeToken() throws Exception {
|
||||
SecurityTokenProvider.instance.set(requestTestToken("/gcube"));
|
||||
String token = authorizationService().requestActivation(new ContainerInfo("mynode",8080), "/gcube/devSec");
|
||||
return token;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,55 @@
|
|||
package org.gcube.common.authorizationservice.cl;
|
||||
|
||||
import static org.gcube.common.authorization.client.Constants.authorizationService;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.gcube.common.authorization.client.proxy.AuthorizationProxy;
|
||||
import org.gcube.common.authorization.library.provider.ContainerInfo;
|
||||
import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
|
||||
|
||||
public class TokenGenerator {
|
||||
|
||||
//call with parameters : token host port filePath scope1 ... scopeN
|
||||
public static void main(String[] args) {
|
||||
|
||||
String host = args[0];
|
||||
String adminToken = args[1];
|
||||
int port = Integer.parseInt(args[2]);
|
||||
File file = new File(args[3]);
|
||||
|
||||
|
||||
try {
|
||||
file.createNewFile();
|
||||
} catch (IOException e1) {
|
||||
System.out.println("error creating file "+file.getAbsolutePath());
|
||||
e1.printStackTrace();
|
||||
}
|
||||
|
||||
ContainerInfo containerInfo = new ContainerInfo(host, port);
|
||||
|
||||
AuthorizationProxy proxy = authorizationService();
|
||||
|
||||
try(FileWriter fw = new FileWriter(file)){
|
||||
for (int index =4; index<args.length; index++ ){
|
||||
SecurityTokenProvider.instance.set(adminToken);
|
||||
try {
|
||||
String token = proxy.requestActivation(containerInfo, args[index] );
|
||||
fw.write("<token>"+token+"</token>");
|
||||
} catch (Exception e) {
|
||||
System.out.println("error generating token for context "+args[index]);
|
||||
e.printStackTrace();
|
||||
} finally{
|
||||
SecurityTokenProvider.instance.reset();
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
System.out.println("error writing file "+file.getAbsolutePath());
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue