You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by Mike <to...@umiacs.umd.edu> on 2005/07/05 23:01:14 UTC
Signature verification
Hi,
We're trying to use a SAMLToken w/ holder-of-key for authentication.
The service side is set up according to the appropriate test case.
<requestFlow>
<handler
type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="action" value="Timestamp Signature
SAMLTokenUnsigned"/>
<parameter name="signaturePropFile"
value="servercrypto.properties" />
</handler>
</requestFlow>
servercrypto.properties:
org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
org.apache.ws.security.crypto.merlin.keystore.type=pkcs12
org.apache.ws.security.crypto.merlin.keystore.provider=BC
org.apache.ws.security.crypto.merlin.keystore.password=xxxx
org.apache.ws.security.crypto.merlin.file=gensvr.keystore
Wss4j is able to find the properties, appropriate keystore, and alias in
that keystore for the certificate issuer, but is unable to verify the
cert path between client and issuer.
AxisFault
faultCode:
{http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: WSDoAllReceiver: Certificate path verification failed for
certificate with subject OU=client, OU=umiacs; nested exception is:
org.apache.ws.security.WSSecurityException: General security
error (Error during certificate path validation: signature check
failed); nested exception is:
java.security.cert.CertPathValidatorException: signature check
failed
Tracking this down, it appears that the SUN provider that is used by
default isn't happy when you use bouncycastle to handle keystore
activity. Changing 'CertPathValidator.getInstance' in Merlin.java to use
the same provider as the keystore appears to fix this. Am I missing
something, or is this a bug?
-Mike