ユーザーを管理する
この記事では、Databricksユーザーを追加、更新、削除する方法について説明します。
Databricks ID モデルの概要については、「 Databricks ID」を参照してください。
ユーザーのアクセスを管理するには、「 認証とアクセス制御」を参照してください。
ユーザーを管理できるのは誰ですか?
Databricksでユーザーを管理するには、 アカウント管理者 または ワークスペース管理者 のいずれかである必要があります。
-
アカウント 管理者は 、ユーザーをアカウントに追加し、管理者ロールを割り当てることができます。 また、ユーザーをワークスペースに割り当て、ワークスペース間でのデータ アクセスを構成することもできます (それらのワークスペースで ID フェデレーションが使用されている限り)。
-
ワークスペース 管理者は、 Databricks ワークスペースにユーザーを追加したり、ワークスペース管理者ロールを割り当てたり、ワークスペース内のオブジェクトや機能へのアクセスを管理したりできます (クラスターの作成や、指定したペルソナベースの環境へのアクセスなど)。 Databricks ワークスペースにユーザーを追加すると、そのユーザーもアカウントに追加されます。
ワークスペース admins は、ワークスペース内の
admins
グループのメンバー であり、削除できない予約済みグループです。
ID プロバイダーから Databricks アカウントにユーザーを同期する
アカウント 管理者は、 プロビジョニング コネクタを使用して、ID プロバイダー (IdP) からDatabricks アカウントにユーザーを同期できます。SCIM手順については、「 ユーザーとグループを Databricks アカウントに同期する」を参照してください。
アカウントにユーザーを追加する
- Account console
- Workspace admin settings
アカウント 管理者は、Databricks アカウント コンソール を使用して、 アカウントにユーザーを追加できます。Databricksアカウントのユーザーは、ワークスペース、データ、またはコンピュート リソースへのデフォルト アクセス権を持っていません。ユーザーは 50 を超える Databricks アカウントに属することはできません。
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで、[ ユーザー管理 ] をクリックします。
- [ユーザー] タブで、 [ユーザーの追加] をクリックします。
- ユーザーの名前とメールアドレスを入力します。
- [ ユーザーを追加 ]をクリックします。
-
ワークスペース管理者として、Databrickワークスペースにログインします。
-
Databricksワークスペースの上部のバーにあるユーザー名をクリックし、 [設定] を選択します。
-
[ IDとアクセス ] タブをクリックします。
-
[ ユーザー ] の横にある [ 管理 ] をクリックします。
-
[ ユーザーを追加 ]をクリックします。
-
[ 新規追加 ] をクリックします。
-
ユーザーのEメール アドレスを入力します。
-
[ 追加 ] をクリックします。
Databricks 確認メールを送信します。 5分以内に確認メールが届かない場合は、迷惑メールフォルダの確認を依頼してください。 ワークスペースに新しいユーザーを追加すると、そのユーザーは Databricks アカウントにも追加されます。
アカウント管理者ロールをユーザーに割り当てる
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで、[ ユーザー管理 ] をクリックします。
- ユーザー名を見つけてクリックします。
- [ロール] タブで、1 つ以上のロールを選択します。
ワークスペースにユーザーを割り当てる
アカウント 管理者 と ワークスペース 管理者は、アカウント コンソールまたはワークスペース admin 設定ページを使用して、サービスプリンシパルを Databricks ワークスペースに割り当てることができます。
- Account console
- Workspace admin settings
アカウントコンソールを使用してユーザーをワークスペースに追加するには、IDフェデレーションに対してワークスペースを有効にする必要があります。
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで、「 ワークスペース 」をクリックします。
- ワークスペース名をクリックします。
- [ 権限 ] タブで、[ 権限を追加 ] をクリックします。
- ユーザーを検索して選択し、権限レベル(ワークスペース ユーザー または 管理者 )を割り当て、 [保存] をクリックします。
- ワークスペース管理者として、Databrickワークスペースにログインします。
- Databricksワークスペースの上部のバーにあるユーザー名をクリックし、 [設定] を選択します。
- [ IDとアクセス ] タブをクリックします。
- [ ユーザー ] の横にある [ 管理 ] をクリックします。
- [ ユーザーを追加 ]をクリックします。
- ワークスペースに割り当てる既存のユーザーを選択するか、[ 新規追加 ] をクリックして新しいユーザーを作成します。
- [ 追加 ] をクリックします。
ワークスペースからユーザーを削除する
ユーザーがワークスペースから削除されると、そのユーザーはワークスペースにアクセスできなくなりますが、ユーザーに対する権限は維持されます。 ユーザーが後でワークスペースに再度追加された場合、以前のアクセス許可は回復します。
- Account console
- Workspace admin settings
アカウントコンソールを使用してユーザーをワークスペースから削除するには、IDフェデレーションに対してワークスペースを有効にする必要があります。
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで、「 ワークスペース 」をクリックします。
- ワークスペース名をクリックします。
- [権限] タブでユーザーを見つけます。
- ユーザー行の右端にある
ケバブメニューをクリックし、[ 削除 ] を選択します。
- 確認ダイアログで、 削除の確認 をクリックします。
- ワークスペース管理者として、Databrickワークスペースにログインします。
- Databricksワークスペースの上部のバーにあるユーザー名をクリックし、 [設定] を選択します。
- [ IDとアクセス ] タブをクリックします。
- [ ユーザー ] の横にある [ 管理 ] をクリックします。
- ユーザーを見つけて
ユーザー行の右端にあるケバブメニューを選択し、[ 削除 ]を選択します。
- [ 削除 ] をクリックして確定します。
ワークスペース管理者ロールをユーザーに割り当てる
- ワークスペース管理者として、Databrickワークスペースにログインします。
- Databricksワークスペースの上部のバーにあるユーザー名をクリックし、 [設定] を選択します。
- [ IDとアクセス ] タブをクリックします。
- [ ユーザー ] の横にある [ 管理 ] をクリックします。
- ユーザーを選択します。
- [エンタイトルメント ] で [管理者アクセス ] をオンにします。
ワークスペース ユーザーからワークスペース管理者ロールを削除するには、同じ手順を実行しますが、 [管理者アクセス ] トグルをクリアします。
ユーザーの非アクティブ化
ユーザーは、アカウントレベルまたはワークスペースレベルで非アクティブ化できます。
アカウント 管理者は、 Databricks アカウント全体でユーザーを非アクティブ化できます。 非アクティブ化により、ユーザーはアカウント、ワークスペース、または Databricks APIsの認証とアクセスができなくなりますが、その権限やオブジェクトは削除されません。 これは、破壊的な行動である除去よりも好ましいです。
非アクティブ化の影響:
- ユーザーは、 Databricks UI または APIsを認証またはアクセスできません。
- ユーザーが生成したトークンを使用するアプリケーションまたはスクリプトは、Databricks API にアクセスできなくなります。トークンは残りますが、ユーザーが非アクティブ化されている間は認証には使用できません。
- ユーザーが所有するコンピュート リソースは、引き続き実行されます。
- ユーザーが作成したスケジュールされたジョブは、新しい所有者に割り当てられない限り失敗します。
再アクティブ化すると、ユーザーは同じ権限でアクセスを再開します。
- Account level deactivation
- Workspace level deactivation
アカウント 管理者は、 Databricks アカウント全体でユーザーを非アクティブ化できます。 ユーザーがアカウントレベルで非アクティブ化されると、Databricks アカウントまたはアカウント内のワークスペースに対して認証できなくなります。
アカウントコンソールを使用してユーザーを非アクティブ化することはできません。 代わりに、アカウント Users API.例えば:
curl --netrc -X PATCH \
https://${DATABRICKS_HOST}/api/2.1/accounts/{account_id}/scim/v2/Users/{id} \
--header 'Content-type: application/scim+json' \
--data @update-user.json \
| jq .
update-user.json
:
{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations": [
{
"op": "replace",
"path": "active",
"value": [
{
"value": "false"
}
]
}
]
}
ユーザーがワークスペースレベルで非アクティブ化されている場合、その特定のワークスペースに対して認証することはできませんが、アカウント内のアカウントや他のワークスペースに対しては引き続き認証できます。
ワークスペースの管理者設定ページを使用してユーザーを非アクティブ化することはできません。代わりに、ワークスペース Users API.例えば:
curl --netrc -X PATCH \
https://<databricks-instance>/api/2.0/preview/scim/v2/Users/<user-id> \
--header 'Content-type: application/scim+json' \
--data @update-user.json \
| jq .
update-user.json
:
{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations": [
{
"op": "replace",
"path": "active",
"value": [
{
"value": "false"
}
]
}
]
}
Databricks アカウントからユーザーを削除する
アカウント 管理者は、 Databricks アカウントからユーザーを削除できます。 ワークスペース管理者はできません。アカウントからユーザーを削除すると、そのユーザーはワークスペースからも削除されます。アカウントコンソールを使用してユーザーを削除する場合は、アカウントに設定されている SCIM プロビジョニングコネクタまたは SCIM API アプリケーションを使用してユーザーを削除する必要があります。そうしないと、SCIM プロビジョニングは次回の同期時にユーザーを再度追加します。「SCIM を使用した ID プロバイダーからのユーザーとグループの同期」を参照してください。
ユーザーをアカウントから削除すると、IDフェデレーションが有効になっているかどうかに関係なく、ワークスペースからもそのユーザーが削除されます。アカウント内のすべてのワークスペースにアクセスできなくする場合を除き、ユーザーのアカウントレベルの削除は避けることを推奨します。ユーザーを削除すると次のような影響が生じることに注意してください。
- ユーザーが生成したトークンを使用するアプリケーションまたはスクリプトは、 Databricks APIs.
- ユーザーが所有するジョブは失敗します。
- ユーザーが所有するクラスタリングが停止します。
- そのユーザーがインストールしたライブラリは無効であるため、再インストールする必要があります。
- ユーザーが作成し、所有者として実行資格情報を使用して共有されたクエリまたはダッシュボードは、共有が失敗するのを防ぐために、新しい所有者に割り当てる必要があります。
ユーザーがアカウントから削除されると、そのユーザーはアカウントやワークスペースにアクセスできなくなりますが、ユーザーに対する権限は維持されます。 ユーザーが後でアカウントに再度追加されると、以前の権限が回復します。
アカウントコンソールを使ってユーザーを削除するには、次の手順を実行します。
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで、[ ユーザー管理 ] をクリックします。
- ユーザー名を見つけてクリックします。
- [ ユーザー情報 ]タブで、右上にある
ケバブメニューをクリックし、[ 削除 ]を選択します。
- 確認ダイアログで、 [削除の確認] をクリックします。
API を使用してユーザーを管理する
アカウント管理者とワークスペース管理者は、Databricks APIを使用してDatabricksアカウントとワークスペースのユーザーを管理できます。
API を使用してアカウント内のユーザーを管理する
管理者は、アカウントユーザーAPIを使用して、Databricksアカウントにユーザーを追加し、管理できます。アカウント管理者とワークスペース管理者は、別のエンドポイントURL使用してAPIを呼び出します:
- アカウント管理者は
{account-domain}/api/2.1/accounts/{account_id}/scim/v2/
を使用します。 - ワークスペース管理者は
{workspace-domain}/api/2.0/account/scim/v2/
を使用します。
詳細については、「アカウントユーザーAPI」を参照してください。
API を使用してワークスペース内のユーザーを管理する
アカウント管理者とワークスペース管理者は、ワークスペース割り当てAPIを使用して、IDフェデレーションが有効になっているワークスペースにユーザーを割り当てることができます。ワークスペース割り当てAPIは、Databricksアカウントとワークスペースを介してサポートされます。
- アカウント管理者は
{account-domain}/api/2.0/accounts/{account_id}/workspaces/{workspace_id}/permissionassignments
を使用します。 - ワークスペース管理者は
{workspace-domain}/api/2.0/preview/permissionassignments/principals/{user_id}
を使用します。
「ワークスペース割り当てAPI」を参照してください。
ワークスペースでIDフェデレーションが有効になっていない場合、ワークスペース管理者はワークスペースレベルのAPIを使用してユーザーをワークスペースに割り当てることができます。「ワークスペースユーザー API」を参照してください。