Hi Tirtza,
       What is the header you need to sign ? You should provide the name and
the namespace of the header you want to sign.
eg.
         <sp:SignedParts xmlns:sp="
http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
                    <sp:Header sp:Name="Action" sp:Namespace="
http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
         </sp:SignedParts>
sp:Name is optional but the sp:Namespace is mandatory. If the sp:Name is not
given all the soap
headers with the given namespace will be signed.

Regards,
Nandana


On 10/18/07, Tirtza Bernstein <[EMAIL PROTECTED]> wrote:
>
>  Thank you very much.  I need the header signed. When I change it to
> <sp:SignedParts xmlns:sp="
> http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
>                 <sp:Header/>
>             </sp:SignedParts>
> I get a NullPointerException because I need a namespace included.
> What namespace should I add?
> My result soap header needs to look like this
>
>
> <soapenv:Header>
> <wsse:Security xmlns:wsse="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
> soapenv:mustUnderstand="1"><wsse:BinaryS
> ecurityToken xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
> EncodingType="http://docs.oasis-open.org/w
> ss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"
> ValueType="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-prof
> ile-1.0#X509v3"
> wsu:Id="CertId-5042131">MIIDTDCCArWgAwIBAgIBBTANBgkqhkiG9w0BAQQFADBwMQswCQYDVQQGEwJHQjEPMA0GA1UECBMGTG9uZG9uMQ8wDQYDVQQHEwZMb25kb24xGz
>
> AZBgNVBAoTEk5vbWFkIFNvZnR3YXJlIEx0ZDEMMAoGA1UECxMDTlBTMRQwEgYDVQQDEwtXZWJTZXJ2aWNlczAeFw0wNzA3MjUxMTIyMjJaFw0wODA3MjQxMTIyMjJaMGQxCzAJBgNVBAYTAlVTMQsw
> CQYDVQQIEwJOSjEPMA0GA1UEBxMGTmV3YXJrM*********************rest of
> certificate id **********</wsse:BinarySecurityToken>
> <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#";
> Id="Signature-24430720">
> <ds:SignedInfo>
> <ds:CanonicalizationMethod Algorithm="
> http://www.w3.org/2001/10/xml-exc-c14n#";></ds:CanonicalizationMethod<http://www.w3.org/2001/10/xml-exc-c14n#%22%3E%3C/ds:CanonicalizationMethod>
> >
> <ds:SignatureMethod Algorithm="
> http://www.w3.org/2000/09/xmldsig#rsa-sha1";></ds:SignatureMethod<http://www.w3.org/2000/09/xmldsig#rsa-sha1%22%3E%3C/ds:SignatureMethod>
> >
> <ds:Reference URI="#id-19475765">
> <ds:Transforms>
> <ds:Transform Algorithm="
> http://www.w3.org/2001/10/xml-exc-c14n#";></ds:Transform<http://www.w3.org/2001/10/xml-exc-c14n#%22%3E%3C/ds:Transform>
> >
> </ds:Transforms>
> <ds:DigestMethod Algorithm="
> http://www.w3.org/2000/09/xmldsig#sha1";></ds:DigestMethod<http://www.w3.org/2000/09/xmldsig#sha1%22%3E%3C/ds:DigestMethod>
> >
> <ds:DigestValue>AGcqQst2YH+aiHx+FPrIvl5oEtY=</ds:DigestValue>
> </ds:Reference>
> </ds:SignedInfo>
> <ds:SignatureValue>
>
> BFlqCgd6xiu57hahZ2GoeAgIbKdmrmvCnvoxuQhSXXXOdyMWMOBUSVY59e8WWyyjVEUMn4s2gDpF
>
> ORoRvlTzen6pMojPLEdD0KbBa9RATyINBtN9qxZmj8Qgs6eYzKXzeuan5+1mLV11MANbV8cjSIx0
> nfm16bYcct0tBVBjWcc=
> </ds:SignatureValue>
> <ds:KeyInfo Id="KeyId-1777337">
> <wsse:SecurityTokenReference xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
> wsu:Id="STRId-18753567"><w
> sse:Reference URI="#CertId-5042131" ValueType="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3";></wsse:Reference<http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3%22%3E%3C/wsse:Reference>
> ></wsse:SecurityTokenReference>
> </ds:KeyInfo>
> </ds:Signature>
> </wsse:Security>
> </soapenv:Header>
>
>  ------------------------------
> *From:* Nandana Mihindukulasooriya [mailto:[EMAIL PROTECTED]
> *Sent:* Thursday, October 18, 2007 4:23 PM
> *To:* [email protected]
> *Subject:* Re: Rampart signature
>
> Hi Tirtza,
>       It seems something like this would will work for you. You have to
> specify what should be signed within the
> <sp:SignedParts></sp:SignedParts>.
>
> <wsp:Policy wsu:Id="MutualCertificate10Sign_IPingService_policy"
>             xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
> "
>             xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy";
>             xmlns:wsa=" http://schemas.xmlsoap.org/ws/2004/08/addressing";>
>     <wsp:ExactlyOne>
>         <wsp:All>
>             <sp:AsymmetricBinding 
> xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy
> ">
>                 <wsp:Policy>
>                     <sp:InitiatorToken>
>                         <wsp:Policy>
>                             <sp:X509Token sp:IncludeToken="
> http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient
> ">
>                                 <wsp:Policy>
>                                     <sp:WssX509V3Token10/>
>                                 </wsp:Policy>
>                             </sp:X509Token>
>                         </wsp:Policy>
>                     </sp:InitiatorToken>
>                     <sp:RecipientToken>
>                         <wsp:Policy>
>                             <sp:X509Token 
> sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never
> ">
>                                 <wsp:Policy>
>                                     <sp:WssX509V3Token10/>
>                                 </wsp:Policy>
>                             </sp:X509Token>
>                         </wsp:Policy>
>                     </sp:RecipientToken>
>                     <sp:AlgorithmSuite>
>                         <wsp:Policy>
>                             <sp:Basic256/>
>                         </wsp:Policy>
>                     </sp:AlgorithmSuite>
>                     <sp:Layout>
>                         <wsp:Policy>
>                             <sp:Strict/>
>                         </wsp:Policy>
>                     </sp:Layout>
>                     <sp:OnlySignEntireHeadersAndBody/>
>                 </wsp:Policy>
>             </sp:AsymmetricBinding>
>             <sp:SignedParts xmlns:sp="
> http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
>                 <sp:Body/>
>             </sp:SignedParts>
>             <sp:Wss10 
> xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy
> ">
>                 <wsp:Policy>
>                     <sp:MustSupportRefKeyIdentifier/>
>                     <sp:MustSupportRefIssuerSerial/>
>                 </wsp:Policy>
>             </sp:Wss10>
>             <sp:Trust10 xmlns:sp="
> http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
>                 <wsp:Policy>
>                     <sp:MustSupportIssuedTokens/>
>                     <sp:RequireClientEntropy/>
>                     <sp:RequireServerEntropy/>
>                 </wsp:Policy>
>             </sp:Trust10>
>             <ramp:RampartConfig xmlns:ramp="
> http://ws.apache.org/rampart/policy";>
>                 <ramp:user>XXX</ramp:user>
>                 <ramp:passwordCallbackClass>
> com.wso2.interop.wcf.wss10.WSS10Client</ramp:passwordCallbackClass>
>                     <ramp:signatureCrypto>
>                     <ramp:crypto provider="
> org.apache.ws.security.components.crypto.Merlin ">
>                         <ramp:property name="
> org.apache.ws.security.crypto.merlin.keystore.type">JKS</ramp:property>
>                         <ramp:property name="
> org.apache.ws.security.crypto.merlin.file ">keys/sec.jks</ramp:property>
>                         <ramp:property name="
> org.apache.ws.security.crypto.merlin.keystore.password
> ">password</ramp:property>
>                     </ramp:crypto>
>                 </ramp:signatureCrypto>
>             </ramp:RampartConfig>
>         </wsp:All>
>     </wsp:ExactlyOne>
> </wsp:Policy>
>
>
> Regards,
> Nandana
>
>
>
>
> On 10/18/07, Tirtza Bernstein <[EMAIL PROTECTED]> wrote:
> >
> >  It look slike you are using axis1.  I need a solution for axis2.
> > I have Rampart set up properly I just need a policy.xml which will allow
> > me to send a client certificate. (no encryption and no timestamp)
> >
> > Does anyone have a policy.xml  that defines this?
> >
> >  ------------------------------
> > *From:* Senthivel U S [mailto:[EMAIL PROTECTED]
> > *Sent:* Thursday, October 18, 2007 1:17 PM
> > *To:* [email protected]
> > *Subject:* RE: Rampart signature
> >
> >   Hi,
> >
> >
> >
> > Couple of days back I had the same problem but I could not make it using
> > rampart but solved the problem.  Find below the working code. I have created
> > the stub using wsdl with Eclipse IDE.
> >
> >
> >
> > URL endPointURL = new URL("http:// ");
> >
> > EngineConfiguration config = new FileProvider("client_deploy.wsdd");
> >
> > Service service = new Service(config);
> >
> > TestSoapStub stub = new TestSoapStub(endPointURL, service);
> >
> >
> >
> >             stub._setProperty(WSHandlerConstants.ACTION,
> > WSHandlerConstants.SIGNATURE);
> >
> >             stub._setProperty(WSHandlerConstants.SIG_PROP_FILE,
> > "client_crypto.properties");
> >
> >             stub._setProperty(WSHandlerConstants.USER, "client");
> >
> >             stub._setProperty(WSHandlerConstants.PW_CALLBACK_CLASS,"
> > com.unistream.client.ServiceSecurityHandler");
> >
> >             stub._setProperty(WSHandlerConstants.SIG_KEY_ID
> > ,"DirectReference");
> >
> >
> >
> >           stub.login(userID,password);
> >
> >
> >
> > client.deploy.wsdd file         (just copy the same contents)
> >
> >
> >
> > <deployment xmlns="http://xml.apache.org/axis/wsdd/"; xmlns:java="
> > http://xml.apache.org/axis/wsdd/providers/java";>
> >
> >  <transport name="http" pivot="java:
> > org.apache.axis.transport.http.HTTPSender"/>
> >
> >   <globalConfiguration >
> >
> >    <requestFlow >
> >
> >     <handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
> >
> >     </handler>
> >
> >    </requestFlow >
> >
> >   </globalConfiguration >
> >
> > </deployment>
> >
> >
> >
> > client_crypto.properties file  (just copy  the same contents and change
> > the keystore.password, keystore.alias, alias.password, merlin.fileaccording 
> > to ur spec)
> >
> >
> >
> >
> > org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
> >
> > org.apache.ws.security.crypto.merlin.keystore.type=jks
> >
> > org.apache.ws.security.crypto.merlin.keystore.password=xyzabc
> >
> > org.apache.ws.security.crypto.merlin.keystore.alias=client
> >
> > org.apache.ws.security.crypto.merlin.alias.password= xyzabc
> >
> > org.apache.ws.security.crypto.merlin.file=client.jks
> >
> >
> >
> > If you find any other better solution, please let me know.
> >
> >
> >
> > Regards,
> >
> >
> >
> > -senthil
> >
> >
> >  ------------------------------
> >
> > *From:* Tirtza Bernstein [mailto:[EMAIL PROTECTED]
> > *Sent: *Wednesday, October 17, 2007 7:54 PM
> > *To:* [email protected]
> > *Subject:* Rampart signature
> >
> >
> >
> > I am using Axis2-1.3 and Rampart 1.3.
> >
> > I am the client and my requests need to be signed.
> >
> >
> >
> > My axis.client.xml includes the following
> >
> >
> >
> >  <module ref="rampart" />
> >
> >
> >
> >  <parameter name="OutflowSecurity">
> >       <action>
> >         <items>Signature</items>
> >         <user>wally</user>
> >         <signaturePropFile>crypto.properties</signaturePropFile>
> >         <passwordCallbackClass>net.idt.svp.security.PWCallback
> > </passwordCallbackClass>
> >         <signatureKeyIdentifier>DirectReference</signatureKeyIdentifier>
> >       </action>
> >     </parameter>
> >
> >
> >
> >     <parameter name="InflowSecurity">
> >        <action>
> >          <items>Signature</items>
> >          <signaturePropFile>crypto.properties</signaturePropFile>
> >        </action>
> >     </parameter>
> >
> >
> >
> > My crypto.properties
> >
> >
> >
> >
> > org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
> > org.apache.ws.security.crypto.merlin.keystore.type=jks
> >
> > org.apache.ws.security.crypto.merlin.file=J:\svp_prime\trunk\security\test.jks
> > org.apache.ws.security.crypto.merlin.keystore.password=pswd
> >
> > My Client includes the following:
> >
> >         _serviceClient.getOptions().setTo(new
> > org.apache.axis2.addressing.EndpointReference(targetEndpoint));
> >
> > _serviceClient.getOptions().setUseSeparateListener(useSeparateListener);
> >
> >
> >
> >         StAXOMBuilder builder = new
> > StAXOMBuilder("resources/policy.xml");
> >
> >         Policy clientPolicy = PolicyEngine.getPolicy(
> > builder.getDocumentElement());
> >         _serviceClient.getOptions().setProperty(
> > RampartMessageData.KEY_RAMPART_POLICY, clientPolicy);
> >         _serviceClient.engageModule("rampart");
> >
> > My problem is that I have no clue how to set up the policy.xml.
> > Rampart's examples do not include an example of pure signature only (no
> > timestamp).
> >
> >
> >
> >
> >
> > Can someone supply me with an example?
> >
> > Thanks.
> >
>
>

Reply via email to