Configuring realm identification for multiple service providers
As a SaaS administrator, activate the Multiple Service Provider (MSP) functionality for a tenant and then enable realm identification by specifying a pattern for a user's login. The MSP functionality helps the BMC Helix Single Sign-On server to identify the realm to which a user has access to. After the realm is identified, the user can access all domains associated with the realm.
The MSP functionality works for AuthProxy based integrations, and agent-based integrations when multi-domain support is activated.
How realm identification works
The following image provides an overview of how realm identification works:
After you enable the MSP functionality and activate realm identification, the following events occur:
Event | Description |
---|---|
1 | A user opens an application URL. |
2 | The BMC Helix Single Sign-On server redirects the user to the MSP page and prompts the user to enter a user name or any meaningful value. |
3 | After the user enters their credentials, the server attempts to identify a realm to which the user has access to and one of the following events occur:
To learn about how the server identifies a realm, see How user name patterns are used to identify a realm. |
How user name patterns are used to identify a realm
After the user enters their login credentials, the server maps the user name with the user name patterns defined for different realms. A user name pattern is an expression defined in Spring Expression Language (SpEL). The expression must contain the #login keyword, which is a placeholder for the user name or any meaningful value that a user enters during runtime. Along with #login, you can use any of the string class functions that returns a boolean value to identify the realms that a user has access to.
To activate the MSP functionality for a tenant
- Log in to the BMC Helix SSO Admin Console.
- On the navigation panel, click Tenant.
- Edit a tenant for which you want to enable realm identification.
- In the tenant feature flags section, select the MSP server side check box.
- Click Save.
To define a user name pattern for realm identification
- On the navigation panel, click Realm.
The Realm Configuration page is displayed where the Realms tab contains a list of tenant realms, and the MSP tab contains the MSP mappings that can be configured for any realm.
- Click the MSP tab.
In the Pattern field, specify a pattern with the #login.string method("value") format; for example, enter #login.endsWith("@local.com").
If you specify multiple patterns for the same realm, the first value in the list of user name patterns takes precedence.- From the Realm list, select a realm that should be identified for the user name pattern you added.
- In the Actions column, click the confirmation icon.
- Click Add.
- Click Save.
If you do not create any user name patterns, the login process for a user runs as usual.