Configuring saml.config
SAML must be configured with the values provided from your identity provider (IdP) vendor. Sometimes, these are supplied in an XML format and other systems provide them online.
- Navigate to the Ingeniux CMS installation's site folder (e.g., [Drive]:[path-to-site-root-folder]).
- Locate saml.config, and open the file in a text editor.
- Configure the root element,
<ServiceProvider>
:Attribute Description @Name
Enter the service provider name. SAML requires this name to match the service provider name value configured in the IdP endpoint. NoteYour IdP manager can provide this name value.@Description
Enter the provider description. @AssertionConsumerServiceUrl
Enter the URL in the following format: https://path-to-cms-site/SAML/AssertionConsumerService. The IdP requires this value for single sign-on (SSO) configuration. NoteThe@AssertionConsumerServiceUrl
attribute may be referred to as the Single Sign-On URL in other IdP systems.NoteIf your IdP requires a signature certificate for SAML requests, you can configure the<ServiceProvider>
element block with the@LocalCertificateFile
and@LocalCertificatePassword
attributes in this scenario. When providing signature certificates for your IdP, it's recommended that you consult with your system administrator to find out which certificates are available for distribution and configuration within the CMS. - Uncomment and configure the appropriate
<PartnerIdentityProvider>
element(s).Additional InformationIngeniux CMS supports multiple IdP sources in one configuration. The saml.config file included in your CMS contains several examples of types of IdP authentication sources.
IdPs that support Single Logout (SLO) require the value for the SLO URL of your CMS. This value consists of your CMS base URL with the /SAML/SLOService path appended. A typical example is https://path-to-cms-instance/SAML/SLOService. The following example demonstrates an Okta configuration with SingleLogOut configured:
<?xml version="1.0"?> <SAMLConfiguration xmlns="urn:componentspace:SAML:2.0:configuration"> <ServiceProvider Name="IngeniuxCMS" Description="Ingeniux CMS Site" AssertionConsumerServiceUrl="~/SAML/AssertionConsumerService"/> <PartnerIdentityProviders> ... <!-- Okta --> <PartnerIdentityProvider Name="http://www.okta.com/exk5xsht7oII4vg2R0h7" Description="Okta" SignAuthnRequest="true" SignLogoutRequest="true" WantSAMLResponseSigned="true" WantAssertionSigned="false" WantAssertionEncrypted="false" DigestMethod="http://www.w3.org/2001/04/xmlenc#sha256" SignatureMethod="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" SingleSignOnServiceUrl="https://dev-144911.oktapreview.com/app/componentspacedev144911_exampleserviceprovider_1/exk5xsht7oII4vg2R0h7/sso/saml" SingleLogoutServiceUrl="https://dev-144911.oktapreview.com/app/componentspacedev144911_exampleserviceprovider_1/exk5xsht7oII4vg2R0h7/slo/saml" SingleSignOnServiceBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" PartnerCertificateFile="Certificates\okta.cer"/> ... </PartnerIdentityProviders> </SAMLConfiguration>
- Save changes to saml.config.
- Important: If you have not already done so, configure local-membership.config to implement SAML.
- Recycle the CMS application pool after deploying these changes.