Set up SSO for your Databricks account console | Databricks on AWS [2023/6/20時点]の翻訳です。
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
あなたの組織のアイデンティティプロバイダーを用いてアカウントコンソールへの認証にシングルサインオン(SSO)を活用します。アカウントコンソールは、ワークスペース作成、委任されたAWSアクセス資格情報、AWSストレージ設定、顧客管理VPC(オプション)を含む、お使いのDatabricksアカウントレベルの設定を管理する場所となります。
アカウントコンソールのSSOでは、SAML 2.0あるいはOpenID Connect (OIDC)をサポートしています。お使いのアイデンティティプロバイダー(IdP)は、少なくともいずれかのプロトコルをサポートしている必要があります。お使いのIdPでOIDCとSAML 2.0の両方をサポートしているのであれば、アカウントコンソールの認証にはOIDCを使うことをお勧めします。
アカウントでSSOを有効化すると、すべてのユーザーに対して、アカウントコンソールへのログインにはSSOを使うことが要求されます。アカウントオーナーのみはユーザー名(メールアドレス)とパスワードを用いてログインすることができます。
SSO認証を用いたアカウントコンソールの挙動は、ユーザーがDatabricksアカウントのadmin
ロールを持っているかどうかによって変化します。
-
admin
ロールがある場合、ユーザーはワークスペースやワークスペースリソースの作成や変更のようなアカウントコンソールのアカウント管理者向け機能にアクセスできます。 -
admin
ロールがない場合、ユーザーはログインできるワークスペース一覧やワークスペースへのリンクの参照のような非管理者のアクションに限定されます。
注意
アカウントレベルのSSOを使うには、アカウントはE2バージョンのDatabricksプラットフォームである必要があります。アカウントタイプがわからない場合には、Databricks担当者にお問い合わせください。
統合ログイン
2023/6/21以降にDatabricksアカウントが作成されたのであれば、あなたのアカウントで統合ログインが有効になっています。統合ログインによって、アカウントとすべてのDatabricksワークスペースで使用される一つのSSO設定を管理することができます。アカウントでSSOが有効化されると、新規・既存のすべてのワークスベースでアカウントレベルのSSO設定が用いられ、アカウント管理者、ワークスペース管理者を含むすべてのユーザーはSSOを用いてDatabricksにサインインしなくてはなりません。ワークスペースレベルで個別にSSOを管理することはできません。
2023/6/21以前にアカウントが作成されている場合、アカウントで統合ログインは有効化されていません。これは、アカウントのSSOとワークスペースごとのSSOは個別に管理しなくてはならないことを意味します。アカウントとワークスペースで同じアイデンティティプロバイダーを設定しなくてはなりません。
プレビュー
2023/6/21以前に作成されたアカウントの統合ログインはプライベートプレビューです。アクセスするにはDatabricks担当者にお問い合わせください。
アカウントコンソールSSOアプリケーションの例
以下のアイデンティティプロバイダーでのSSOの設定方法に関しては、手順を参照することができます:
- SSO to your Databricks console with Azure Active Directory
- Configure SSO with Okta for your Databricks account console
- Configure SSO with OneLogin for your Databricks account console
OIDCやSAML 2.0をサポートしているいかなるアイデンティティプロバイダーではプロセスは同様なものとなります。お使いのアイデンティティプロバイダーが上に列挙されていない場合には、以下のOIDCやSAMLの手順に従ってください。アカウントコンソールの認証にはOICDを使うことをお勧めします。
OIDCを用いたアカウントシングルサインオン認証の有効化
警告!
シングルサインオンのテストの過程でDatabricksからロックアウトされないように、別のブラウザウィンドウでアカウントコンソールを開いたままにしておくことをお勧めします。
-
アカウントオーナーあるいはアカウント管理者として、アカウントコンソールにログインし、サイドバーのSettingsをクリックします。
-
Single sign-onタブをクリックします。
-
このタブの上部にあるドロップダウンから、OpenID Connectを選択します。
-
お使いのアイデンティティプロバイダーに移動し、新たにクライアントアプリケーション(web)を作成し、アイデンティティプロバイダーの設定インタフェースの適切なフィールドにDatabricks Redirect URIを入力します。
お使いのアイデンティティプロバイダーでは、このプロセスのガイドに関するドキュメントを提供しているに違いありません。
-
このアプリケーション向けにアイデンティティプロバイダーが生成したクライアントID、クライアントシークレット、OpenIDイシュアーURLをコピーしておきます。
- クライアントIDは、お使いのアイデンティティプロバイダーであなたが作成したDatabricksアプリケーションのユニークなIDです。これは時には、アプリケーションIDと呼ばれます。
- クライアントシークレットは、作成したDatabricksアプリケーション向けに生成されたシークレットあるいはパスワードです。これは、アイデンティティプロバイダーでDatabricksを認証する際に使用されます。
-
OpenIDイシュアーURLは、お使いのアイデンティティプロバイダーのOpenID設定ドキュメントを発見できるURLです。このOpenID設定ドキュメントは
{issuer-url}/.well-known/openid-configuration
で発見できるべきです。
例については、アカウントコンソールSSOアプリケーションの例をご覧ください。
-
DatabricksアカウントコンソールのSingle sign-onタブに戻り、Client ID、Client secret、OpenID issuer URLフィールドにアイデンティティプロバイダーアプリケーションでコピーした値を入力します。
-
Saveをクリックします。
-
SSO設定が適切に動作していることをテストするためにTest SSOをクリックします。
-
お使いのアカウントでシングルサインオンを有効化するために、Enable SSOをクリックします。
-
SSOを用いてアカウントコンソールログインをテストします。
SAMLを用いたアカウントシングルサインオン認証の有効化
以下の手順では、アカウントオーナー以外のアカウントコンソールユーザーを認証するために、どのようにSAML 2.0を使うのかを説明します。お使いのIdPでOIDCとSAML 2.0の両方をサポートしているのであれば、アカウントコンソールの認証にはOIDCを使うことをお勧めします。
警告!
シングルサインオンのテストの過程でDatabricksからロックアウトされないように、別のブラウザウィンドウでアカウントコンソールを開いたままにしておくことをお勧めします。
-
アカウントコンソールのSSOページにアクセスし、SAML URLをコピーします:
- アカウントオーナーあるいはアカウント管理者として、アカウントコンソールにログインし、サイドバーのSettingsをクリックします。
- Single sign-onタブをクリックします。
- このタブの上部にあるドロップダウンから、SAML 2.0を選択します。
-
Databricks SAML URLフィールドの値をコピーしておきます。後のステップでこのDatabricks SAML URLが必要になります。
-
別のブラウザウィンドウあるいはタブで、お使いのアイデンティティプロバイダーでDatabricksアプリケーションを作成します。
- アイデンティティプロバイダー(IdP)にアクセスします。
- 新たなクライアントアプリケーション(web)を作成します。
- 必要であればお使いのアイデンティティプロバイダーのドキュメントを活用します。
- (リダイレクトURLと呼ばれることもある)SAML URLフィールドには、DatabricksページでコピーしたDatabricksのSAML URLを使用します。
- 新たに作成したDatabricksアプリケーションから以下のオブジェクトとフィールドをコピーします:
- x.509証明書: Databricksとアイデンティティプロバイダーの間のコミュニケーションを保護するためにアイデンティティプロバイダーから提供されるデジタル証明書。
- お使いのアイデンティティプロバイダーのシングルサインオン(SSO)URL: これは、お使いのアイデンティティプロバイダーを用いたシングルサインオンを起動するURLです。また、これは時にはSAMLエンドポイントとも呼ばれます。
- アイデンティティプロバイダーのイシュアー: これは、お使いのSAMLアイデンティティプロバイダーに対するユニークなIDです。これは時には、エンティティIDやイシュアーURLとも呼ばれます。
例については、アカウントコンソールSSOアプリケーションの例をご覧ください。
-
お使いのアイデンティティプロバイダーを使用するようにDatabricksアカウントを設定します。
- DatabricksアカウントコンソールのSSOページを表示しているブラウザタブあるいはウィンドウに戻ります。
- アイデンティティプロバイダーアプリケーションから以下のフィールドの値を入力、貼り付けします: シングルサインオンURL、アイデンティティプロバイダーのID、x.509証明書。
- Saveをクリックします。
- SSO設定が適切に動作していることをテストするためにTest SSOをクリックします。
- お使いのアカウントでシングルサインオンを有効化するために、Enable SSOをクリックします。
- SSOを用いてアカウントコンソールログインをテストします。
アカウントサインインのプロセス
統合ログインが有効化され、アカウントレベルのSSOが有効化されると、アカウントのサインインページとワークスペースのサインインページで、シングルサインオンのオプションが表示されるようになります。挙動は以下の通りとなります:
-
管理者を含むすべてのユーザーは、DatabricksアカウントやワークスペースにはSSOを用いてサインインしなくてはなりません。ユーザー名やパスワードを用いてサインインすることはできません。
-
アカウント管理者は、アカウントレベルのREST API呼び出しにユーザー名とパスワードを使用することができます。
-
すべてのユーザーはワークスペースレベルのREST API呼び出しでユーザー名とパスワードを使うことができます。
注意
アカウントが2023/6/21以降に作成されており、ワークスペースのAPIユーザーのユーザー名とパスワードによる認証を制限する必要がある場合には、Databricks担当者にお問い合わせください。
統合ログインが無効化され、アカウントレベルのSSOが有効化されると、アカウントのサインインページでシングルサインオンのオプションが表示されるようになります。デフォルトの挙動は以下の通りです:
- アカウントオーナーを除き、ユーザーを含む全ユーザーは、SSOを用いてDatabricksアカウントにサインインしなくてはなりません。アカウントオーナーはユーザー名とパスワードでサインインすることができます。
- アカウント管理者は、アカウントレベルのREST API呼び出しにユーザー名とパスワードを使用することができます。
統合ログインが無効化されると、ワークスペースレベルのSSOは個別に設定しなくてはなりません。デフォルトのワークスペースサインインプロセスについては、ワークスペースサインインのプロセスをご覧ください。