Search in sources :

Example 1 with DefaultSignatureSigningParametersProvider

use of org.pac4j.saml.crypto.DefaultSignatureSigningParametersProvider in project cas by apereo.

the class SamlObjectSignatureValidatorTests method verifySamlAuthnRequestWithoutSig.

@Test
public void verifySamlAuthnRequestWithoutSig() throws Exception {
    val spMetadataPath = new File(FileUtils.getTempDirectory(), "sp-metadata.xml").getCanonicalPath();
    setupTestContextFor(spMetadataPath, "cas:example:sp");
    val request = new MockHttpServletRequest();
    val builder = new SAML2AuthnRequestBuilder();
    val authnRequest = builder.build(saml2MessageContext);
    val messageContext = new MessageContext();
    messageContext.setMessage(authnRequest);
    val secContext = messageContext.getSubcontext(SecurityParametersContext.class, true);
    val provider = new DefaultSignatureSigningParametersProvider(saml2ClientConfiguration);
    Objects.requireNonNull(secContext).setSignatureSigningParameters(provider.build(adaptor.getSsoDescriptor()));
    assertDoesNotThrow(new Executable() {

        @Override
        public void execute() throws Throwable {
            samlObjectSignatureValidator.verifySamlProfileRequestIfNeeded(authnRequest, adaptor, request, samlContext);
        }
    });
}
Also used : lombok.val(lombok.val) DefaultSignatureSigningParametersProvider(org.pac4j.saml.crypto.DefaultSignatureSigningParametersProvider) MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) MessageContext(org.opensaml.messaging.context.MessageContext) SAML2MessageContext(org.pac4j.saml.context.SAML2MessageContext) Executable(org.junit.jupiter.api.function.Executable) File(java.io.File) SAML2AuthnRequestBuilder(org.pac4j.saml.sso.impl.SAML2AuthnRequestBuilder) Test(org.junit.jupiter.api.Test)

Example 2 with DefaultSignatureSigningParametersProvider

use of org.pac4j.saml.crypto.DefaultSignatureSigningParametersProvider in project cas by apereo.

the class SamlObjectSignatureValidatorTests method verifySamlAuthnRequestSigned.

@Test
public void verifySamlAuthnRequestSigned() throws Exception {
    val spMetadataPath = new File(FileUtils.getTempDirectory(), "sp-metadata.xml").getCanonicalPath();
    setupTestContextFor(spMetadataPath, "cas:example:sp");
    val request = new MockHttpServletRequest();
    val builder = new SAML2AuthnRequestBuilder();
    val authnRequest = builder.build(saml2MessageContext);
    val messageContext = new MessageContext();
    messageContext.setMessage(authnRequest);
    val secContext = messageContext.getSubcontext(SecurityParametersContext.class, true);
    val provider = new DefaultSignatureSigningParametersProvider(saml2ClientConfiguration);
    Objects.requireNonNull(secContext).setSignatureSigningParameters(provider.build(adaptor.getSsoDescriptor()));
    val handler = new SAMLOutboundProtocolMessageSigningHandler();
    handler.initialize();
    handler.invoke(messageContext);
    assertDoesNotThrow(new Executable() {

        @Override
        public void execute() throws Throwable {
            samlObjectSignatureValidator.verifySamlProfileRequestIfNeeded(authnRequest, adaptor, request, samlContext);
        }
    });
}
Also used : lombok.val(lombok.val) DefaultSignatureSigningParametersProvider(org.pac4j.saml.crypto.DefaultSignatureSigningParametersProvider) MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) SAMLOutboundProtocolMessageSigningHandler(org.opensaml.saml.common.binding.security.impl.SAMLOutboundProtocolMessageSigningHandler) MessageContext(org.opensaml.messaging.context.MessageContext) SAML2MessageContext(org.pac4j.saml.context.SAML2MessageContext) Executable(org.junit.jupiter.api.function.Executable) File(java.io.File) SAML2AuthnRequestBuilder(org.pac4j.saml.sso.impl.SAML2AuthnRequestBuilder) Test(org.junit.jupiter.api.Test)

Aggregations

File (java.io.File)2 lombok.val (lombok.val)2 Test (org.junit.jupiter.api.Test)2 Executable (org.junit.jupiter.api.function.Executable)2 MessageContext (org.opensaml.messaging.context.MessageContext)2 SAML2MessageContext (org.pac4j.saml.context.SAML2MessageContext)2 DefaultSignatureSigningParametersProvider (org.pac4j.saml.crypto.DefaultSignatureSigningParametersProvider)2 SAML2AuthnRequestBuilder (org.pac4j.saml.sso.impl.SAML2AuthnRequestBuilder)2 MockHttpServletRequest (org.springframework.mock.web.MockHttpServletRequest)2 SAMLOutboundProtocolMessageSigningHandler (org.opensaml.saml.common.binding.security.impl.SAMLOutboundProtocolMessageSigningHandler)1