認証とアクセス制御
この記事では、Databricks の認証とアクセス制御について紹介します。 データへのアクセスを保護する方法については、 「Unity Catalogを使用したデータガバナンス」を参照してください。
Databricksでユーザーとグループを最適に構成する方法の詳細については、「ID のベスト プラクティス」を参照してください。
シングルサインオン
シングルサインオンを使用すると、組織のIDプロバイダーを使用してユーザーを認証できます。 Databricks では、セキュリティを強化し、使いやすさを向上させるために SSO を構成することを推奨しています。 SSO が設定されると、ID プロバイダーを介して多要素認証などのきめ細かいアクセス制御を有効にできます。 統合ログインを使用すると、アカウントと Databricks ワークスペースに使用される 1 つの SSO 構成をアカウントで管理できます。 アカウントが 2023 年 6 月 21 日以降に作成された場合、統合ログインは、新規および既存のすべてのワークスペースに対してアカウントでデフォルトで有効になっており、無効にすることはできません。 「Databricks で SSO を構成する」を参照してください。
シングル サインオンを構成しない場合、ユーザーは Google などの選択した外部アカウントまたはワンタイム パスコードを使用して Databricks にログインできます。 「Eメールまたは外部アカウントでサインイン」を参照してください。
ロックアウトを防ぐために、アカウント管理者は最大 20 人のユーザーに対して緊急アクセスを設定できます。 これらのユーザーは、パスワードと多要素認証 (MFA) を使用して Databricks にサインインできます。 ロックアウトを防ぐための緊急アクセスを参照してください。
SCIMプロビジョニングを使用したIDプロバイダーからのユーザーとグループの同期
SCIM (System for Cross-domain Identity Management) は、ユーザー プロビジョニングを自動化できるオープン スタンダードであり、ユーザーとグループを ID プロバイダーから Databricks アカウントに自動的に同期できます。 SCIM は、ID プロバイダーを使用して Databricks にユーザーとグループを作成し、適切なレベルのアクセス権を付与することで、新しい従業員またはチームのオンボーディングを効率化します。 ユーザーが組織を離れたり、Databricks にアクセスする必要がなくなったりした場合、管理者は ID プロバイダーでそのユーザーを終了でき、そのユーザーのアカウントも Databricks から削除されます。 これにより、一貫したオフボーディングプロセスが保証され、権限のないユーザーが機密データにアクセスするのを防ぎます。 詳細については、 「ID プロバイダーからのユーザーとグループの同期」を参照してください。
OAuth による安全な API 認証
Databricks OAuth は、Databricks ワークスペース レベルでのリソースと操作の安全な資格情報とアクセスをサポートし、承認のためのきめ細かなアクセス許可をサポートします。
注:
Databricks のユーザー名とパスワードを使用した基本認証は、2024 年 7 月 10 日にサポートが終了しました。 Databricks 管理パスワードのサポート終了を参照してください。
詳細については、 「個人のアクセストークン権限の管理」を参照してください。
Databricks 自動化全体に対する認証の詳細については、「Databricks リソースへのアクセスを認証する」を参照してください。
Databricks では個人用アクセストークン (PAT) もサポートしていますが、代わりに OAuth を使用することをお勧めします。 PAT の使用の詳細については、「 個人用アクセストークンへのアクセスを監視および管理する」を参照してください。
アクセス制御の概要
Databricks では、セキュリティ保護可能なオブジェクトごとに異なるアクセス制御システムが存在します。 次の表は、どのアクセス制御システムがどの種類のセキュリティ保護可能なオブジェクトを管理するかを示しています。
セキュリティ保護可能なオブジェクト |
アクセス制御システム |
---|---|
ワークスペースレベルのセキュリティ保護可能なオブジェクト |
アクセス制御リスト |
アカウントレベルのセキュリティ保護可能なオブジェクト |
アカウント役割ベースのアクセス制御 |
データのセキュリティ保護可能なオブジェクト |
Unity Catalog |
Databricks 、ユーザー、サービス プリンシパル、およびグループに直接割り当てられる管理者ロールと権限も提供します。
データのセキュリティ保護に関する情報については、 Unity Catalogのデータガバナンス」を参照してください。
アクセス制御リスト
Databricksでは、アクセス制御リスト (ACL) を使用して、ワークスペース オブジェクト (データベースやSQLウェアハウスなど) にアクセスするための権限を構成できます。 すべてのワークスペース管理者ユーザーは、アクセス制御リストを管理できます。また、アクセス制御リストを管理する委任権限を付与されたユーザーも、アクセス制御リストを管理できます。 アクセス制御リストの詳細については、 「アクセス制御リスト」を参照してください。
アカウント役割ベースのアクセス制御
アカウント 役割ベースのアクセス制御を使用すると、サービス プリンシパルやグループなどのアカウント レベルのオブジェクトを使用する権限を構成できます。 アカウント ロールは、アカウント内で一度定義され、すべてのワークスペースに適用されます。 すべてのアカウント管理者ユーザーは、アカウント ロールを管理できます。また、グループ マネージャーやサービス プリンシパル マネージャーなど、アカウント ロールを管理する権限が委任されているユーザーもアカウント ロールを管理できます。
特定のアカウント レベルのオブジェクトに対するアカウント ロールの詳細については、次の記事を参照してください。
Databricks 管理者ロール
セキュリティ保護可能なオブジェクトに対するアクセス制御に加えて、Databricks プラットフォームには組み込みのロールがあります。 ユーザー、サービス プリンシパル、およびグループにロールを割り当てることができます。
Databricks プラットフォームで利用できる管理者権限には、主に 2 つのレベルがあります。
アカウント管理者:ワークスペースの作成、ユーザー管理、クラウドリソース、アカウント使用状況の監視など、Databricksアカウントを管理します。
ワークスペース管理者:アカウント内の個々のワークスペースのワークスペースID、アクセス制御、設定、機能を管理します。
さらに、ユーザーには、より狭い権限セットを持つ次の機能固有の管理者ロールを割り当てることができます。
Marketplace 管理者:Marketplace リストの作成と管理など、アカウントの Databricks Marketplace プロバイダー プロファイルを管理します。
メタストア管理者:カタログを作成したり、テーブルをクエリーしたりできるユーザーなど、Unity Catalog メタストア内のすべてのセキュリティ保護可能なオブジェクトの権限と所有権を管理します。
ユーザーをワークスペース ユーザーとして割り当てることもできます。 ワークスペース ユーザーはワークスペースにログインすることができ、ワークスペース レベルの権限を付与することができます。
詳細については、 「シングル サインオン ( SSO ) の設定」を参照してください。
ワークスペースのエンタイトルメント
エンタイトルメントは、ユーザー、サービス プリンシパル、またはグループが指定された方法でDatabricksと対話できるようにするプロパティです。 ワークスペース管理者は、ワークスペース レベルでユーザー、サービス プリンシパル、およびグループに権限を割り当てます。 詳細については、 「権限の管理」を参照してください。