認証とアクセス制御

この記事では、Databricks の認証とアクセス制御について紹介します。 データへのアクセスを保護する方法については、 「Unity Catalogを使用したデータガバナンス」を参照してください。

Databricksでユーザーとグループを最適に構成する方法の詳細については、「ID のベスト プラクティス」を参照してください。

シングルサインオン

Databricks by デフォルト では、Google クラウド Identity (または GSuite) 形式のシングル サインオンが利用できます。 アカウント コンソールとワークスペースの両方で、Google クラウド Identity シングル サインオンを使用します。 Google クラウド Identity を介して多要素認証を有効にすることができます。

必要に応じて、Google クラウド ID アカウント (または GSuite アカウント) を構成して、外部SAML 2.0 ID プロバイダー (IdP) と連携してユーザーの資格情報を確認することができます。 Google Cloud Identity は、 Microsoft Entra ID、Okta、Ping、およびその他の IdP と連携できます。 ただし、 Databricks Google Identity Platform APIsとのみ直接やり取りします。

SCIMプロビジョニングを使用したIDプロバイダーからのユーザーとグループの同期

SCIM (System for Cross-domain Identity Management) は、ユーザー プロビジョニングを自動化できるオープン スタンダードであり、ユーザーとグループを ID プロバイダーから Databricks アカウントに自動的に同期できます。 SCIM は、ID プロバイダーを使用して Databricks にユーザーとグループを作成し、適切なレベルのアクセス権を付与することで、新しい従業員またはチームのオンボーディングを効率化します。 ユーザーが組織を離れたり、Databricks にアクセスする必要がなくなったりした場合、管理者は ID プロバイダーでそのユーザーを終了でき、そのユーザーのアカウントも Databricks から削除されます。 これにより、一貫したオフボーディングプロセスが保証され、権限のないユーザーが機密データにアクセスするのを防ぎます。 詳細については、 「ID プロバイダーからのユーザーとグループの同期」を参照してください。

OAuth による安全な API 認証

Databricks OAuth は、Databricks ワークスペース レベルでのリソースと操作の安全な資格情報とアクセスをサポートし、承認のためのきめ細かなアクセス許可をサポートします。

Databricks では個人用アクセストークン (PAT) もサポートしていますが、代わりに OAuth を使用することをお勧めします。 PAT を監視および管理するには、「 個人用アクセストークンの監視と取り消し 」および 「個人用アクセストークンのアクセス許可の管理」を参照してください。

Databricks 自動化全体に対する認証の詳細については、「Databricks リソースへのアクセスを認証する」を参照してください。

アクセス制御の概要

Databricks では、セキュリティ保護可能なオブジェクトごとに異なるアクセス制御システムが存在します。 次の表は、どのアクセス制御システムがどの種類のセキュリティ保護可能なオブジェクトを管理するかを示しています。

セキュリティ保護可能なオブジェクト

アクセス制御システム

ワークスペースレベルのセキュリティ保護可能なオブジェクト

アクセス制御リスト

アカウントレベルのセキュリティ保護可能なオブジェクト

アカウント役割ベースのアクセス制御

データのセキュリティ保護可能なオブジェクト

Unity Catalog

Databricks 、ユーザー、サービス プリンシパル、およびグループに直接割り当てられる管理者ロールと権限も提供します。

データのセキュリティ保護に関する情報については、 Unity Catalogのデータガバナンス」を参照してください。

アクセス制御リスト

Databricksでは、アクセス制御リスト (ACL) を使用して、ワークスペース オブジェクト (データベースやSQLウェアハウスなど) にアクセスするための権限を構成できます。 すべてのワークスペース管理者ユーザーは、アクセス制御リストを管理できます。また、アクセス制御リストを管理する委任権限を付与されたユーザーも、アクセス制御リストを管理できます。 アクセス制御リストの詳細については、 「アクセス制御リスト」を参照してください。

アカウント役割ベースのアクセス制御

アカウント 役割ベースのアクセス制御を使用すると、サービス プリンシパルやグループなどのアカウント レベルのオブジェクトを使用する権限を構成できます。 アカウント ロールは、アカウント内で一度定義され、すべてのワークスペースに適用されます。 すべてのアカウント管理者ユーザーは、アカウント ロールを管理できます。また、グループ マネージャーやサービス プリンシパル マネージャーなど、アカウント ロールを管理する権限が委任されているユーザーもアカウント ロールを管理できます。

特定のアカウント レベルのオブジェクトに対するアカウント ロールの詳細については、次の記事を参照してください。

Databricks 管理者ロール

セキュリティ保護可能なオブジェクトに対するアクセス制御に加えて、Databricks プラットフォームには組み込みのロールがあります。 ユーザー、サービス プリンシパル、およびグループにロールを割り当てることができます。

Databricks プラットフォームで利用できる管理者権限には、主に 2 つのレベルがあります。

  • アカウント管理者:ワークスペースの作成、ユーザー管理、クラウドリソース、アカウント使用状況の監視など、Databricksアカウントを管理します。

  • ワークスペース管理者:アカウント内の個々のワークスペースのワークスペースID、アクセス制御、設定、機能を管理します。

さらに、ユーザーには、より狭い権限セットを持つ次の機能固有の管理者ロールを割り当てることができます。

  • Marketplace 管理者:Marketplace リストの作成と管理など、アカウントの Databricks Marketplace プロバイダー プロファイルを管理します。

  • メタストア管理者:カタログを作成したり、テーブルをクエリーしたりできるユーザーなど、Unity Catalog メタストア内のすべてのセキュリティ保護可能なオブジェクトの権限と所有権を管理します。

ユーザーをワークスペース ユーザーとして割り当てることもできます。 ワークスペース ユーザーはワークスペースにログインすることができ、ワークスペース レベルの権限を付与することができます。

詳細については、 「シングル サインオン ( SSO ) の設定」を参照してください。

ワークスペースのエンタイトルメント

エンタイトルメントは、ユーザー、サービス プリンシパル、またはグループが指定された方法でDatabricksと対話できるようにするプロパティです。 ワークスペース管理者は、ワークスペース レベルでユーザー、サービス プリンシパル、およびグループに権限を割り当てます。 詳細については、 「権限の管理」を参照してください。