Access Management
Manage users, service principals, groups and their permissions in Accounts and Workspaces
List Workspace Permission Assignments
GET
Get the permission assignments for the specified <Account> and <Workspace>.
API scopes: access-management
Parameters
- account_idstringpath
The account ID.
- workspace_idint64path
The workspace ID for the account.
Response
- permission_assignmentsarray of object
Array of permissions assignments defined for a workspace.
Show child attributesHide child attributes
- principalobject
Information about the principal assigned to the workspace.
Show child attributesHide child attributes
- user_namestringRequired
The username of the user. Present only if the principal is a user.
- group_namestringRequired
The group name of the group. Present only if the principal is a group.
- service_principal_namestringRequired
The name of the service principal. Present only if the principal is a service principal.
- principal_idint64
The unique, opaque id of the principal.
- display_namestring
The display name of the principal.
- permissionsarray of string
The permissions level of the principal.
- errorstring
Error response associated with a workspace permission assignment, if any.
List Workspace Permissions
GET
Get an array of workspace permissions for the specified account and workspace.
API scopes: access-management
Parameters
- account_idstringpath
The account ID.
- workspace_idint64path
The workspace ID.
Response
- permissionsarray of object
Array of permissions defined for a workspace.
Show child attributesHide child attributes
- permission_levelstring
- descriptionstring
The results of a permissions query.
Get Rule Set Proxy
GET
Get a rule set by its name. A rule set is always attached to a resource and contains a list of access rules on the said resource. Currently only a default rule set for each resource is supported.
API scopes: access-management
Parameters
- account_idstringquery
<Databricks> account ID.
- namestringquery
The ruleset name associated with the request.
Examples Summary name=accounts/<ACCOUNT_ID>/ruleSets/defaultA name for a rule set on the account. name=accounts/<ACCOUNT_ID>/groups/<GROUP_ID>/ruleSets/defaultA name for a rule set on the group. name=accounts/<ACCOUNT_ID>/servicePrincipals/<SERVICE_PRINCIPAL_APPLICATION_ID>/ruleSets/defaultA name for a rule set on the service principal. name=accounts/<ACCOUNT_ID>/tagPolicies/<TAG_POLICY_ID>/ruleSets/defaultA name for a rule set on the tag policy.
- etagstringquery
Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is strongly suggested that systems make use of the etag in the read -> modify -> write pattern to perform rule set updates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the PUT update request to identify the rule set version you are updating.
Examples Summary etag=An empty etag can only be used in GET to indicate no freshness requirements. etag=RENUAAABhSweA4NvVmmUYdiU717H3Tgy0UJdor3gE4a+mq/oj9NjAf8ZsQ==An etag encoded a specific version of the rule set to get or to be updated.
Response
- namestring
Name of the rule set.
- etagstring
Identifies the version of the rule set returned. Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is strongly suggested that systems make use of the etag in the read -> modify -> write pattern to perform rule set updates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the PUT update request to identify the rule set version you are updating.
- grant_rulesarray of object
Show child attributesHide child attributes
- principalsarray of string
Principals this grant rule applies to. A principal can be a user (for end users), a service principal (for applications and compute workloads), or an account group. Each principal has its own identifier format:
- users/<USERNAME>
- groups/<GROUP_NAME>
- servicePrincipals/<SERVICE_PRINCIPAL_APPLICATION_ID>
- rolestring
Role that is assigned to the list of principals.
List Assignable Roles For Resource
GET
Gets all the roles that can be granted on an account level resource. A role is grantable if the rule set on the resource can contain an access rule of the role.
API scopes: access-management
Parameters
- account_idstringpath
<Databricks> account ID.
- resourcestringquery
The resource name for which assignable roles will be listed.
Examples Summary resource=accounts/<ACCOUNT_ID>A resource name for the account. resource=accounts/<ACCOUNT_ID>/groups/<GROUP_ID>A resource name for the group. resource=accounts/<ACCOUNT_ID>/servicePrincipals/<SP_ID>A resource name for the service principal. resource=accounts/<ACCOUNT_ID>/tagPolicies/<TAG_POLICY_ID>A resource name for the tag policy.
Response
- rolesarray of object
Show child attributesHide child attributes
- namestring
Role to assign to a principal or a list of principals on a resource.
List Assignable Roles For Resource Proxy
GET
Gets all the roles that can be granted on an account level resource. A role is grantable if the rule set on the resource can contain an access rule of the role.
API scopes: access-management
Parameters
- account_idstringquery
<Databricks> account ID.
- resourcestringquery
The resource name for which assignable roles will be listed.
Examples Summary resource=accounts/<ACCOUNT_ID>A resource name for the account. resource=accounts/<ACCOUNT_ID>/groups/<GROUP_ID>A resource name for the group. resource=accounts/<ACCOUNT_ID>/servicePrincipals/<SP_ID>A resource name for the service principal. resource=accounts/<ACCOUNT_ID>/tagPolicies/<TAG_POLICY_ID>A resource name for the tag policy.
Response
- rolesarray of object
Show child attributesHide child attributes
- namestring
Role to assign to a principal or a list of principals on a resource.
Update Rule Set Proxy
PUT
Replace the rules of a rule set. First, use get to read the current version of the rule set before modifying it. This pattern helps prevent conflicts between concurrent updates.
API scopes: access-management
Request body
- account_idstring
<Databricks> account ID.
- namestring
Name of the rule set.
- rule_setobject
Show child attributesHide child attributes
- namestring
Name of the rule set.
- etagstring
Identifies the version of the rule set returned. Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is strongly suggested that systems make use of the etag in the read -> modify -> write pattern to perform rule set updates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the PUT update request to identify the rule set version you are updating.
- grant_rulesarray of object
Show child attributesHide child attributes
- principalsarray of string
Principals this grant rule applies to. A principal can be a user (for end users), a service principal (for applications and compute workloads), or an account group. Each principal has its own identifier format:
- users/<USERNAME>
- groups/<GROUP_NAME>
- servicePrincipals/<SERVICE_PRINCIPAL_APPLICATION_ID>
- rolestring
Role that is assigned to the list of principals.
Response
- namestring
Name of the rule set.
- etagstring
Identifies the version of the rule set returned. Etag used for versioning. The response is at least as fresh as the eTag provided. Etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a rule set from overwriting each other. It is strongly suggested that systems make use of the etag in the read -> modify -> write pattern to perform rule set updates in order to avoid race conditions that is get an etag from a GET rule set request, and pass it with the PUT update request to identify the rule set version you are updating.
- grant_rulesarray of object
Show child attributesHide child attributes
- principalsarray of string
Principals this grant rule applies to. A principal can be a user (for end users), a service principal (for applications and compute workloads), or an account group. Each principal has its own identifier format:
- users/<USERNAME>
- groups/<GROUP_NAME>
- servicePrincipals/<SERVICE_PRINCIPAL_APPLICATION_ID>
- rolestring
Role that is assigned to the list of principals.