SAML Identity Provider SSO Configuration

Configuring a SAML Single Sign-On (SSO) provider for security and compatibility with Titania Delivery.

Best practices for configuring a SAML identity provider to register Titania Delivery as a service provider.

Signing Requests and Responses

Requiring signed requests is one way the IdP can verify that requests are sent from a trusted relying party. The IdP should configured to required signed requests, and to send signed responses.

Assertion Consumer Service URL

The Assertion Consumer Service of a SAML relying party is responsible for receiving and processing SAML responses . On the Titania Delivery platform, the assertion consumer service is available at a URL like https://[td-hostname]/portals/saml2/assert. The <AssertionConsumerServiceURL> element of the TD service provider metadata XML file contains the specific value for each TD platform. When registering Titania Delivery as a service provider with your IdP, the configuration will include this URL, which is used to route responses from the IdP to Titania Delivery.

The assertion consumer service URL provided in the SP metadata may be over-ridden in SAML authentication requests to the IdP. All requests originating from Titania Delivery will include an <AuthnRequest>/@@AssertionConsumerServiceURL attribute with a value like https://[td-hostname]/portals/saml2/assert/[registration-id], where [registration-id] is an arbitrary alphanumeric string. The SAML 2.0 Core specification requires IdPs to:

  1. Recognize URLs like this as valid assertion consumer service URLs for this service provider. Different IdPs will have different ways of configuring this. It might be possible to define the valid assertion consumer service URLs using a pattern with a wildcard, such as https://[td-hostname]/portals/saml2/assert/*. In other IdPs, if the requests are signed, they will use the assertion consumer service URL provided in the request.
  2. Return the authorization reponse to the URL provided in the request (including the registration-id).

RelayState

The SAML 2.0 Bindings specification defines a "RelayState" mechanism for preserving state between SAML entities during message exchanges. The specification requires responders to faithfully include any received relay state data in their response. In HTTP POST and redirect protocols, relay state is transmitted as a URL-encoded value of a URL parameter (or form control) named "RelayState".

Authentication requests originating from Titania Delivery will include a "RelayState" URL parameter (or form control) with a value representing the secured portal URL. This value must be returned with the authorization response.

For IdP-initiated authentication, the SAML authorization response sent to the assertion consumer service must include a "RelayState" parameter with the URL-encoded value of the URL of the requested portal.