AWS IAM Identity Center (successor to AWS SSO) Integration Guide for Databricks
Introduction
This document helps you configure IAM Identity Center to facilitate single sign-on (SSO) for Databricks using SAML.
Topics
Prerequisites
You’ll need the following to set up SSO access to Databricks:
-
Access to the IAM Identity Center console with permissions to manage applications.
-
An administrator account that have permissions to configure SAML SSO.
Setup instructions
- On the Databricks page in the IAM Identity Center Console, in the Details section, fill in the Display name, and the Description(optional) of the application.
Note
We suggest that you choose a unique display name if you plan to have more than one of the same application.
-
Login to Databricks with your administrator account. (Example: https://DOMAINNAME.cloud.databricks.com)
-
Click on Your Account, then choose Admin Console.
-
Next, click on Single Sign On tab.
-
Insert these values:
- Download the IAM Identity Center certificate, copy its content, then upload the IAM Identity Center certificate to x.509 Certificate.
-
Click on Enable SSO.
-
On the Databricks Single Sign-On page, Copy Databricks SAML URL.
-
Go back to the IAM Identity Center console page where you are configuring the Application.
-
Under Application metadata, choose If you don't have a metadata file, you can manually type your metadata values. to display the application metadata settings.
-
Insert these values:
Field | Value |
---|---|
Application ACS URL | Databricks SAML URL |
Application SAML audience | Databricks SAML URL |
-
Click Save Changes.
-
Assign a user to the application in IAM Identity Center.
Verification
Use the following sections to verify the SSO integration.
Note
Ensure that the user performing the verification is logged out of both IAM Identity Center and the application before performing the steps in each section.
Verifying SSO from IAM Identity Center
-
Access the AWS access portal using the credentials of a user assigned to the Databricks application.
-
In the list of applications, choose Databricks to initiate a login to Databricks.
-
If login was successful you will be signed-in to the Databricks application.
Troubleshooting
If sign in was not successful, please see the troubleshooting steps.
Verifying Service Provider Initiated SSO from Databricks
-
Access Databricks login page (Example: https://DOMAINNAME.cloud.databricks.com).
-
Click on Single Sign On.
-
Login to IAM Identity Center portal using the credentials of a user assigned to the Databricks application.
-
If login was successful you will be signed-in to the Databricks application.
Troubleshooting
If sign in was not successful, please see the troubleshooting steps.
Troubleshooting
Error | Issue | Solution |
---|---|---|
Other | When IAM Identity Center creates a SAML Assertion for a user, it uses the value of the 'email' and 'subject' fields (if they are present) from the connected directory to populate the 'Email' and 'Subject' attributes in the SAML assertion. Many service providers expect these attributes to contain the user’s email address. By default your directory is configured to send 'windowsUPN' in both fields. | Your directory may be configured to contain the users email in the 'Email' attribute instead. If so, you may need to change this in your Connected directory settings. Additionally the 'name' attribute being sent to the provider should not be the user's email address, make sure that your attribute name is not mapping to an email. |
For general troubleshooting problems, please refer to Troubleshooting Guide.
User Provisioning Types
There are two user provisioning you need to aware of:
-
Preprovisioned users
Preprovisioned users, means users must already exist in the downstream SaaS application. For instance, you may need to create SaaS users with the same subject as the AD users.
-
JIT users
JIT (or Just-In-Time) users, means users do not necessarily exist in the downstream SaaS application, and will be provisioned/created/registered the first time the user federates. You may need to enable JIT option in your SaaS application for the AD domain.
User Provisioning
-
Preprovisioned users Preprovisioned users, means users must already exist in the downstream SaaS application. For instance, you may need to create SaaS users with the same email as the AD users
-
JIT users JIT (or Just-In-Time) users, means users do not necessarily exist in the downstream SaaS application, and will be provisioned/created/registered the first time the user federates. You may need to enable JIT option in your SaaS application for the AD domain.Databricks