Automatically provision, update and deprovision users and groups in Databricks from JumpCloud using the Identity Management (SCIM) integration. Leverage this integration to centralize user lifecycle, user identity, and group management in JumpCloud for Databricks. Save time and avoid mistakes, as well as potential security risks, related to manually creating users.
Read this article to learn how to setup the Databricks integration.
Prerequisites
- A JumpCloud administrator account.
- A Databricks user account with administrator permissions.
- A Databricks Premium plan and above.
- Databricks SCIM API is based on version 2.0 of the SCIM standard.
- If you have to change your token, you must deactivate the IdM Integration, renew the token and then reactivate the integration.
- A user cannot belong to more than 50 Databricks accounts.
- When you remove a user from a Databricks account, that user is also removed from their workspaces.
- When deleting a user, take into consideration the following:
- Any applications or scripts that use the tokens generated by the user will no longer be able to access the Databricks API.
- Jobs owned by the user will fail.
- Clusters owned by the user will stop.
- Queries or dashboards created by the user and shared using the Run as Owner credential will have to be assigned to a new owner to prevent sharing from failing.
- If your workspace is not enabled for identity federation, you cannot assign existing account users to your workspace.
- Databricks supports the following entitlements:
- workspace-access
- databricks-sql-access
- allow-cluster-create
- allow-instance-pool-create
- The current rate limit of the Account SCIM API is 25 qps. If the rate limit is reached, subsequent API calls return HTTP status code 429.
- When deactivating a user take into consideration the following:
- Deactivating a user removes all access to a workspace for that user but leaves permissions and objects associated with the user unchanged.
- Clusters associated with the user keep running, and notebooks remain in their original locations.
- The user’s tokens are retained but cannot be used to authenticate while the user is deactivated.
- Scheduled jobs, however, fail unless assigned to a new owner.
- The Databricks admin user who generates the token should not be managed by your identity provider (IdP). A Databricks admin user who is managed by the IdP can be deprovisioned using the IdP, which would cause your SCIM provisioning integration to be disabled.
- Groups are supported.
Attribute Considerations
- A default set of attributes are managed for users. See the Attribute Mappings section for more details.
Group Management Important Considerations
Enabling Group Management
You must select the Enable management of User Groups and Group Membership in this application option to manage groups and group membership in the application from JumpCloud.
Group Provisioning and Syncing
- Empty groups are not created.
- JumpCloud takes over management of existing groups in the application when the user group name in JumpCloud matches the name of the group in the application.
- All user groups associated with the application in JumpCloud are synced. Syncing occurs whenever there is a membership or group change event.
- Group renaming is supported.
- If a user group is disassociated from the application in JumpCloud, syncing immediately stops and the group is left as-is in the application. All members of that user group are deactivated in the application unless they are associated with another active application group that is managed from JumpCloud.
Group Deletion
- Managed groups deleted in JumpCloud are deleted in the application.
- All members of the deleted group are deactivated in the application, unless they are associated with another active application group that is managed from JumpCloud.
Disabling Group Management
- You can disable group and group membership management by unchecking the Enable management of User Groups and Group Membership in this application option.
- The managed groups and group membership are left as-is in the application.
- JumpCloud stops sending group membership information for the user, but the user’s identity will continue to be managed from JumpCloud.
Creating a new JumpCloud Application Integration
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > SSO Applications.
- Click + Add New Application.
- Type the name of the application in the Search field and select it.
- Click Next.
- In the Display Label, type your name for the application. Optionally, you can enter a Description, adjust the User Portal Image and choose to hide or Show in User Portal.
- If this is a Bookmark application, enter its URL in the Bookmark URL field.
- Click Save Application.
- If successful, click:
- Configure Application and go to the next section.
- Close to configure your new connector at a later time.
Configuring the Identity Management Integration
To configure Databricks
- As a Databricks account admin, log in to the Databricks account console.
- Click Settings > User Provisioning > Enable user provisioning.
- Copy the SCIM token and the Account SCIM URL.
To configure JumpCloud
- Create a new application or select it from the Configured Applications list.
- Select the Identity Management tab.
- Select the Enable management of User Groups and Group Membership in this application checkbox if you want to provision, manage, and sync groups in Databricks from JumpCloud.
- Click Configure.
- You’re presented with two fields:
- Base URL: Paste the Account SCIM URL you copied when configuring Databricks. (e.g., https://accounts.cloud.databricks.com/api/2.0/accounts/{account_id}/scim/v2)
- Token Key: Paste the SCIM token you generated in the previous section.
- Click Activate.
- You will receive a confirmation that the Identity Management integration has been successfully verified.
- Click save.
- You can now connect user groups to the application in JumpCloud to provision the members of that group in Databricks. Learn how to Authorize Users to an Application.
Attribute Mappings
The following table lists attributes that JumpCloud sends to the application. See Attribute Considerations for more information regarding attribute mapping considerations.
Learn about JumpCloud Properties and how they work with system users in our API.
Databricks User Attributes
JumpCloud Property | JumpCloud UI Field Name | SCIM v2 Mapping | Databricks Value |
---|---|---|---|
username | Username | userName | UserName |
Company Email | emails:value | Email Address | |
firstname | First Name | name.givenName | First Name |
lastname | Last Name | name.familyName | Last Name |
displayName | Display Name | displayName | firstname/lastname |
Group Attributes
JumpCloud Property | JumpCloud UI Field Name | SCIM v2 Mapping | Application Value |
---|---|---|---|
name | Name | displayName | Organization |
Importing Users
This functionality is helpful if users have already been created in the application but have not been created in JumpCloud.
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application and click to open its configuration panel.
- Select the Identity Management tab.
- Click manual import.
- Select the users you want to create in JumpCloud from the application from the list of users that appear. Users in the list have two import statuses:
- New – The user has not been imported.
- Imported – user has been imported and has an account in JumpCloud.
Tip: Try using the New Users-only filter when selecting users to import. This will move all of your new users to the top of the list, making them easier to identify and select.
- Click import.
- If you are importing less than 100 users, your import results will display in real time and you can continue onboarding your users.
- If you have more than 100 users being imported, JumpCloud will send you an email when your import is complete.
- You can now connect and grant users access to all their JumpCloud resources. Learn more in the Authorize Users to an Application and Connecting Users to Resources articles.
Warning: Imported users must be members of a user group bound to an application for JumpCloud to manage their identity in, and access to, the application.
Removing the IdM Integration
To deactivate the IdM Integration
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > SSO.
- Search for the application that you’d like to deactivate and click to open its details panel.
- Under the company name and logo on the left hand panel, click the Deactivate IdM connection link.
- Click confirm.
- If successful, you will receive a confirmation message.
- You can now delete the application.
To delete the application
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application that you’d like to delete and click to open its details panel.
- Check the box for the application.
- Click Delete.
- Enter the number of the applications you are deleting
- Click Delete Application.
- If successful, you will see an application deletion confirmation notification.