![]() ![]() ![]() ![]() ![]() ![]() |
The Security Assertion Markup Language (SAML) enables cross-platform authentication between Web applications or Web Services running in a WebLogic Server domain and Web browsers or other HTTP clients. WebLogic Server supports single sign-on (SSO) based on SAML. When users are authenticated at one site that participates in a single sign-on (SSO) configuration, they are automatically authenticated at other sites in the SSO configuration and do not need to log in separately.
The following sections describe how to set up single sign-on (SSO) with Web browsers or other HTTP clients by using authentication based on the Security Assertion Markup Language (SAML) versions 1.1 and 2.0.
Note: | A WebLogic Server instance that is configured for SAML 2.0 SSO is not interoperable with one that is configured for SAML 1.1 |
For an overview of SAML-based single sign on, see the following topics in Understanding WebLogic Security:
This topic includes the following sections:
To enable single sign-on with SAML, configure WebLogic Server as either a source site or destination site as described in the sections that follow.
To configure a WebLogic Server instance in the role of a source site, complete the following main steps:
To configure a WebLogic Server instance in the role of a destination site, complete the following main steps:
The following topics explain how to configure a WebLogic Server instance as a SAML 1.1 source site:
In your security realm, create a SAML Credential Mapping Provider V2 instance. The SAML Credential Mapping provider is not part of the default security realm. See Configuring a SAML Credential Mapping Provider for SAML 1.1.
Configure the SAML Credential Mapping provider as a SAML authority, using the Issuer URI, Name Qualifier, and other attributes.
Configuration of a WebLogic Server instance as a SAML 1.1 source site is controlled by the FederationServicesMBean
. Access the FederationServicesMBean
with the WebLogic Scripting Tool or through the Administration Console, on the Environment Servers
ServerName
Configuration
Federation Services
SAML 1.1 Source Site page. See
Configure SAML source services in the Administration Console Online Help.
Configure SAML source site attributes as follows:
Also specify the URIs for the Intersite Transfer Service and (to support Browser/Artifact profile) the Assertion Retrieval Service. These URIs are also specified in the configuration of an Asserting Party.
FederationServicesMBean
.arsRequiresSSL
to true. You can require two-way SSL authentication for the Assertion Retrieval Service by setting both arsRequiresSSL
and ARSRequiresTwoWaySSL
to true.A SAML Relying Party is an entity that relies on the information in a SAML assertion produced by the SAML source site. You can configure how WebLogic Server produces SAML assertions separately for each Relying Party or use the defaults established by the Federation Services source site configuration for producing assertion.
You configure a Relying Party in the Administration Console, on the Security Realms RealmName
Providers
Credential Mapper
SAMLCredentialMapperName
Management
Relying Parties page. See
Create a SAML Relying Party and
Configure a SAML Relying Party in the Administration Console Online Help.
You can also configure a Relying Party with the WebLogic Scripting Tool. See Configuring Relying and Asserting Parties with WLST.
When you configure a SAML Relying Party, you can specify support for Artifact profile or POST profile, for the purposes of SAML SSO. As an alternative configure a Relying Party to support WSS/Holder-of-Key or WSS/Sender-Vouches profiles for Web Services Security purposes. Be sure to configure support for the profiles that the SAML destination sites support.
If you support the POST profile, optionally create a form to use in POST profile assertions for the Relying Party and set the pathname of that form in the POST Form attribute.
For each SAML Relying Party, you can configure one or more optional query parameters (such as a partner ID) that will be added to the ACS URL when redirecting to the destination site. In the case of POST profile, these parameters will be included as form variables when using the default POST form. If a custom POST form is in use, the parameters will be made available as a Map of names and values, but the form may or may not constructed to include the parameters in the POSTed data.
WebLogic Server uses a simple assertion store to maintain persistence for produced assertions. You can replace this assertion store with a custom assertion store class that implements weblogic.security.providers.saml.AssertionStoreV2
. Configure WebLogic Server to use your custom assertion store class, rather than the default class, using the FederationServicesMBean.AssertionStoreClassName
attribute. You can configure properties to be passed to the initStore()
method of your custom assertion store class by using the FederationServicesMBean.AssertionStoreProperties
attribute. Configure these attributes in the Administration Console on the Environment: Servers ServerName
Configuration
Federation Services
SAML 1.1 Source Site page.
The following topics describe how to configure WebLogic Server as a SAML destination site:
In your security realm, create and configure a SAML Identity Assertion Provider V2 instance. The SAML Identity Assertion provider is not part of the default security realm. See Configuring a SAML Identity Assertion Provider for SAML 1.1.
Before you configure WebLogic as a SAML destination site, you must first create a SAML Identity Assertion Provider V2 instance in your security realm. Configuration of a WebLogic Server instance as a SAML destination site is controlled by the FederationServicesMBean
. You can access the FederationServicesMBean
using the WebLogic Scripting Tool or through the Administration Console, using the Environment: Servers ServerName
Configuration
Federation Services
SAML 1.1 Destination Site page.
Configure the SAML destination site attributes as follows.
Allow the WebLogic Server instance to serve as a SAML destination site by setting Destination Site Enabled to true.
Set the URIs for the SAML Assertion Consumer Service. This is the URL that receives assertions from source sites, so that the destination site can use the assertions to authenticate users. The Assertion Consumer URI is also specified in the configuration of a Relying Party.
You can require all access to the Assertion Consumer Service to use SSL by setting FederationServicesMBean
.acsRequiresSSL
to true.
The SAML destination site uses a trusted certificate with which to sign POST profile responses. Add this certificate to the keystore and enter the credentials (alias and passphrase) to be used to access the certificate.
Optionally, you can require that each POST profile assertion be used no more than once. WebLogic Server maintains a cache of used assertions so that it can support a single-use policy for assertions. You can replace this assertion cache with a custom assertion cache class that implements weblogic.security.providers.saml.SAMLUsedAssertionCache
. Configure WebLogic Server to use your custom assertion cache class, rather than the default class, using the FederationServicesMBean.SAMLUsedAssertionCache
attribute. You can configure properties to be passed to the initCache()
method of your custom assertion cache class using the FederationServicesMBean.UsedAssertionCacheProperties
attribute. You can configure these attributes in the Administration Console on the Environment Servers
ServerName
Configuration
Federation Services
SAML 1.1 Destination Site page.
Optionally, you can require that the recipient of the SAML Response must match the URL in the HTTP Request. Do this by setting the POST Recipient Check Enabled attribute.
A SAML Asserting Party is a trusted SAML Authority (an entity that can authoritatively assert security information in the form of SAML Assertions).Configure an Asserting Party in the Administration Console, using the Security Realms RealmName
Providers
Credential Mapper
SAMLCredentialMapperName
Management: Asserting Parties page. See
Create a SAML Asserting Party and
Configure a SAML Asserting Party in the Administration Console Online Help.
You can also configure an Asserting Party with the WebLogic Scripting Tool. See Configuring Relying and Asserting Parties with WLST.
When you configure a SAML Asserting Party, you can specify support for Artifact profile or POST profile, for the purposes of SAML SSO. Alternatively, configure an Asserting Party to support WSS/Holder-of-Key or WSS/Sender-Vouches profiles for Web Services Security purposes.
For each SAML Asserting Party, configure zero or more optional query parameters (such as a partner ID) that will be added to the ITS URL when redirecting to the source site.
SAML partners (Relying Parties and Asserting Parties) are maintained in a registry. You can configure SAML partners using the WebLogic Administration Console or using WebLogic Scripting Tool. The following example shows how you might configure two Relying Parties using WLST in online mode.
connect('weblogic','weblogic','t3://localhost:7001')
rlm=cmo.getSecurityConfiguration().getDefaultRealm()
cm=rlm.lookupCredentialMapper('samlv2cm')
rp=cm.newRelyingParty()
rp.setDescription('test post profile')
rp.setProfile('Browser/POST')
rp.setAssertionConsumerURL('http://domain.example.com:7001/saml_destination/acs')
rp.setAssertionConsumerParams(array(['APID=ap_00001'],String))
rp.setSignedAssertions(true)
rp.setEnabled(true)
cm.addRelyingParty(rp)
rp=cm.newRelyingParty()
rp.setDescription('test artifact profile')
rp.setProfile('Browser/Artifact')
rp.setAssertionConsumerURL('http://domain.example.com:7001/saml_destination/acs')
rp.setAssertionConsumerParams(array(['APID=ap_00002'],String))
rp.setARSUsername('foo')
rp.setARSPassword('bar')
rp.setSSLClientCertAlias('demoidentity')
rp.setEnabled(true)
cm.addRelyingParty(rp)
disconnect()
exit()
The following example shows how you might edit an existing Asserting Party. The example gets the Asserting Party, using its Asserting Party ID, and sets the Assertion Retrieval URL.
connect('weblogic','weblogic','t3://localhost:7001')
rlm=cmo.getSecurityConfiguration().getDefaultRealm()
ia=rlm.lookupAuthenticationProvider('samlv2ia')
ap=ia.getAssertingParty('ap_00002')
ap.setAssertionRetrievalURL('https://hostname:7002/samlars/ars')
ia.updateAssertingParty(ap)
disconnect()
exit()
This topic includes the following sections:
A summary of the main steps you take to configure SAML 2.0 services are as follows:
The RDBMS security store is required by the SAML 2.0 security providers so that the data they manage can be synchronized across all the WebLogic Server instances that share that data.
Note that Oracle does not recommend upgrading an existing domain in place to use the RDBMS security store. If you want to use the RDBMS security store, you should configure the RDBMS security store at the time of domain creation. If you have an existing domain with which you want to use the RDBMS security store, create the new domain and migrate your existing security realm to it.
For information, see Managing the RDBMS Security Store.
Optionally, you may also need to create and configure an instance of the SAML Authentication provider.
The sections that follow provide details about each set of main steps.
Regardless of the SAML 2.0 role in which you wish to configure a WebLogic Server instance — that is, as either a Service Provider or Identity Provider — you need to configure the server’s general SAML 2.0 services. Configuration of the SAML 2.0 general services for a WebLogic Server instance is controlled by the SingleSignOnServicesMBean
. You can access the SingleSignOnServicesMBean
with the WebLogic Scripting Tool or through the Administration Console, on the Environment Servers
ServerName
Configuration
Federation Services
SAML 2.0 General page.
Note: | You cannot configure SAML 2.0 general services in a WebLogic Server instance until you have first configured either the SAML 2.0 Identity Assertion or SAML 2.0 Credential Mapping provider and restarted the server instance. |
The following sections describe SAML 2.0 general services:
The general SAML 2.0 services you configure include the following:
Enabling the replicated cache is required if you are configuring SAML 2.0 services on two or more WebLogic Server instances in a domain, such as in a cluster. The replicated cache enables server instances to share and be synchronized with the data that is managed by the SAML 2.0 security providers; that is, either or both the SAML 2.0 Identity Assertion provider and the SAML 2.0 Credential Mapping provider.
Note that the RDBMS security store is strongly recommended if you enable the replicated cache. Therefore prior to configuring SAML 2.0 services, the preferred approach is first to create a domain that is configured to use the RDBMS security store. For more information, see Managing the RDBMS Security Store.
The site information you enter is primarily for the benefit of the business partners in the SAML federation with whom you share it. Site information includes details about the local contact person who is your partners’ point of contact, your organization name, and your organization’s URL.
This URL specifies the base URL that is used to construct endpoint URLs for the various SAML 2.0 services. The published site URL should specify the host name and port at which the server is visible externally, which might not be the same at which the server is accessed locally. For example, if SAML 2.0 services are configured in a cluster, the host name and port may correspond to the load balancer or proxy server that distributes client requests to the Managed Servers in that cluster.
The published site URL should be appended with /saml2
. For example:
https://www.avitek.com:7001/avitek-domain/aviserver/saml2
The entity ID is a human-readable string that uniquely distinguishes your site from the other partner sites in your federation. When your partners need to generate or consume an assertion, the SAML 2.0 services use the entity ID as part of the process of identifying the partner that corresponds with that assertion.
If enabled, the recipient of the authentication request or response must match the URL in the HTTP Request.
If you enable this setting, you also specify the client username and password to be used. These credentials are then included in the published metadata file that you share with your federated partners.
For information about the steps for configuring SAML 2.0 general services, see Configure SAML 2.0 general services in the Administration Console Online Help.
The local site information that is needed by your federated partners — such as the local site contact information, entity ID, published site URL, whether TLS/SSL client authentication is required, and so on — is published to a metadata file by clicking Publish Meta Data in the SAML 2.0 General console page.
When you publish the metadata file, you specify an existing directory on the local machine in which the file can be created. The process of distributing the metadata file to your federated partners is a detail that is not implemented by WebLogic Server. However, you may send this file via a number of commonly used mechanisms suitable for securely transferring electronic documents, such as encrypted email or secure FTP.
Keep the following in mind regarding the metadata file:
The configuration data for the SAML 2.0 services your site offers that is needed by your federated partners is included in this metadata file, greatly simplifying the tasks your partners perform to import your signing certificates, identify your site’s SAML 2.0 service endpoints, and use the correct binding types for connecting to your site’s services, and so on.
Operations on the metadata file are available via the
com.bea.security.saml2.providers.registry.Partner
Java interface.
This section presents the following topics:
In your security realm, create a SAML 2.0 Credential Mapping provider instance. The SAML 2.0 Credential Mapping provider is not part of the default security realm. See Configuring a SAML 2.0 Credential Mapping Provider for SAML 2.0.
Configure the SAML 2.0 Credential Mapping provider as a SAML authority. Attributes you specify include the following:
After you configure the SAML 2.0 Credential Mapping provider, configure SAML 2.0 general services, as described in Configuring SAML 2.0 General Services.
Configuration of a WebLogic Server instance as a SAML 2.0 Identity Provider site is controlled by the SingleSignOnServicesMBean
. You can access the SingleSignOnServicesMBean
using the WebLogic Scripting Tool (WLST), or through the Administration Console by using the Environment Servers
ServerName
Configuration
Federation Services
SAML 2.0 Identity Provider page.
The sections that follow summarize the configuration tasks. For more information about performing these tasks, see Configure SAML 2.0 Identity Provider services in the Administration Console Online Help.
From the SAML 2.0 Identity Provider page in the console, allow the WebLogic Server instance to serve as an Identity Provider site by setting the Enabled attribute to true.
Optionally, you may use a custom login web application to authenticate users into the Identity Provider site. To configure a custom login web application, enable the Login Customized attribute and specify the URL of the web application.
Oracle recommends enabling all the available binding types for the endpoints of the Identity Provider services; namely, POST, Redirect, and Artifact. Optionally you may select a preferred binding type.
After you have configured the SAML 2.0 general services and Identity Provider services, publish your site’s metadata file and distribute it to your federated partners, as described in Publishing and Distributing the Metadata File.
A SAML 2.0 Service Provider partner is an entity that consumes the SAML 2.0 assertions generated by the Identity Provider site. The configuration of Service Provider partners is available from the Administration Console, using the Security Realms RealmName
Providers
Credential Mapper
SAML2CredentialMapperName
Management page.
The attributes that can be set on this console page can also be accessed programmatically via a set of Java interfaces, which are identified in the sections that follow.
See Create a SAML 2.0 Web Single Sign-on Service Provider partner in the Administration Console Online Help for complete details about the specific steps for configuring a Service Provider partner. For a summary of the site information, signing certificates, and service endpoint information available when you configure a web single sign-on partner, see Viewing Partner Site, Certificate, and Service Endpoint Information.
Before you configure a Service Provider partner for web single sign-on, you need to obtain the partner’s SAML 2.0 metadata file via a trusted and secure mechanism, such as encrypted email or an SSL-enabled FTP site. Your partner’s metadata file describes the partner site and binding support, includes the partner’s certificates and keys, contains your partner’s SAML 2.0 service endpoints, and more. Copy the partner’s metadata file into a location that can be accessed by each node in your domain configured for SAML 2.0.
The SAML 2.0 metadata file is described in Publishing and Distributing the Metadata File.
To create and enable a Service Provider partner for web single sign-on:
WebLogic Server provides the
com.bea.security.saml2.providers.registry.Partner
Java interface for configuring these attributes.
Optionally from the General tab of the partner configuration page in the console, you can configure the following attributes of the SAML 2.0 assertions generated specifically for this Service Provider partner:
This is the Java class that overrides the default username mapper class with which the SAML 2.0 Credential Mapping provider is configured in this security realm.
The Time to Live attributes specify the interval of time during which the assertions generated for this partner are valid. These attributes prevent expired assertions from being used.
If enabled, the SAML 2.0 Credential Mapping provider adds, as attributes in the assertion, the groups to which the corresponding user belongs.
WebLogic Server provides the
com.bea.security.saml2.providers.registry.SPPartner
Java interface for configuring these attributes.
You can use the General tab of the Service Provider partner configuration page to determine how the following documents exchanged with this partner must be signed:
Operations on this attribute are available in the
com.bea.security.saml2.providers.registry.SPPartner
interface
Operations on this attribute are available in the
com.bea.security.saml2.providers.registry.WebSSOSPPartner
interface
Operations on this attribute are available in the
com.bea.security.saml2.providers.registry.WebSSOPartner
interface
The attributes for specifying whether this partner accepts only signed assertions, or whether authentication requests must be signed, are read-only: they are derived from the partner’s metadata file.
Optionally, you also use the General tab of the Service Provider partner configuration page to configure the following:
Operations on these attributes are available via the
com.bea.security.saml2.providers.registry.WebSSOPartner
Java interface.
For added security in the exchange of documents with this partner, you can also specify a client user name and password to be used by the Service Provider partner when connecting to the local site’s binding using Basic authentication. This attribute is available via the
com.bea.security.saml2.providers.registry.BindingClientPartner
Java interface.
This section presents the following topics:
In your security realm, create an instance of the SAML 2.0 Identity Assertion provider. The SAML 2.0 Identity Assertion provider is not part of the default security realm. The attributes you specify for the SAML 2.0 Identity Assertion provider include the following:
For more information about this security provider, see Configuring a SAML 2.0 Identity Assertion Provider for SAML 2.0.
If you plan to enable virtual users, or consume attribute statements contained in assertions that you receive from your Identity Provider partners, you need to create and configure an instance of the SAML Authentication provider. For more information, see Configuring the SAML Authentication Provider.
After configuring the SAML 2.0 Identity Assertion provider, and optionally the SAML Authentication provider, configure the SAML 2.0 general services, as described in Configuring SAML 2.0 General Services.
Configuration of a WebLogic Server instance as a SAML 2.0 Service Provider site is controlled by the SingleSignOnServicesMBean
. You can access the SingleSignOnServicesMBean
using the WebLogic Scripting Tool (WLST), or through the Administration Console using the Environment Servers
ServerName
Configuration
Federation Services
SAML 2.0 Service Provider page.
You configure the SAML 2.0 Service Provider site attributes as summarized in the sections that follow. For more information about these configuration tasks, see Configure SAML 2.0 Service Provider services in the Administration Console Online Help.
From the Federation Services: SAML 2.0 Identity Provider page in the console, allow the WebLogic Server instance to serve as a Service Provider site by setting the Enabled attribute to true.
Optionally you may enable the attributes that set the following document signing requirements:
Optionally you may enable the following attributes of the authentication request cache:
Oracle recommends enabling all the available binding types for the endpoints of the Service Provider services; namely, POST, Redirect, and Artifact. Optionally you may specify a preferred binding type.
Optionally, you may specify the URL to which unsolicited authentication responses are sent if they do not contain an accompanying target URL.
A SAML 2.0 Identity Provider partner is an entity that generates SAML 2.0 assertions consumed by the Service Provider site. The configuration of Identity Provider partners is available from the Administration Console, using the Security Realms RealmName
Providers
Authentication
SAML2IdentityAsserterName
Management page.
The attributes that can be set on this console page can also be accessed programmatically via a set of Java interfaces, which are identified in the sections that follow.
See Create a SAML 2.0 Web Single Sign-on Identity Provider partner in the Administration Console Online Help for complete details about the specific steps for configuring a Service Provider partner.
For a summary of the site information, signing certificates, and service endpoint information available when you configure a web single sign-on partner, see Viewing Partner Site, Certificate, and Service Endpoint Information.
The following sections summarize tasks for configuring an Identity Provider partner.
Before you configure an Identity Provider partner for web single sign-on, you need to obtain the partner’s SAML 2.0 metadata file via a trusted and secure mechanism, such as encrypted email or an SSL-enabled FTP site. Your partner’s metadata file describes that partner site and binding support, includes the partner’s certificates and keys, and so on. Copy the partner’s metadata file into a location that can be accessed by each node in your domain configured for SAML 2.0.
The SAML 2.0 metadata file is described in Publishing and Distributing the Metadata File.
To create an Identity Provider partner and enable interactions for web single sign-on:
WebLogic Server provides the
com.bea.security.saml2.providers.registry.Partner
Java interface for configuring these attributes.
Optionally, you can configure the following attributes of the authentication requests generated for, and assertions received from, this Identity Provider partner:
This is the custom Java class that overrides the default username mapper class with which the SAML 2.0 Identity Assertion provider is configured in this security realm. The custom class you specify is used only for identities contained in assertions received from this particular partner.
Operations on this attribute are available in the
com.bea.security.saml2.providers.registry.IdPPartner
Java interface.
Note: | To use this attribute, you must have a SAML Authentication provider configured in the realm. |
Operations on this attribute are available in the
com.bea.security.saml2.providers.registry.IdPPartner
Java interface.
If enabled, the SAML 2.0 Identity Assertion provider extracts attribute information from the assertion, which it uses in conjunction with the SAML Authentication provider (which must be configured in the security realm) to determine the groups in the security realm to which the corresponding user belongs.
Operations on this attribute are available in the
com.bea.security.saml2.providers.registry.IdPPartner
Java interface.
Operations on this attribute are available in the
com.bea.security.saml2.providers.registry.WebSSOIdPPartner
Java interface.
Operations on this attribute are available in the
com.bea.security.saml2.providers.registry.WebSSOPartner
Java interface.
You can configure a set of URIs that, if invoked by an unauthenticated user, cause the user request to be redirected to the Identity Provider partner where the user can be authenticated.
WebLogic Server provides the
com.bea.security.saml2.providers.registry.WebSSOIdPPartner
Java interface for configuring this attribute.
Optionally, you also use the General tab of the Service Provider partner configuration page to configure the following:
Operations on these attributes are available via the
com.bea.security.saml2.providers.registry.WebSSOPartner
Java interface.
For added security in the exchange of documents with this partner, you can also specify a client user name and password to be used by this Identity Provider partner when connecting to the local site’s binding using Basic authentication. This attribute is available via the
com.bea.security.saml2.providers.registry.BindingClientPartner
Java interface.
When you configure SAML 2.0 partners, the partner configuration pages displayed by the Administration Console include tabs for viewing and configuring the following additional information about the partner:
WebLogic Server provides the
com.bea.security.saml2.providers.registry.MetadataPartner
Java interface for partner site information.
Operations on these attributes are available from the
com.bea.security.saml2.providers.registry.WebSSOPartner
Java interface.
Operations on this attribute is available from the
com.bea.security.saml2.providers.registry.BindingClientPartner
Java interface.
com.bea.security.saml2.providers.registry.WebSSOSPPartner
Java interface.
com.bea.security.saml2.providers.registry.WebSSOIdPPartner
Java interface.
com.bea.security.saml2.providers.registry.WebSSOPartner
Java interfaceWhen deploying web applications for SAML-based SSO in a clustered environment, note the following considerations to prevent SAML-based single sign-on from failing:
Note the following recommendations regarding the use of the following elements in deployment descriptor files:
If a user logs in to a web application and tries to access a resource for which that user is not authorized, an HTTP FORBIDDEN (403) response is generated. This is standard web application behavior. However, for backwards compatibility with earlier releases, WebLogic Server permits web applications to use the relogin-enabled
element in the weblogic.xml
deployment descriptor file, so that the response to an access failure results in a request to authenticate. In certain circumstances, it can cause SAML 2.0 based web single sign-on to fail.
Normally, the SAML 2.0 Assertion Consumer Service (ACS) logs the user into the application and redirects the user request to the target web application. However, if that web application is enabled for SAML 2.0 single sign-on, is protected by CLIENT-CERT
authentication, and has the relogin-enabled
deployment descriptor element set to true
, an infinite loop can occur in which a request to authenticate a user is issued repeatedly. This loop can occur when a user is logged in to the web application and attempts to access a resource for which the user is not permitted: instead of generating a FORBIDDEN message, a new authentication request is generated that triggers another SAML 2.0 based web single sign-on attempt.
To prevent this situation from occurring in a web application that is protected by CLIENT-CERT
authentication, either remove the relogin-enabled
deployment descriptor element for the web application, or set the element to false
. This enables standard web application authentication behavior.
When the Assertion Consumer Service logs in the Subject contained in an assertion, an HTTP servlet session is created using the default cookie name JSESSIONID
. After successfully processing the assertion, the ACS redirects the user’s request to the target web application. If the target web application uses a cookie name other than JSESSIONID
, the Subject’s identity is not propagated to the target web application. As a result, the servlet container treats the user as if unauthenticated, and consequently issues an authentication request.
To avoid this situation, do not change the default cookie name when deploying web applications in a domain that are intended to be accessed by SAML 2.0 based single sign-on.
Note the following two login limitations that are rare in clustered environments, but if they occur, they may prevent a single sign-on session from succeeding.
Under normal circumstances, the login application executes on the same node as the single sign-on service, so likelihood of the authentication request being redirected to a login application executing on a different node in the domain is very small. However, it may happen if an authentication request is redirected by a cluster node different than the one hosting the login application. You can almost always prevent this situation from occurring if you configure the Identity Provider to use the default login URI with Basic authentication.
Because the target application executes on the same node as the ACS, this situation is expected to occur very rarely.
![]() ![]() ![]() |