Databricks アセットバンドルの認証

この記事では、 Databricks アセット バンドルの認証を構成する方法について説明します。 「 Databricks アセット バンドルとは」を参照してください。

You deploy and run Databricks Asset Bundles within the context of two types of authentication scenarios: attended and unattended:

  • 有人認証のシナリオは手動のワークフローであり、たとえば、Databricks CLI によってプロンプトが表示されたときに、ローカル コンピューター上の Web ブラウザーを使用してターゲットの Databricks ワークスペースにログインします。

  • 無人認証シナリオは、GitHub などの CI/CD システムを使用する場合など、自動化された CI/CD ワークフローです。

次のセクションでは、これら 2 種類の認証シナリオに基づいて、Databricks アセット バンドルに使用する Databricks 認証の種類と設定を推奨します。

在席認証

For attended authentication scenarios with Databricks Asset Bundles, Databricks recommends that you use OAuth user-to-machine (U2M) authentication for your Databricks user account in the target workspace.

You can also use a personal access token associated with your Databricks user account for the target workspace.

これらの Databricks 認証タイプの詳細については、「 Databricks 認証タイプ」を参照してください。

For storing authentication settings for attended authentication scenarios, Databricks recommends that you use Databricks configuration profiles on your local development machine. Configuration profiles enable you to quickly switch among different Databricks authentication contexts to do rapid local development among multiple Databricks workspaces. With profiles, you can use the --profile or -p options to specify a particular profile when running the bundle validate, deploy, run, and destroy commands with the Databricks CLI. See Databricks configuration profiles.

Databricks also supports the use of the profile mapping within the workspace mapping to specify the profile to use for each target workspace in your bundle configuration files. However, hard-coded mappings make your bundle configuration files less reusable across projects.

無人認証

Databricks アセット バンドルを使用した無人認証シナリオでは、Databricks では、次の Databricks 認証の種類を次の優先順位で使用することをお勧めします。

これらの Databricks 認証タイプの詳細については、「 Databricks 認証タイプ」を参照してください。

For unattended authentication scenarios, Databricks recommends using environment variables to store Databricks authentication settings in your target CI/CD system, because CI/CD systems are typically optimized for this.

For Databricks Asset Bundles projects used in CI/CD systems designed to work with multiple Databricks workspaces (for example, three separate but related development, staging, and production workspaces), Databricks recommends that you use service principals for authentication and that you give one service principal access to all participating workspaces. This enables you to use the same environment variables across all of the project’s workspaces.

Databricks also supports the use of hard-coded, authentication-related settings in the workspace mapping for target workspaces in your bundle configuration files. Hard-coded settings make your bundles configuration less reusable across projects and risk unnecessarily exposing sensitive information such as Databricks service principal IDs.

無人認証のシナリオでは、次のように、関連付けられているコンピュート リソースに Databricks CLI をインストールする必要もあります。

OAuthマシン間(M2M)認証

OAuth M2M 認証を設定するには、「サービスプリンシパルを使用して Databricks (OAuth M2M) で認証する」を参照してください。

無人認証に設定する環境変数の一覧は、 サービスプリンシパルを使用して Databricks ( M2MOAuth ) で認証するの「環境」セクションのワークスペース レベルの操作範囲にあります。 環境変数を設定するには、オペレーティング システムまたは CI/CD システム プロバイダーのドキュメントを参照してください。

OAuthユーザー対マシン(U2M)認証

OAuth U2M 認証を設定するには、「 OAuth ユーザー対マシン (U2M) 認証」の「CLI」セクションを参照してください。

有人認証のシナリオでは、「 OAuth ユーザー対マシン (U2M) 認証 」の「CLI」セクションの手順を完了すると、Databricks 構成プロファイルが自動的に作成されます。

Google クラウド ID 認証

Google クラウド ID 認証を設定するには、「 Google クラウド ID 認証」を参照してください。

無人認証に設定する環境変数の一覧は、 Google クラウド ID 認証の「環境」セクションのワークスペース レベルの操作範囲にあります。 環境変数を設定するには、オペレーティングシステムまたは CI/CD システム プロバイダーのドキュメントを参照してください。

Databricks個人用アクセストークン認証

Databricks 個人用アクセストークンを作成するには、「 Databricks 個人用アクセストークン認証」を参照してください。

有人認証のシナリオでは、Databricks 構成プロファイルを作成するには、「 Databricks 個人用アクセストークン認証」の「CLI」セクションを参照してください。

無人認証に設定する環境変数の一覧は、 Databricks 個人用アクセストークン認証の "環境" セクションのワークスペース レベルの操作カバレッジにあります。 環境変数を設定するには、オペレーティングシステムまたは CI/CD システム プロバイダーのドキュメントを参照してください。