ユーザーを管理する
この記事では、Databricksユーザーを追加、更新、削除する方法について説明します。
Databricks ID モデルの概要については、「 Databricks ID」を参照してください。
ユーザーのアクセスを管理するには、「 認証とアクセス制御」を参照してください。
ユーザー管理の概要
Databricksでユーザーを管理するには、 アカウント管理者 または ワークスペース管理者 のいずれかである必要があります。
-
アカウント 管理者は 、ユーザーをアカウントに追加し、管理者ロールを割り当てることができます。 また、ユーザーをワークスペースに割り当て、ワークスペース間でのデータ アクセスを構成することもできます (それらのワークスペースで ID フェデレーションが使用されている限り)。
-
ワークスペース 管理者は、 Databricks ワークスペースにユーザーを追加したり、ワークスペース管理者ロールを割り当てたり、ワークスペース内のオブジェクトや機能へのアクセスを管理したりできます (クラスターの作成や、指定したペルソナベースの環境へのアクセスなど)。 Databricks ワークスペースにユーザーを追加すると、そのユーザーもアカウントに追加されます。
ワークスペース admins は、ワークスペース内の
admins
グループのメンバー であり、削除できない予約済みグループです。
Databricks は、2023 年 11 月 8 日に ID フェデレーションと Unity Catalog の新しいワークスペースを自動的に有効にし始め、アカウント全体で徐々にロールアウトが進んでいます。 ワークスペースで ID フェデレーションがデフォルトで有効になっている場合、無効にすることはできません。 詳細については、「Unity Catalogの自動有効化」を参照してください。
ID プロバイダーから Databricks アカウントにユーザーを同期する
アカウント管理者は、SCIMプロビジョニングコネクターを使用すると、IDプロバイダー(IdP)のユーザーをDatabricksのアカウントと同期できます。
ID をワークスペースに直接同期する SCIM コネクタが既にある場合は、アカウント レベルの SCIM コネクタが有効になっているときに、それらの SCIM コネクタを無効にする必要があります。 「ワークスペース レベルの SCIM プロビジョニングをアカウント レベルに移行する」を参照してください。
手順については、「 ユーザーとグループを Databricks アカウントに同期する」を参照してください。
アカウントのユーザーを管理する
アカウント 管理者は、Databricks アカウント コンソール を使用して、 アカウントにユーザーを追加できます。Databricksアカウントのユーザーは、ワークスペース、データ、またはコンピュート リソースへのデフォルト アクセス権を持っていません。
アカウントコンソールを使用してアカウントにユーザーを追加する
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで、[ ユーザー管理 ] をクリックします。
- [ユーザー] タブで、 [ユーザーの追加] をクリックします。
- ユーザーの名前とメールアドレスを入力します。
- [ ユーザーを追加 ]をクリックします。
ユーザーは50を超えるDatabricksアカウントに所属することはできません。
ユーザーにワークスペースへのアクセス権を付与するには、ユーザーをワークスペースに追加する必要があります。 「 ワークスペース内のユーザーを管理する」を参照してください。
アカウント管理者ロールをユーザーに割り当てる
-
アカウント管理者として、アカウントコンソールにログインします。
-
サイドバーで、[ ユーザー管理 ] をクリックします。
-
ユーザー名を見つけてクリックします。
-
[ロール] タブで、[ アカウント管理者 ]、[ Marketplace 管理者 ]、または [ 課金管理者 ] をオンにします。
アカウントコンソールを使用してユーザーをワークスペースに割り当てる
アカウントコンソールを使用してワークスペースにユーザーを追加するには、ワークスペースでIDフェデレーションが有効になっている必要があります。 ワークスペース管理者は、ワークスペース管理者設定ページを使用して、ユーザーをワークスペースに割り当てることもできます。 「ワークスペース管理者設定ページを使用してユーザーをワークスペースに割り当てる」を参照してください。
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで、「 ワークスペース 」をクリックします。
- ワークスペース名をクリックします。
- [ 権限 ] タブで、[ 権限を追加 ] をクリックします。
- ユーザーを検索して選択し、権限レベル(ワークスペース ユーザー または 管理者 )を割り当て、 [保存] をクリックします。
アカウントコンソールを使用してワークスペースからユーザーを削除する
アカウントコンソールを使用してワークスペースからユーザーを削除するには、ワークスペースで ID フェデレーションが有効になっている必要があります。 ユーザーがワークスペースから削除されると、そのユーザーはワークスペースにアクセスできなくなりますが、ユーザーに対する権限は維持されます。 ユーザーが後でワークスペースに再度追加された場合、以前のアクセス許可は回復します。
- アカウント管理者として、アカウントコンソールにログインします
- サイドバーで、「 ワークスペース 」をクリックします。
- ワークスペース名をクリックします。
- [権限] タブでユーザーを見つけます。
- ユーザー行の右端にある
ケバブメニューをクリックし、[ 削除 ] を選択します。
- 確認ダイアログで、 削除の確認 をクリックします。
Databricks アカウントのユーザーを非アクティブ化する
アカウント管理者は、Databricksアカウント全体でユーザーを非アクティブ化できます。非アクティブ化されたユーザーは、Databricksアカウントまたはワークスペースにログインできません。ただし、ユーザーの権限とワークスペースオブジェクトはすべて変更されません。ユーザーが非アクティブ化されると、次のようになります。
- ユーザーは、どの方法でもアカウントまたはワークスペースにログインできません。
- このユーザーによって生成されたトークンを使うアプリケーションまたはスクリプトはDatabricks APIにアクセスできなくなります。トークンは残りますが、ユーザーが非アクティブ化されている間は認証には使用できません。
- ユーザーが所有するノートブックは残ります。
- ユーザーが所有するクラスターは引き続き実行されます。
- ユーザーによって作成されたスケジュールジョブは、失敗を防ぐために新しい所有者に割り当てる必要があります。
ユーザーが再アクティブ化されると、同じ権限で Databricks にログインできます。 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"
}
]
}
]
}
Databricks アカウントからユーザーを削除する
アカウント 管理者は、 Databricks アカウントからユーザーを削除できます。 ワークスペース管理者はできません。アカウントからユーザーを削除すると、そのユーザーはワークスペースからも削除されます。アカウントコンソールを使用してユーザーを削除する場合は、アカウントに設定されている SCIM プロビジョニングコネクタまたは SCIM API アプリケーションを使用してユーザーを削除する必要があります。そうしないと、SCIM プロビジョニングは次回の同期時にユーザーを再度追加します。「SCIM を使用した ID プロバイダーからのユーザーとグループの同期」を参照してください。
ユーザーをアカウントから削除すると、IDフェデレーションが有効になっているかどうかに関係なく、ワークスペースからもそのユーザーが削除されます。アカウント内のすべてのワークスペースにアクセスできなくする場合を除き、ユーザーのアカウントレベルの削除は避けることを推奨します。ユーザーを削除すると次のような影響が生じることに注意してください。
- このユーザーによって生成されたトークンを使うアプリケーションまたはスクリプトはDatabricks APIにアクセスできなくなります。
- ユーザーが所有するジョブは失敗になります。
- ユーザーが所有するクラスターが停止します。
- このユーザーによって作成された、[所有者として実行] 資格情報を使用して共有されているクエリーまたはダッシュボードは、共有が失敗しないように新しい所有者に割り当てる必要があります。
ユーザーがアカウントから削除されると、そのユーザーはアカウントやワークスペースにアクセスできなくなりますが、ユーザーに対する権限は維持されます。 ユーザーが後でアカウントに再度追加されると、以前の権限が回復します。
アカウントコンソールを使ってユーザーを削除するには、次の手順を実行します。
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで、[ ユーザー管理 ] をクリックします。
- ユーザー名を見つけてクリックします。
- [ ユーザー情報 ]タブで、右上にある
ケバブメニューをクリックし、[ 削除 ]を選択します。
- 確認ダイアログで、 [削除の確認] をクリックします。
ワークスペース内のユーザーを管理する
ワークスペース管理者は、ワークスペース管理者設定ページを使用してユーザーを追加および管理することができます。
ワークスペース管理者設定ページを使用してユーザーをワークスペースに割り当てる
ワークスペース管理設定ページを使用してワークスペースにユーザーを追加するには、以下の手順を実行します。
-
ワークスペース管理者として、Databrickワークスペースにログインします。
-
Databricksワークスペースの上部のバーにあるユーザー名をクリックし、 [設定] を選択します。
-
[ IDとアクセス ] タブをクリックします。
-
[ ユーザー ] の横にある [ 管理 ] をクリックします。
-
[ ユーザーを追加 ]をクリックします。
-
ワークスペースに割り当てる既存のユーザーを選択するか、[ 新規追加 ] をクリックして新しいユーザーを作成します。
-
[ 追加 ] をクリックします。
Databricks 確認メールを送信します。 5分以内に確認メールが届かない場合は、迷惑メールフォルダの確認を依頼してください。 ワークスペースに新しいユーザーを追加すると、そのユーザーは Databricks アカウントにも追加されます。
ワークスペースで ID フェデレーションが有効になっていない場合は、ワークスペースに新しいユーザーを追加するオプションのみが表示されます。 既存のアカウントユーザーとユーザー名(Eメールアドレス)を共有するユーザーを追加すると、そのユーザーは統合されます。
ワークスペース管理者設定ページを使用して、ワークスペース管理者ロールをユーザーに割り当てます
ワークスペース管理者設定ページを使用してワークスペース管理者ロールを割り当てるには、次の手順を実行してください。
- ワークスペース管理者として、Databrickワークスペースにログインします。
- Databricksワークスペースの上部のバーにあるユーザー名をクリックし、 [設定] を選択します。
- [ IDとアクセス ] タブをクリックします。
- [ ユーザー ] の横にある [ 管理 ] をクリックします。
- ユーザーを選択します。
- [ 権限 ] タブをクリックします。
- [管理者アクセス ] の横にあるトグルをクリックします。
ワークスペース ユーザーからワークスペース管理者ロールを削除するには、同じ手順を実行しますが、 [管理者アクセス ] トグルをクリアします。
Databricks ワークスペースでユーザーを非アクティブ化する
ワークスペース管理者は、Databricksワークスペース内のユーザーを非アクティブ化できます。非アクティブ化されたユーザーは、ワークスペースにログインしたり、Databricks APIからワークスペースにアクセスしたりすることはできませんが、ユーザーのすべての権限とワークスペースオブジェクトは変更されません。ユーザーが非アクティブ化されると、次のようになります。
- ユーザーはどの方法でもワークスペースにログインできません。
- ユーザーのステータスは、ワークスペース管理者設定ページで [非アクティブ ] と表示されます。
- このユーザーによって生成されたトークンを使うアプリケーションまたはスクリプトはDatabricks APIにアクセスできなくなります。トークンは残りますが、ユーザーが非アクティブ化されている間は認証には使用できません。
- ユーザーが所有するノートブックは残ります。
- ユーザーが所有するクラスターは引き続き実行されます。
- ユーザーによって作成されたスケジュールジョブは、失敗を防ぐために新しい所有者に割り当てる必要があります。
ユーザーが再アクティブ化されると、同じ権限でワークスペースにログインできます。 Databricks では、ユーザーを削除することは破壊的なアクションであるため、ユーザーを削除するのではなく非アクティブ化することをお勧めします。 ワークスペースの管理者設定ページを使用してユーザーを非アクティブ化することはできません。 代わりに、ワークスペース 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"
}
]
}
]
}
ワークスペース管理者設定ページを使用してワークスペースからユーザーを削除する
ユーザーがワークスペースから削除されると、そのユーザーはワークスペースにアクセスできなくなりますが、ユーザーに対する権限は維持されます。 ユーザーが後でワークスペースに再度追加された場合、以前のアクセス許可は回復します。
- ワークスペース管理者として、Databrickワークスペースにログインします。
- Databricksワークスペースの上部のバーにあるユーザー名をクリックし、 [設定] を選択します。
- [ IDとアクセス ] タブをクリックします。
- [ ユーザー ] の横にある [ 管理 ] をクリックします。
- ユーザーを見つけて
ユーザー行の右端にあるケバブメニューを選択し、[ 削除 ]を選択します。
- [ 削除 ] をクリックして確定します。
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」を参照してください。