Databricks アプリの権限を構成する
アクセス許可は、アプリへのアクセス、管理、共有など、ユーザーが Databricks アプリで実行できる操作を制御します。これは、ユーザーの身元を確認する認証とは異なります。権限によって、ユーザーがアプリ内で実行できるアクションが決まります。
権限レベル
CAN MANAGE- アプリの編集や削除などの機能を含む、アプリの設定と権限を管理できます。すべてのCAN USE機能が含まれます。CAN USE- アプリを実行して操作することはできますが、変更や管理はできません。
CAN MANAGE権限を持つユーザーのみがアプリの権限を割り当てたり取り消したりできます。
Databricks アプリ UI で権限を割り当てる
Databricks アプリの UI で直接権限を割り当てることで、Databricks アプリを表示、実行、または変更できるユーザーを管理します。
- アプリの詳細ページに移動します。
- [ アクセス許可 ]をクリックします。
- ドロップダウンを使用して、ユーザー、グループ、またはサービスプリンシパルを選択します。
- 適切な権限レベル(
CAN USEまたはCAN MANAGE)を選択してください。 - 追加 をクリックし、 保存 をクリックして変更を適用します。
組織の権限
次のいずれかのオプションを使用して、アプリの組織レベルの権限を構成します。
- アクセス権を持つユーザーのみが使用可能: アクセス許可モーダルで明示的にアクセス許可を付与されたユーザー、グループ、およびサービスプリンシパルのみがアプリにアクセスできます。
- 組織内の誰でも使用できます: 現在のDatabricksアカウント (
All account usersグループ) のすべてのユーザーとサービスプリンシパルには、CAN USE権限が与えられます。 ユーザーとサービスプリンシパルによって明示的に付与されたCAN MANAGE権限は、それらの昇格された権限を保持し、個別に保存されます。
JIT プロビジョニングされたユーザーは、引き続き組織の ID プロバイダーを通じて認証し、Databricks によってアカウント ユーザーとして認識される必要があります。これらのユーザーには、ワークスペースへのアクセス権がない場合でも、アプリへのCAN USEアクセス権を付与できます。ただし、アクセスはワークスペースの認証ポリシーによって異なります。たとえば、PrivateLink が有効になっている場合、Databricks はワークスペース レベルの認証にフォールバックする可能性があります。この場合、Databricks パブリック エンドポイントを介して接続するユーザーのアクセスはブロックされます。
Databricks アプリを公開することはできません。匿名アクセスとシングルサインオン(SSO)のバイパスはサポートされていません。外部コラボレーターにアクセス権を付与するには、SCIM および JIT プロビジョニングで ID フェデレーションを使用して、完全なワークスペース アクセスを許可せずに ID プロバイダーを通じてユーザーをオンボードします。
権限と認可
Databricks Apps では、関連しているが異なる概念である 権限 と 認可 を区別することが重要です。
-
権限 はワークスペース レベルで割り当てられ、ワークスペース内でアプリを管理または使用できるユーザーを定義します。権限は、アプリをデプロイ、更新、実行できるユーザーなど、アプリ自体へのアクセスを制御します。権限は、アプリやそのユーザーがアクセスできるデータを制御するものではありません。
-
承認 とは、データとリソースへのアクセスを制御することを指し、次の 2 つのサブカテゴリがあります。
- ユーザー認可 - ユーザーがアプリに対して認証されると、Databricks はユーザーの ID をアプリ ランタイムに転送します。これにより、Unity Catalog やその他のデータ アクセス ポリシーで、ユーザーの ID に基づいて権限を適用し、アプリがユーザーに代わってアクセスできるデータを制限できます。
- アプリの認可 - 必要な Databricks リソースにアクセスするための独自のアクセス許可を持つサービスプリンシパルを使用して実行されるアプリ。 この承認は、アプリ自体がユーザーに関係なく実行できる操作を管理します。
要約すると、権限はアプリへのワークスペース レベルのアクセス (アプリを使用または管理できるユーザー) を制御し、承認は、ユーザー ID ベースのアクセスとアプリ サービスプリンシパル アクセスの両方を含むデータ レベルとリソースのアクセスを制御します。
詳細については、「Databricksアプリで承認を構成する」を参照してください。
アプリの権限
ワークスペース内のすべてのユーザーは、他のサーバレス製品と同様に、 Databricksアプリを作成できます。 ただし、次の権限により、アプリ アクセスのさまざまな側面が制御されます。
- アプリのアクセスと管理: 権限レベルによって制御される、アプリにアクセスして管理できるユーザー
- サービスプリンシパル権限: アプリの専用サービスプリンシパルに割り当てられた権限
- ユーザーの同意: ユーザーが、アプリがユーザー認証のために自分のIDを使用することを許可するかどうか
- ユーザー権限: アプリにアクセスするユーザーの基礎となるUnity Catalogおよびワークスペース権限
権限のベストプラクティス
次のベストプラクティスに従って、Databricks アプリの権限を安全に管理します。
- 最小特権の原則に従って、各ユーザーのロールに必要な権限のみを付与します。
- ユーザーが管理機能を必要としない限り
CAN USE権限を割り当てることを優先します。 - グループまたはサービスプリンシパルを使用して、権限を大規模に効率的に管理します。