ユーザーの管理
この記事では、Azure Databricks ユーザーを追加、更新、削除する方法について説明します。
Azure Databricks ID モデルの概要については、「Azure Databricks の ID」を参照してください。
ユーザーのアクセスを管理するには、「認証とアクセス制御」を参照してください。
ユーザー管理の概要
Azure Databricks でユーザーを管理するには、アカウント管理者またはワークスペース管理者でなければなりません。
アカウント管理者は、ユーザーに対して、アカウントへの追加と管理者ロールの割り当てを実行できます。 また、ユーザーに対して、ワークスペースへの割り当てと、ワークスペースをまたいだデータ アクセスの構成もできますが、これはそれらのワークスペースで ID フェデレーションが使用されている場合に限られます。
ワークスペース管理者は、ユーザーに対して、Azure Databricks ワークスペースへの追加と、ワークスペース管理者ロールの割り当てができます。また、ワークスペース内のオブジェクトや機能へのアクセスを管理できます。たとえば、クラスターの作成や、指定されたペルソナベース環境へのアクセスなどです。 Azure Databricks ワークスペースにユーザーを追加すると、アカウントにも追加されます。
ワークスペース管理者は、ワークスペース内の
admins
グループのメンバーです。このグループは予約済みで、削除できません。Azure のワークスペース リソースに対する
Microsoft.Databricks/workspaces/assignWorkspaceAdmin/action
アクセス許可を持つ組み込みの共同作成者、所有者、またはカスタム ロールを持つユーザーには、Azure ポータルで [ワークスペースの起動] をクリックすると、ワークスペース管理者ロールが自動的に割り当てられます。 詳細については、「ワークスペース管理者とは」を参照してください。
重要
Databricks は、2023 年 11 月 9 日、アカウント全体で順次ロールアウトする ID フェデレーションと Unity Catalog の新しいワークスペースの自動有効化を開始しました。 既定で ID フェデレーションのワークスペースが有効になっている場合、ワークスペースは無効にできません。 詳細については、「Unity Catalog の自動有効化」を参照してください。
Microsoft Entra ID テナントから Azure Databricks アカウントにユーザーを同期する
アカウント管理者は、SCIM プロビジョニング コネクタを使用して、Microsoft Entra ID テナントのユーザーを Azure Databricks アカウントに同期できます。
重要
ID をワークスペースに直接同期する SCIM コネクタが既にある場合、アカウント レベルの SCIM コネクタが有効になっているときには、これらの SCIM コネクタを無効にする必要があります。 「ワークスペース レベルの SCIM プロビジョニングをアカウント レベルに移行する」を参照してください。
手順については、「Microsoft Entra ID を使用した Azure Databricks への ID のプロビジョニング」をご覧ください。
アカウント内のユーザーを管理する
アカウント管理者は、アカウント コンソールを使用して Azure Databricks アカウントにユーザーを追加できます。 Azure Databricks アカウントのユーザーは、ワークスペース、データ、またはコンピューティング リソースへの既定のアクセス権を持っていません。
アカウント コンソールを使用してアカウントにユーザーを追加する
- アカウント管理者として、アカウント コンソールにログインします。
- サイドバーで、[ユーザー管理] をクリックします。
- [ユーザー] タブで、[ユーザーの追加] をクリックします。
- ユーザーの名前とメール アドレスを入力します。
- [ユーザーの追加] をクリックします。
Note
1 人のユーザーが 50 を超える Azure Databricks アカウントに属することはできません。
ワークスペースに対するアクセス権をユーザーに付与するには、そのワークスペースにユーザーを追加する必要があります。 詳しくは、「ワークスペース内のユーザーを管理する」をご覧ください。
ユーザーにアカウント管理者ロールを割り当てる
アカウント管理者として、アカウント コンソールにログインします。
サイドバーで、[ユーザー管理] をクリックします。
ユーザー名を見つけてクリックします。
[ロール] タブで、アカウント管理者、Marketplace 管理者、または課金管理者を有効にします。
アカウント コンソールを使用してユーザーをワークスペースに割り当てる
アカウント コンソールを使用してワークスペースにユーザーを追加するには、ワークスペースで ID フェデレーションが有効でなければなりません。 ワークスペース管理者は、ワークスペース管理者設定ページを使用して、ユーザーをワークスペースに割り当てることもできます。 詳しくは、「ワークスペース管理者設定ページを使用してワークスペースにユーザーを割り当てる」をご覧ください。
- アカウント管理者として、アカウント コンソールにログインします。
- サイドバーで、[ワークスペース] をクリックします。
- ワークスペース名をクリックします。
- [Permissions](アクセス許可) タブで [Add permissions](アクセス許可の追加) をクリックします。
- ユーザーを見つけて選択し、アクセス許可レベル (ワークスペース ユーザー、または管理者) を割り当てて、[保存] をクリックします。
アカウント コンソールを使用してユーザーをワークスペースから削除する
アカウント コンソールを使用してワークスペースからユーザーを削除するには、ワークスペースで ID フェデレーションが有効でなければなりません。 ユーザーがワークスペースから削除されると、そのユーザーはワークスペースにアクセスできなくなりますが、そのユーザーに対するアクセス許可は維持されます。 そのユーザーが後でワークスペースに再び追加された場合、ユーザーは以前のアクセス許可を回復します。
- アカウント管理者としてアカウント コンソールにログインします
- サイドバーで、[ワークスペース] をクリックします。
- ワークスペース名をクリックします。
- [アクセス許可] タブで、ユーザーを見つけます。
- ユーザー行の右端にある kebab メニューをクリックし、[削除] を選択します。
- 確認のダイアログ ボックスで [削除] をクリックします。
Azure Databricks アカウント内のユーザーを非アクティブ化する
アカウント管理者は、Azure Databricks アカウント全体でユーザーを非アクティブ化できます。 非アクティブ化されたユーザーは、Azure Databricks アカウントまたはワークスペースにログインできません。 ただし、ユーザーのすべてのアクセス許可とワークスペース オブジェクトは変更されないままです。 ユーザーが非アクティブ化された場合、次のようになります:
- ユーザーは、どのメソッドからもアカウントまたはワークスペースにログインできません。
- ユーザーが生成したトークンを使用するアプリケーションまたはスクリプトは、Databricks API にアクセスできなくなります。 トークンは残りますが、ユーザーが非アクティブである間は認証に使用できません。
- ユーザーが所有するノートブックは残ります。
- ユーザーが所有するクラスターは実行され続けます。
- ユーザーが作成したスケジュールされたジョブは、失敗しないように新しい所有者に割り当てる必要があります。
ユーザーが再アクティブ化された場合は、同じアクセス許可を使用して Azure Databricks にログインできます。 Databricks では、ユーザーの削除は破壊的なアクションであるため、ユーザーを削除する代わりにアカウントから非アクティブにすることをお勧めします。 非アクティブ化されたユーザーの状態には、アカウント コンソールで [非アクティブ] というラベルが付けられます。 特定のワークスペースからユーザーの非アクティブ化もできます。 「Azure Databricks ワークスペース内のユーザーを非アクティブ化する」を参照してください。
アカウント コンソールを使用してユーザーを非アクティブ化することはできません。 代わりに、Account 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"
}
]
}
]
}
Azure Databricks アカウントからユーザーを削除する
アカウント管理者は、Azure Databricks アカウントからユーザーを削除できます。 これをワークスペース管理者が行うことはできません。 アカウントからユーザーを削除すると、そのユーザーはワークスペースからも削除されます。
重要
アカウントからユーザーを削除すると、ID フェデレーションが有効になっているかどうかに関係なく、そのユーザーはそのワークスペースからも削除されます。 アカウントレベルのユーザーの削除は、アカウント内のすべてのワークスペースへのアクセスを禁止することを望む場合を除き、行わないことをお勧めします。 ユーザーを削除した場合の次の結果に注意してください。
- ユーザーが生成したトークンを使用するアプリケーションまたはスクリプトは、Databricks API にアクセスできなくなる
- ユーザーが所有するジョブは失敗する
- ユーザーが所有するクラスターは停止する
- ユーザーによって作成され、"所有者として実行" 資格情報を使用して共有されるクエリまたはダッシュボードは、共有が失敗しないように、新しい所有者に割り当てる必要がある
ユーザーがアカウントから削除されると、そのユーザーはアカウントまたはそのワークスペースにアクセスできなくなりますが、そのユーザーに対するアクセス許可は維持されます。 そのユーザーが後でアカウントに再び追加された場合、ユーザーは以前のアクセス許可を回復します。
アカウント コンソールを使用してユーザーを削除するには、次の操作を行います。
- アカウント管理者として、アカウント コンソールにログインします。
- サイドバーで、[ユーザー管理] をクリックします。
- ユーザー名を見つけてクリックします。
- [ユーザー情報] タブで、右上角にある kebab メニューをクリックし、[削除] を選択します。
- 確認ダイアログで [削除の確認] をクリックします。
アカウント コンソールを使用してユーザーを削除する場合、そのアカウントに設定されている SCIM プロビジョニング コネクタまたは SCIM API アプリケーションを使用してそのユーザーを削除する必要もあります。 そうしないと、SCIM プロビジョニングによって、次回、同期を行うときにそのユーザーが追加されてしまいます。 「Microsoft Entra ID からユーザーとグループを同期する」を参照してください。
SCIM API を使用して Azure Databricks アカウントからユーザーを削除するには、アカウント管理者である必要があります。「Azure Databricks アカウントにユーザーとグループの同期」と「アカウント グループ API」を参照してください。
ワークスペース内のユーザーを管理する
ワークスペース管理者は、ワークスペース管理者設定ページを使用してユーザーを追加および管理できます。
ワークスペース管理者設定ページを使用してワークスペースにユーザーを割り当てる
ワークスペース管理者設定ページを使用してワークスペースにユーザーを追加するには、次の操作を行います。
ワークスペース管理者として、Azure Databricks ワークスペースにログインします。
Azure Databricks ワークスペースの上部バーでユーザー名を選択し、[設定] を選択します。
[ID およびアクセス管理] タブをクリックします。
[ユーザー] の横にある [管理] をクリックします。
[ユーザーの追加] をクリックします。
既存のユーザーを選んでワークスペースに割り当てるか、[新規追加] をクリックして新しいユーザーを作成します。
Azure Databricks ワークスペースの Microsoft Entra ID テナントに属している任意のユーザーを追加できます。 ワークスペースに新しいユーザーを追加すると、そのユーザーも Azure Databricks アカウントに追加されます。
追加をクリックします。
Note
ワークスペースで ID フェデレーションが有効になっていない場合は、新しいユーザーをワークスペースに追加するオプションのみが表示されます。 既存のアカウント ユーザーとユーザー名 (メール アドレス) を共有しているユーザーを追加すると、それらのユーザーはマージされます。
ワークスペース管理者設定ページを使用してワークスペース管理者ロールをユーザーに割り当てる
ワークスペース管理者設定ページを使用してワークスペース管理者ロールを割り当てるには、次の操作を行います。
- ワークスペース管理者として、Azure Databricks ワークスペースにログインします。
- Azure Databricks ワークスペースの上部バーでユーザー名を選択し、[設定] を選択します。
- [ID およびアクセス管理] タブをクリックします。
- [ユーザー] の横にある [管理] をクリックします。
- ユーザー を選択します。
- [エンタイトルメント] タブをクリックします。
- [管理者アクセス] の横にあるトグルクリックします。
ワークスペース ユーザーからワークスペース管理者ロールを削除するには、同じ手順を実行しますが、[管理者アクセス] の切り替えをオフにします。
Azure Databricks ワークスペース内のユーザーを非アクティブ化する
ワークスペース管理者は、Azure Databricks ワークスペース内のユーザーを非アクティブ化できます。 非アクティブ化されたユーザーは、ワークスペースにログインしたり、Azure Databricks API からアクセスしたりすることはできませんが、ユーザーのすべてのアクセス許可とワークスペース オブジェクトは変更されません。 ユーザーが非アクティブ化されると、次のようになります。
- ユーザーは、どのメソッドからもワークスペースにログインできません。
- ユーザーの状態は、ワークスペース管理者設定ページで [非アクティブ] と表示されます。
- ユーザーが生成したトークンを使用するアプリケーションまたはスクリプトは、Databricks API にアクセスできなくなります。 トークンは残りますが、ユーザーが非アクティブである間は認証に使用できません。
- ユーザーが所有するノートブックは残ります。
- ユーザーが所有するクラスターは実行され続けます。
- ユーザーが作成したスケジュールされたジョブは、失敗しないように新しい所有者に割り当てる必要があります。
ユーザーが再アクティブ化された場合は、同じアクセス許可を使用してワークスペースにログインできます。 Databricks では、ユーザーの削除は破壊的なアクションであるため、ユーザーを削除する代わりに非アクティブにすることをお勧めします。 ワークスペース管理者設定ページを使用してユーザーを非アクティブ化することはできません。 代わりに、Workspace 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"
}
]
}
]
}
ワークスペースで [管理者設定] ページを使用して、ワークスペースからユーザーを削除する
ユーザーがワークスペースから削除されると、そのユーザーはワークスペースにアクセスできなくなりますが、そのユーザーに対するアクセス許可は維持されます。 そのユーザーが後でワークスペースに再び追加された場合、ユーザーは以前のアクセス許可を回復します。
- ワークスペース管理者として、Azure Databricks ワークスペースにログインします。
- Azure Databricks ワークスペースの上部バーでユーザー名を選択し、[設定] を選択します。
- [ID およびアクセス管理] タブをクリックします。
- [ユーザー] の横にある [管理] をクリックします。
- ユーザーを見つけて、ユーザー行の右端にある kebab メニューを見つけ、[削除] 選択します。
- [削除] をクリックして確定します。
API を使用してユーザーを管理する
アカウント管理者とワークスペース管理者は、Databricks API を使用して、Azure Databricks のアカウントとワークスペース内のユーザーを管理できます。
API を使用してアカウント内のユーザーを管理する
管理者は Account Users API を使用して、Azure Databricks アカウントにユーザーを追加および管理できます。 アカウント管理者とワークスペース管理者は、別のエンドポイント URL を使用して API を呼び出します。
- アカウント管理者は
{account-domain}/api/2.1/accounts/{account_id}/scim/v2/
を使用します。 - ワークスペース管理者は
{workspace-domain}/api/2.0/account/scim/v2/
を使用します。
詳細については、Account Users API に関するページを参照してください。
API を使用してワークスペース内のユーザーを管理する
アカウント管理者とワークスペース管理者は、Workspace Assignment API を使用して、ID フェデレーションが有効なワークスペースにユーザーを割り当てることができます。 Workspace Assignment API は、Azure 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 を使用して、ユーザーをワークスペースに割り当てることができます。 詳しくは、「Workspace Users API」をご覧ください。