<!-- ========================================== -->
<!-- Principal Connectors -->
<!-- ========================================== -->
- <resolver:PrincipalConnector xsi:type="Direct" xmlns:pc="urn:mace:shibboleth:2.0:resolver:pc"
+ <resolver:PrincipalConnector xsi:type="Direct" xmlns="urn:mace:shibboleth:2.0:resolver:pc"
id="saml1UnspecDirect"
nameIDFormat="urn:oasis:names:tc:SAML:1.0:nameid-format:unspecified" />
- <resolver:PrincipalConnector xsi:type="Direct" xmlns:pc="urn:mace:shibboleth:2.0:resolver:pc"
+ <resolver:PrincipalConnector xsi:type="Direct" xmlns="urn:mace:shibboleth:2.0:resolver:pc"
id="saml2UnspecDirect"
nameIDFormat="urn:oasis:names:tc:SAML:2.0:nameid-format:unspecified" />
<ProfileHandler xsi:type="SAML1AttributeQuery"
inboundBinding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding"
- outboundBinding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding">
+ outboundBindingEnumeration="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding">
<RequestPath>/saml1/SOAP/AttributeQuery</RequestPath>
</ProfileHandler>
<list>
<bean id="shibMetadataExtensions" class="org.opensaml.util.resource.ClasspathResource">
<constructor-arg value="/shibboleth-metadata-ext-config.xml" />
- </bean>
+ </bean>
</list>
</constructor-arg>
</bean>
<key>
<value>urn:oasis:names:tc:SAML:1.0:profiles:artifact-01</value>
</key>
- <bean id="shibboleth.SAML1HttpArtifactDecoder" class="org.opensaml.saml1.binding.encoding.HTTPArtifactDecoder">
+ <bean id="shibboleth.SAML1HttpArtifactDecoder"
+ class="org.opensaml.saml1.binding.encoding.HTTPArtifactDecoder">
</bean>
</entry>
<entry>
</key>
<bean id="shibboleth.SAML1HttpSoap11Decoder"
class="org.opensaml.saml1.binding.decoding.HTTPSOAP11Decoder">
- <property name="parser" ref="shibboleth.ParserPool" />
+ <constructor-arg ref="shibboleth.ParserPool" />
</bean>
</entry>
<entry>
<value>urn:mace:shibboleth:1.0:profiles:AuthnRequest</value>
</key>
<bean id="shibboleth.ShibbolethSSODecoder"
- class="org.opensaml.saml1.binding.decoding.ShibbolethSSODecoder">
+ class="edu.internet2.middleware.shibboleth.idp.profile.saml1.ShibbolethSSODecoder">
</bean>
</entry>
</util:map>
<key>
<value>urn:oasis:names:tc:SAML:1.0:profiles:artifact-01</value>
</key>
- <bean id="shibboleth.SAML1HttpArtifactEncoder" class="org.opensaml.saml1.binding.encoding.HTTPArtifactEncoder">
+ <bean id="shibboleth.SAML1HttpArtifactEncoder"
+ class="org.opensaml.saml1.binding.encoding.HTTPArtifactEncoder">
</bean>
</entry>
<entry>
<value>urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding</value>
</key>
<bean id="shibboleth.SAML1HttpSoap11EncoderBuilder"
- class="org.opensaml.saml1.binding.encoding.HTTPSOAP11EncoderBuilder" />
+ class="org.opensaml.saml1.binding.encoding.HTTPSOAP11Encoder" />
</entry>
</util:map>
import edu.internet2.middleware.shibboleth.common.config.profile.JSPErrorHandlerBeanDefinitionParser;
import edu.internet2.middleware.shibboleth.common.config.profile.VelocityErrorHandlerBeanDefinitionParser;
import edu.internet2.middleware.shibboleth.idp.config.profile.authn.RemoteUserAuthenticationHandlerBeanDefinitionParser;
+import edu.internet2.middleware.shibboleth.idp.config.profile.authn.UsernamePasswordAuthenticationHandlerBeanDefinitionParser;
import edu.internet2.middleware.shibboleth.idp.config.profile.saml1.SAML1AttributeQueryProfileHandlerBeanDefinitionParser;
import edu.internet2.middleware.shibboleth.idp.config.profile.saml1.ShibbolethSSOProfileHandlerBeanDefinitionParser;
import edu.internet2.middleware.shibboleth.idp.config.profile.saml2.SAML2AttributeQueryProfileHandlerBeanDefinitionParser;
registerBeanDefinitionParser(RemoteUserAuthenticationHandlerBeanDefinitionParser.SCHEMA_TYPE,
new RemoteUserAuthenticationHandlerBeanDefinitionParser());
+
+ registerBeanDefinitionParser(UsernamePasswordAuthenticationHandlerBeanDefinitionParser.SCHEMA_TYPE,
+ new UsernamePasswordAuthenticationHandlerBeanDefinitionParser());
}
}
\ No newline at end of file
import javax.xml.namespace.QName;
import org.opensaml.xml.util.DatatypeHelper;
-import org.opensaml.xml.util.XMLHelper;
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
import org.w3c.dom.Element;
builder.addConstructorArg(DatatypeHelper.safeTrimOrNullString(config.getAttributeNS(null,
"authenticationManagerPath")));
-
- builder.addConstructorArg(XMLHelper.getAttributeValueAsList(config.getAttributeNodeNS(null,
- "outboundBindingEnumeration")));
}
}
\ No newline at end of file
builder.addConstructorArg(DatatypeHelper.safeTrimOrNullString(config.getAttributeNS(null,
"authenticationManagerPath")));
-
- builder.addConstructorArg(XMLHelper.getAttributeValueAsList(config.getAttributeNodeNS(null,
- "outboundBindingEnumeration")));
-
- builder.addConstructorArg(DatatypeHelper.safeTrimOrNullString(config.getAttributeNS(null, "decodingBinding")));
}
}
\ No newline at end of file
import java.io.IOException;
import java.util.ArrayList;
-import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
* Constructor.
*
* @param authnManagerPath path to the authentication manager servlet
- * @param outgoingBindings URIs of SAML 2 bindings supported for outgoing message encoding
- * @param decoder URI of the request decoder to use
*/
@SuppressWarnings("unchecked")
- public SSOProfileHandler(String authnManagerPath, List<String> outgoingBindings, String decoder) {
+ public SSOProfileHandler(String authnManagerPath) {
super();
- if (authnManagerPath == null || decoder == null) {
- throw new IllegalArgumentException("AuthN manager path or decoding bindings URI may not be null");
- }
authenticationManagerPath = authnManagerPath;
- decodingBinding = decoder;
-
authnStatementBuilder = (SAMLObjectBuilder<AuthnStatement>) getBuilderFactory().getBuilder(
AuthnStatement.DEFAULT_ELEMENT_NAME);
authnContextBuilder = (SAMLObjectBuilder<AuthnContext>) getBuilderFactory().getBuilder(