public boolean isPassive(IdentityProviderConfig identityProviderConfig, AuthenticationContext context) { String passive = (String) getAuthenticatorConfigProperties(identityProviderConfig).get( SAML2AuthConstants.Config.Name.PASSIVE); boolean isPassive = false; if (Boolean.parseBoolean(passive)) { isPassive = true; } else if (SAML2AuthConstants.Config.Value.AS_REQUEST.equals(passive)) { ClientAuthenticationRequest clientAuthenticationRequest = context.getInitialAuthenticationRequest(); if (clientAuthenticationRequest instanceof SPInitRequest) { SPInitRequest samlspInitRequest = (SPInitRequest) clientAuthenticationRequest; String samlRequest = samlspInitRequest.getSAMLRequest(); String decodedReq = null; if (samlspInitRequest.isRedirect()) { decodedReq = SAML2AuthUtils.decodeForRedirect(samlRequest); } else { decodedReq = SAML2AuthUtils.decodeForPost(samlRequest); } AuthnRequest clientAuthnRequest = (AuthnRequest) SAML2AuthUtils.unmarshall(decodedReq); isPassive = clientAuthnRequest.isPassive(); } } return isPassive; }
messageContext.addParameter(InboundConstants.PassiveAuth, authnReq.isPassive()); Integer index = authnReq.getAttributeConsumingServiceIndex();
validationResponse.setDestination(authnReq.getDestination()); validationResponse.setValid(true); validationResponse.setPassive(authnReq.isPassive()); validationResponse.setForceAuthn(authnReq.isForceAuthn()); Integer index = authnReq.getAttributeConsumingServiceIndex();
messageContext.setId(((AuthnRequest) request).getID()); messageContext.setAssertionConsumerUrl(((AuthnRequest) request).getAssertionConsumerServiceURL()); messageContext.setIsPassive(((AuthnRequest) request).isPassive()); SSOAuthnRequestValidator reqValidator = new SPInitSSOAuthnRequestValidator(messageContext); return reqValidator.validate((AuthnRequest)request);
saml2SSOContext.setPassive(authnReq.isPassive());