Okta (SAML v2.0)
Prerequisites
Permissions required for registering and configuring an app in Okta
The Okta account must have permission to manage applications in Okta. Ideally the Okta account should be in the Super administrator role.
Implement Single Sign-On (SSO)
It is recommended to use two separate browser tabs for the Keycloak (K) and Okta (O) portals to make it easier to apply the settings.
(K) Open a new tab in your browser and login to the target Spark tenant. Access the Keycloak console from the User menu.
(K) Login to the Keycloak Admin Console using your admin credentials.
(K) Click Identity Providers from the left pane.
(K) Expand the Add provider dropdown and choose SAML v2.0.
(K) Fill in values for the Alias and Display Name fields. The Alias should be a lowercase name without special symbols. Please note this Display Name will appear in the button on the Spark login page.
(K) Copy the Redirect URI value.
(K) Copy the Service provider entity ID value.
(O) In a second browser tab, sign in to Okta.
(O) In the left tab, expand Applications and click on Applications.
(O) Click Create App Integration.
(O) Select SAML 2.0 and then click Next.
(O) Enter a name in the App name field and click Next.
(O) In the SAML Settings section, for Single sign-on URL paste the modified Redirect URI and for Audience URI (SP Entity ID) field paste the Service provider entity ID value.
(O) Select the following values in the dropdowns:
NameValueName ID format
EmailAddressApplication username
EmailUpdate application username on
Create and update(O) Under Attributes Statements section add the following values:
NameValuefirstNameuser.firstNamelastNameuser.lastName(O) For Group Attribute Statements (optional) section add the following values:
NameValueName
groupsFilter
Matches regexValue
.*(O) Click Next. and then click Finish.
(O) Copy the Metadata URL.
(O) Click on the Assignments tab.
(O) Assign your test account.
(K) Return to Keycloak. In SAML entity descriptor paste the Metadata URL and click Add.
(K) Click on the newly created identity provider.
(K) Click on the Mappers tab and then click on Add mapper.
(K) Create 3 mappers with the following properties:
- KeyValue
Name
firstNameSync mode override
ForceMapper type
Attribute ImporterAttribute Name
firstNameName Format
ATTRIBUTE_FORMAT_BASICUser Attribute Name
firstName - KeyValue
Name
lastNameSync mode override
ForceMapper type
Attribute ImporterAttribute Name
lastNameName Format
ATTRIBUTE_FORMAT_BASICUser Attribute Name
lastName - KeyValue
Name
emailSync mode override
ForceMapper type
Attribute ImporterAttribute Name
emailAddressName Format
ATTRIBUTE_FORMAT_BASICUser Attribute Name
email
For SAML SSO, it is important to validate signatures to prevent unauthorized access. For more information see Importance of validating signatures in SAML.
(K) For the identity provider you have setup, scroll down to Signature and Encryption settings.
(K) Enable the option Validate Signature.
Navigate to your Spark tenant and sign in using the newly created provider. There will be a button on the Keycloak login page with the display name defined earlier.
Map Okta groups to Spark user groups
It is recommended to use two separate browser tabs for the Keycloak (K) and Okta (O) portals to make it easier to apply the settings. In this guide, we will setup the automatic roles for the tenant-admin role.
(O) In the first tab sign in to Okta.
(O) Expand Directory and click on Groups.
(O) Create a group and prefix it with spark (or any preferred prefix), for example
spark-tenant-admin.(O) Add the test user to the group.
(K) Open a new tab in your browser and login to the target Spark tenant. Access the Keycloak console from the User menu.
(K) Login to the Keycloak Admin Console using your admin credentials.
(K) Select Identity Providers from the left pane and then the identity provider you configured in the previous section.
(K) Select the Mappers tab and then Add mapper.
(K) Provide the following values.
NameValueName
tenant-adminSync mode override
forceMapper type
Advanced Claim to Group(K) Click Add Claims.
(K) Provide the following values:
KeyValuegroupstenant-admin(K) Leave Regex Claim Values as Off (which is the default).
(K) Click Select Group, choose
tenant-admin, then click Select.(K) Click Save.
Sign in into Coherent Spark with your test account. Click on your initials and hover over the groups icon to confirm your membership in
tenant-admin.We highly recommend creating at least a few additional app groups relevant for Private tenants:
Group for
supervisor:pfuser accounts. In Spark,supervisor:pfmembers can manage permissions across all folders.Groups for "standard" user accounts, e.g.
user:teamA,user:teamB. These groups can be assigned to the users in your organization not responsible for tenant administration. Creating multiple groups for "standard" user accounts can be useful to separate access between teams.
Create a bookmark application for Coherent Spark
Last updated
