Folks,
I'm trying to setup a test of CAS using pac4j-saml to auth with a local Shibboleth IdP by just tweaking the cas-pac4j-oauth-client-demo, but apparently I'm doing something wrong :-/
I changed the applicationContext.xml to reflect the local Idp by changing the identityProviderEntityId and overwrote the testshib-providers.xml with the metadata from the local IdP.
<bean id="samlConfig" class="org.pac4j.saml.client.SAML2ClientConfiguration"
c:keystorePassword="pac4j-demo-passwd"
c:privateKeyPassword="pac4j-demo-passwd"
c:keystorePath="resource:samlKeystore.jks"
c:identityProviderMetadataPath="resource:testshib-providers.xml"
c:serviceProviderEntityId="urn:mace:saml:
pac4j.org"/>
<bean id="saml1" class="org.pac4j.saml.client.SAML2Client"
c:configuration-ref="samlConfig" />
<bean id="clients" class="org.pac4j.core.client.Clients">
<property name="clients">
<list>
<ref bean="saml1" />
</list>
</property>
</bean>
Web Login Service - Message Security Error
The request cannot be fulfilled because the message received
does not meet the security requirements of the login service.
In the IdP relying-party.xml, it's setup to allow unverified RPs, and works with a local Shibboleth SP.
<bean id="shibboleth.UnverifiedRelyingParty" parent="RelyingParty">
<property name="profileConfigurations">
<list>
<bean parent="SAML2.SSO" p:encryptAssertions="true" />
</list>
</property>
</bean>
Not sure what I'm missing. Any pointers would be greatly appreciated :-)
Thanks
Andy