KB Article #181667
Configure enduser-SSO in SecureTransport using Azure AD SAML Toolkit as IDP
Summary
This article will describe how to use Azure AD SAML Toolkit as an IDP for the SecureTransport's SSO functionality.
Prerequisites
Enable SSO login in SecureTransport
Generate a new X509 certificate in ST and export the whole chain and import it into the Azure SAML toolkit. Experience shows that Azure plays well with .pfx certificates only, so after exporting the .p12 from SecureTransport you can convert it to .pfx.
Configure Azure AD SAML Toolkit
Create an Azure AD SAML Toolkit Enterprise application. On the Azure AD SAML Toolkit's Single sign-on page navigate to "Single sign-on" and select SAML.
Edit the Basic SAML configuration
Identifier (Entity ID) - this would be for the Azure AD to identify the Enterpris application (you could leave the default name there)
Reply URL: https://securetransport.int/saml2/sso/post
(where the assertion has to be consumed by the ServiceProvider)
Sign on URL: https://securetransport.int
(the actual page where the user would be taken)
Note that these are example values and you should use your own here!
Configure User Attributes & Claims
Under "Required claim" click on Unique User Identifier (Name ID) to edit it
Under "Choose name identifier format" select "Unspecified" from the drop down
Under "Source" select "Attribute"
Under "Source attribute" select user.onpremisessamaccountname
Configure SAML Signing Certificate
Select Signing Option to be "Sign SAML assertion" from the drop down
Select Signing Algorithm to be "SHA-256" from the drop down
Click on the "Import Certificate" button
Browse for the certificate exported in .pfx fromat in "Prerequisites step 2"
Export the Federation Metadata XML
After completing the above steps, click on the Download button standing next to "Federation Metadata XML" on the "SAML Signing Certificate" section.
Save the XML file as you will need it later.
Configure SecureTranpsort
Navigate to Operations → Server Configuration → Configuration Files → SSO_Configuration_Files to download the SSO-configuration-export.zip
file.
Edit the sso-enduser.xml
to have the same structure as the below one where <SamlIdentityProvider> entityId
must be the same as the <EntityDescriptor> entityID
in the ExampleFederationMetadata.xml file (the exported metadata file from Azure).
Example for the sso-enduser.xml file:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <SSOConfiguration> <CertificateValidation pathValidation="true" enableRevocation="false" trustStoreInitializer="com.axway.st.server.sso.impl.TrustStoreInitializer" /> <ServiceProvider entityId="SecureTransport" filteredUri="/*" logoutUri="/logout" logoutRedirectUri="/logoutRedirect" keystoreInitializer="com.axway.st.server.sso.impl.KeyStoreInitializer" keyAlias="ssokey" sessionIdCookieName="STEndUserSsoCookie" useAppSessions="true" > <AssertionConsumerService binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" location="/saml2/sso/redirect"/> <AssertionConsumerService binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" location="/saml2/sso/post"/> <AssertionConsumerService binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-PAOS" location="/saml2/sso/paos"/> <SingleLogoutService binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" location="/saml2/slo/redirect"/> <SingleLogoutService binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" location="/saml2/slo/post"/> <Features> <Feature key="secure-cookie" value="true"/> <Feature key="uid-generator" value="com.axway.st.server.sso.impl.UIDGenerator"/> </Features> </ServiceProvider> <IdentityProviders> <SamlIdentityProvider entityId="https://sts.windows.net/f35a6974-607f-47d4-82d7-ff31d7dc53a5/" metadataUrl="./idpMetadata.xml" verifyAssertionExpiration="true" sign="true"> <Mappings> <RenameMapping source="department" target="department" /> <RenameMapping source="email" target="fdxEmail" /> <RenameMapping source="firstName" target="fullName" /> <RenameMapping source="last name" target="lastName" /> <RenameMapping source="username" target="username" /> </Mappings> <Features> <Feature key="saml-response-binding" value="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"/> <Feature key="saml-allow-http-connection" value="false"/> <Feature key="saml-verify-metadata-signature" value="true"/> <Feature key="saml-allow-unsigned-assertion" value="false"/> </Features> </SamlIdentityProvider> </IdentityProviders> </SSOConfiguration>
Take the exported ExampleFederationMetadata.xml and put it with all of the other XML files exported from ST and add the them all to a single zip (i.e SSO-configuration.zip).
Import the new configuration. Go to Operations → Server Configuration → Configuration Files → SSO_Configuration_Files and click Browse on the right and select the SSO-configuration.zip file to upload it.
Restart SecureTransport's services to reload the configuration.