Do you have a proxy on your client machine ? That is did you run
grid-proxy-init ? If so, can you run grid-proxy-info to see if its valid and
if the file name the proxy is stored in is the same as the one the client is
looking for ?
 
Also, when you say are trying to get the client's credentials, are you
looking for delegated credentials so the service can do something on behalf
of the client ? The snippet you have posted below for server side will give
you client's credentials, only if you use Secure Conversation with
delegation in your client. Otherwise the peer subject you get will only have
client's public key and you cannot use that to act on behalf of the client
on the server side.
 
Rachana
 
  _____  

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf
Of Salman Zubair Toor
Sent: Friday, August 03, 2007 10:52 AM
To: gt-user
Subject: [gt-user] Problem in delegation credential.



Hi,

I want to get the user credential on the service side I wrote this code on
client side

____________________________________________________________________________
________________________
EndpointReferenceType ee = new EndpointReferenceType();
String addr =
"https://130.238.137.41:8443/wsrf/services/globus/core/problemsolver/Problem
SolverFactoryService";
ee.setAddress(new Address(addr));
ProblemSolverServiceAddressingLocator instanceLoc = new
ProblemSolverServiceAddressingLocator();
ProblemSolverPortType port = instanceLoc.getProblemSolverPortTypePort(ee);
((Stub)port)._setProperty(Constants.AUTHORIZATION,
SelfAuthorization.getInstance());
____________________________________________________________________________
_________________________


And on Service side

___________________________________________________________________________
MessageContext messageContext = MessageContext.getCurrentContext();
Subject subject = (Subject)
messageContext.getProperty(Constants.PEER_SUBJECT);
if (subject != null) {
cred = JaasGssUtil.getCredential(subject);
}

................
.......................

___________________________________________________________________________

as shown in the developer's guide. But still getting these exceptions


___________________________________

2007-08-03 17:42:22,904 INFO client.GramJob [ServiceThread-11,submit:415]
<startTime name="submission">1186155742904</startTime>
2007-08-03 17:42:22,914 INFO client.GramJob
[ServiceThread-11,fetchDelegationFactoryEndpoints:645] <startTime
name="fetchDelegFactoryEndoints">1186155742914</startTime>
2007-08-03 17:42:23,037 INFO client.GramJob
[ServiceThread-11,fetchDelegationFactoryEndpoints:652] <endTime
name="fetchDelegFactoryEndoints">1186155743037</endTime>
java.io.IOException: Job request error:
org.globus.gsi.GlobusCredentialException: Proxy file (/tmp/x509up_u27) not
found.
at
org.globus.services.core.problemsolver.impl.ProblemSolverGRAMClient.processJ
ob(ProblemSolverGRAMClient.java:332)
at
org.globus.services.core.problemsolver.impl.ProblemSolverGRAMClient.submitRS
L(ProblemSolverGRAMClient.java:228)
at
org.globus.services.core.problemsolver.impl.ProblemSolverGRAMClient.multiJob
Submission(ProblemSolverGRAMClient.java:491)
at
org.globus.services.core.problemsolver.impl.SolverJobSubmission.multiJobProc
essing(ProblemSolverService.java:243)
at
org.globus.services.core.problemsolver.impl.ProblemSolverService.solverJobSu
bmission(ProblemSolverService.java:184)
at
org.globus.services.core.problemsolver.impl.ProblemSolverService.findResourc
e(ProblemSolverService.java:174)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:384
)
at
org.globus.axis.providers.RPCProvider.invokeMethodSub(RPCProvider.java:107)
at
org.globus.axis.providers.PrivilegedInvokeMethodAction.run(PrivilegedInvokeM
ethodAction.java:42)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:379)
at org.globus.gsi.jaas.GlobusSubject.runAs(GlobusSubject.java:55)
at org.globus.gsi.jaas.JaasSubject.doAs(JaasSubject.java:90)
at org.globus.axis.providers.RPCProvider.invokeMethod(RPCProvider.java:97)
at
org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:2
81)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
at
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:
32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:450)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:285)
at org.globus.wsrf.container.ServiceThread.doPost(ServiceThread.java:664)
at org.globus.wsrf.container.ServiceThread.process(ServiceThread.java:382)
at
org.globus.wsrf.container.GSIServiceThread.process(GSIServiceThread.java:147
)
at org.globus.wsrf.container.ServiceThread.run(ServiceThread.java:291)

__________________________________________________________________


Anybody can guide me what is wrong. 


Thanks.

Salman Toor.

Reply via email to