Could you create a JIRA + I will look into it? You also need to specify a
Crypto properties file as well as a username.

Colm.


On Tue, Feb 11, 2014 at 3:40 PM, Hrbacek, Stepan <[email protected]>wrote:

> Thank you Colm!
> I would like to use the first approach - specify the encryption username
> via "properties" in the STS client configuration.
> I am unfortunately not able to find the right place in the Fediz IDP Web
> application, currently I am lost among all the beans :-(
> Stepan
>
> > -----Original Message-----
> > From: Colm O hEigeartaigh [mailto:[email protected]]
> > Sent: Tuesday, February 11, 2014 3:20 PM
> > To: [email protected]
> > Subject: Re: Error "A encryption username needs to be declared" when
> using
> > Fediz IdP with external WS-Trust STS
> >
> > A CXF client using the Symmetric binding needs the public key of the
> recipient.
> > This is typically done by specifying an encryption username
> (corresponding to a
> > keystore alias), and a Crypto properties file for encryption (pointing
> to a
> > keystore). Here is an example:
> >
> >
> http://svn.apache.org/viewvc/cxf/trunk/services/sts/systests/basic/src/test/res
> > ources/org/apache/cxf/systest/sts/symmetric/cxf-client.xml?view=markup
> >
> > So one possibly solution is to update the IdP STSClient configuration so
> that it is
> > possible to pass through "properties" as per the client configuration
> above.
> > Alternatively, we could use an encryption certificate from metadata or
> > something, although this would likely require a small amount of work in
> CXF.
> > Which would you prefer to use?
> >
> > Colm.
> >
> >
> > On Tue, Feb 11, 2014 at 1:19 PM, Hrbacek, Stepan
> > <[email protected]>wrote:
> >
> > > Hi all,
> > > I am trying to use the the Apache CXF Fediz IdP (1.1.0) with an
> > > external WS-Trust STS [Atos (c) DirX Access implementation based
> > > Oracle Metro]. When the Fediz IdP tries to send the
> > > http://docs.oasis-open.org/ws-sx/ws-trust/200512/RST/Issue request to
> > > the STS, an error occurs and following exception can be found in
> > > idp.log. The STS's WSDL is quoted below. Java clients using Oracle
> > > Metro work fine with this STS.
> > > Can you plese give me a hint where and how to configure the encryption
> > > certificate (I think the error message is misleading)?
> > > Thank you!
> > > Stepan
> > >
> > > ---------------
> > > 2014-02-11 11:24:40,053
> > > [org.apache.cxf.ws.security.wss4j.policyhandlers.AbstractBindingBuilde
> > > r@http-nio-9443-exec-6]
> > > DEBUG
> > > org.apache.cxf.ws.security.wss4j.policyhandlers.AbstractBindingBuilder
> > > - A encryption username needs to be declared.
> > > org.apache.cxf.ws.policy.PolicyException: A encryption username needs
> > > to be declared.
> > >         at
> > >
> >
> org.apache.cxf.ws.security.wss4j.policyhandlers.AbstractBindingBuilder.policyN
> > otAsserted(AbstractBindingBuilder.java:315)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.wss4j.policyhandlers.AbstractBindingBuilder.setEncr
> > yptionUser(AbstractBindingBuilder.java:1631)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.wss4j.policyhandlers.AbstractBindingBuilder.getEncr
> > yptedKeyBuilder(AbstractBindingBuilder.java:1453)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.wss4j.policyhandlers.SymmetricBindingHandler.setu
> > pEncryptedKey(SymmetricBindingHandler.java:856)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.wss4j.policyhandlers.SymmetricBindingHandler.doSi
> > gnBeforeEncrypt(SymmetricBindingHandler.java:298)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.wss4j.policyhandlers.SymmetricBindingHandler.hand
> > leBinding(SymmetricBindingHandler.java:124)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.wss4j.PolicyBasedWSS4JOutInterceptor$PolicyBased
> > WSS4JOutInterceptorInternal.handleMessage(PolicyBasedWSS4JOutInterceptor.
> > java:173)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.wss4j.PolicyBasedWSS4JOutInterceptor$PolicyBased
> > WSS4JOutInterceptorInternal.handleMessage(PolicyBasedWSS4JOutInterceptor.
> > java:90)
> > >         at
> > >
> >
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
> > n.java:272)
> > >         at
> org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:565)
> > >         at
> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:474)
> > >         at
> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:377)
> > >         at
> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:330)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.trust.AbstractSTSClient.issue(AbstractSTSClient.java:
> > 759)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.trust.STSClient.requestSecurityToken(STSClient.java:
> > 62)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.trust.STSClient.requestSecurityToken(STSClient.java:
> > 56)
> > >         at
> > >
> >
> org.apache.cxf.ws.security.trust.STSClient.requestSecurityToken(STSClient.java:
> > 52)
> > >         at
> > >
> >
> org.apache.cxf.fediz.service.idp.STSAuthenticationProvider.authenticate(STSAut
> > henticationProvider.java:116)
> > >         at
> > >
> >
> org.springframework.security.authentication.ProviderManager.authenticate(Pr
> > oviderManager.java:156)
> > >         at
> > >
> >
> org.springframework.security.authentication.ProviderManager.authenticate(Pr
> > oviderManager.java:174)
> > >         at
> > >
> > org.springframework.security.web.authentication.UsernamePasswordAuthentic
> >
> ationFilter.attemptAuthentication(UsernamePasswordAuthenticationFilter.java:
> > 94)
> > >         at
> > >
> >
> org.springframework.security.web.authentication.AbstractAuthenticationProces
> > singFilter.doFilter(AbstractAuthenticationProcessingFilter.java:195)
> > >         at
> > >
> >
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(F
> > ilterChainProxy.java:342)
> > >         at
> > >
> >
> org.springframework.security.web.context.SecurityContextPersistenceFilter.doF
> > ilter(SecurityContextPersistenceFilter.java:87)
> > >         at
> > >
> >
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(F
> > ilterChainProxy.java:342)
> > >         at
> > >
> org.apache.cxf.fediz.service.idp.STSPortFilter.doFilter(STSPortFilter.java:66)
> > >         ...
> > > ---------------
> > >
> > > The WS-Policy parts of the STS's WSDL are:
> > > ---------------
> > > <?xml version='1.0' encoding='UTF-8'?> <wsdl:definitions
> > > xmlns:dxa-fed="http://dxa.siemens.com/wsdl/federation/";
> > > xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"; xmlns:soap11="
> > > http://schemas.xmlsoap.org/wsdl/soap11/"; xmlns:wsa10="
> > > http://www.w3.org/2005/08/addressing"; xmlns:wsap10="
> > > http://www.w3.org/2006/05/addressing/wsdl"; xmlns:wsdl="
> > > http://schemas.xmlsoap.org/wsdl/"; xmlns:wsp-xmlsoap="
> > > http://schemas.xmlsoap.org/ws/2004/09/policy";
> > > xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:xs="
> > > http://www.w3.org/2001/XMLSchema"; xmlns:sp="
> > > http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"; xmlns:wsp="
> > > http://schemas.xmlsoap.org/ws/2004/09/policy"; xmlns:wst="
> > > http://schemas.xmlsoap.org/ws/2005/02/trust"; xmlns:wsu="
> > >
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-
> > 1.0.xsd"
> > > name="Federation"
> > > targetNamespace="http://dxa.siemens.com/wsdl/federation/
> > > ">
> > >  ...
> > >
> > >  <!-- Bindings section -->
> > >  <wsdl:binding name="SecurityTokenManagingSoap12Http"
> > > type="dxa-fed:SecurityTokenManaging">
> > >     <wsp-xmlsoap:PolicyReference URI="#SecurityTokenService_policy" />
> > >     <soap12:binding style="document" transport="
> > > http://schemas.xmlsoap.org/soap/http"; />
> > >     <wsdl:operation name="issueSecurityToken">
> > >       <soap12:operation soapAction="
> > > http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue"; />
> > >       <wsdl:input>
> > >         <soap12:body use="literal" />
> > >         <wsp-xmlsoap:PolicyReference
> > > URI="#SecurityTokenManaging_Input_Policy" />
> > >       </wsdl:input>
> > >       <wsdl:output>
> > >         <soap12:body use="literal" />
> > >         <wsp-xmlsoap:PolicyReference
> > > URI="#SecurityTokenManaging_Output_Policy" />
> > >       </wsdl:output>
> > >     </wsdl:operation>
> > >   </wsdl:binding>
> > >
> > >   ...
> > >
> > >   <!-- WS-Policies section -->
> > >   <wsp:Policy wsu:Id="SecurityTokenService_policy">
> > >     <wsp:ExactlyOne>
> > >       <wsp:All>
> > >         <sp:SymmetricBinding>
> > >           <wsp:Policy>
> > >             <sp:ProtectionToken>
> > >               <wsp:Policy>
> > >                 <sp:X509Token sp:IncludeToken="
> > >
> > http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never
> ">
> > >                   <wsp:Policy>
> > >                     <!-- sp:RequireDerivedKeys /-->
> > >                     <!-- sp:RequireThumbprintReference /-->
> > >                     <sp:WssX509V3Token10 />
> > >                   </wsp:Policy>
> > >                 </sp:X509Token>
> > >               </wsp:Policy>
> > >             </sp:ProtectionToken>
> > >             <sp:AlgorithmSuite>
> > >               <wsp:Policy>
> > >                 <sp:Basic128 />
> > >               </wsp:Policy>
> > >             </sp:AlgorithmSuite>
> > >             <sp:Layout>
> > >               <wsp:Policy>
> > >                 <sp:Lax />
> > >               </wsp:Policy>
> > >             </sp:Layout>
> > >             <sp:IncludeTimestamp />
> > >             <sp:EncryptSignature />
> > >             <sp:OnlySignEntireHeadersAndBody />
> > >           </wsp:Policy>
> > >         </sp:SymmetricBinding>
> > >         <sp:Wss11>
> > >           <wsp:Policy>
> > >             <sp:MustSupportRefKeyIdentifier />
> > >             <sp:MustSupportRefIssuerSerial />
> > >             <sp:MustSupportRefThumbprint />
> > >             <sp:MustSupportRefEncryptedKey />
> > >             <sp:RequireSignatureConfirmation />
> > >           </wsp:Policy>
> > >         </sp:Wss11>
> > >         <sp:Trust10>
> > >           <wsp:Policy>
> > >             <sp:MustSupportIssuedTokens />
> > >             <sp:RequireClientEntropy />
> > >             <sp:RequireServerEntropy />
> > >           </wsp:Policy>
> > >         </sp:Trust10>
> > >
> > >
> > >         <wsap10:UsingAddressing />
> > >         <sp:EndorsingSupportingTokens xmlns:sp="
> > > http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
> > >           <wsp:Policy>
> > >             <sp:X509Token sp:IncludeToken="
> > > http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Alwa
> > > ysToRecipient
> > > ">
> > >               <wsp:Policy>
> > >                 <!--sp:RequireThumbprintReference/-->
> > >                 <sp:WssX509V3Token10 />
> > >               </wsp:Policy>
> > >             </sp:X509Token>
> > >           </wsp:Policy>
> > >         </sp:EndorsingSupportingTokens>
> > >       </wsp:All>
> > >     </wsp:ExactlyOne>
> > >   </wsp:Policy>
> > >
> > >   <wsp:Policy wsu:Id="SecurityTokenManaging_Input_Policy">
> > >     <wsp:ExactlyOne>
> > >       <wsp:All>
> > >         <sp:SignedParts>
> > >           <sp:Body />
> > >           <sp:Header Name="To" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="From" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="FaultTo" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="ReplyTo" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="MessageID" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="RelatesTo" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="Action" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >         </sp:SignedParts>
> > >         <sp:EncryptedParts>
> > >           <sp:Body />
> > >         </sp:EncryptedParts>
> > >       </wsp:All>
> > >     </wsp:ExactlyOne>
> > >   </wsp:Policy>
> > >
> > >   <wsp:Policy wsu:Id="SecurityTokenManaging_Output_Policy">
> > >     <wsp:ExactlyOne>
> > >       <wsp:All>
> > >         <sp:SignedParts>
> > >           <sp:Body />
> > >           <sp:Header Name="To" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="From" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="FaultTo" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="ReplyTo" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="MessageID" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="RelatesTo" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >           <sp:Header Name="Action" Namespace="
> > > http://www.w3.org/2005/08/addressing"; />
> > >         </sp:SignedParts>
> > >         <sp:EncryptedParts>
> > >           <sp:Body />
> > >         </sp:EncryptedParts>
> > >       </wsp:All>
> > >     </wsp:ExactlyOne>
> > >   </wsp:Policy>
> > >
> > > </wsdl:definitions>
> > > ---------------
> > >
> >
> >
> >
> > --
> > Colm O hEigeartaigh
> >
> > Talend Community Coder
> > http://coders.talend.com
>



-- 
Colm O hEigeartaigh

Talend Community Coder
http://coders.talend.com

Reply via email to