メインコンテンツまでスキップ

Databricks CLI の認証

注記

この情報は、Databricks CLI バージョン 0.205 以降に適用されます。 Databricks CLI は パブリック プレビュー段階です。

Databricks CLI 使用には、 Databricks ライセンス および Databricks プライバシー通知(使用データのプロビジョニングを含む)が適用されます。

この記事では、Databricks CLI と Databricks アカウントおよびワークスペースの間で認証を設定する方法について説明します。Databricks CLI が既にインストールされていることを前提としています。「 Databricks CLI のインストールまたは更新」を参照してください。

Databricks CLI コマンドを実行する前に、使用する予定のアカウントまたはワークスペースの 認証 を構成する必要があります。必要な設定は、 ワークスペースレベルの コマンド、 アカウントレベルの コマンド、またはその両方を実行するかどうかによって異なります。

使用可能な CLI コマンドグループを表示するには、 databricks -hを実行します。対応する REST API 操作の一覧については、「 Databricks REST API」を参照してください。

OAuth マシン間 (M2M) 認証

OAuth を使用したマシン間 (M2M) 認証により、サービス、スクリプト、またはアプリケーションは、対話型のユーザー サインインなしで Databricks リソースにアクセスできます。M2M 認証では、個人アクセストークン (PAT) やユーザー資格情報に依存する代わりに、サービスプリンシパルと OAuth クライアント資格情報フローを使用してトークンを要求および管理します。

OAuth M2M 認証を構成して使用するには:

  1. OAuth M2M 認証の設定手順を完了します。「サービスプリンシパルのDatabricksへのアクセスをOAuthで認証する」を参照してください。

  2. .databrickscfg ファイルに次のフィールドを使用して Databricks 構成プロファイルを作成します。

    アカウントレベルのコマンドの場合

    [<some-unique-configuration-profile-name>]
    host = <account-console-url>
    account_id = <account-id>
    client_id = <service-principal-client-id>
    client_secret = <service-principal-oauth-secret>

    ワークスペースレベルのコマンドの場合

    [<some-unique-configuration-profile-name>]
    host = <workspace-url>
    client_id = <service-principal-client-id>
    client_secret = <service-principal-oauth-secret>

プロファイルを使用するには、CLI コマンドで --profile または -p フラグを付けて渡します。例えば:

Bash
databricks account groups list -p <profile-name>

--profileまたは-pの後にタブを押すと、使用可能なプロファイルのリストが表示されます。

OAuth ユーザー間 (U2M) 認証

OAuth ユーザー間 (U2M) 認証では、対話的にログインすると、CLI がユーザーに代わって有効期間の短いトークンを管理します。OAuth トークン 有効期限は 1 時間以内に終了するため、トークンが誤って公開された場合のリスクが軽減されます。 「 OAuth を使用して Databricks へのユーザー アクセスを承認する」を参照してください。

ログインするには:

アカウントレベルのコマンドの場合

Bash
databricks auth login --host <account-console-url> --account-id <account-id>

ワークスペースレベルのコマンドの場合

Bash
databricks auth login --host <workspace-url>

CLI は、ブラウザベースのログインフローをガイドします。完了すると、CLI は資格情報を 構成プロファイルとして保存します。提案されたプロファイル名を受け入れるか、独自のプロファイル名を入力できます。

プロファイルを使用するには、CLI コマンドで --profile または -p フラグを付けて渡します。例えば:

Bash
databricks clusters list -p <profile-name>

--profileまたは-pの後にタブを押すと、使用可能なプロファイルのリストが表示されます。

Google Cloud の認証情報認証

Google Cloud 認証情報 認証 Google Cloud サービス アカウントの認証情報を使用して、対象の Google Cloud サービス アカウントを認証します。 Google Cloud 認証情報認証も参照してください。

Google Cloud 資格情報認証を構成するには、 Google Cloud ID 認証 がローカルにインストールされている必要があります。 また、次の操作も行う必要があります。

  1. Databricks 構成プロファイル を作成または識別し、 .databrickscfg ファイルに次のフィールドを含めます。 プロファイルを作成する場合は、プレースホルダを適切な値に置き換えます。

    アカウントレベルのコマンドの場合は、.databrickscfg ファイルで次の値を設定します。

    [<some-unique-configuration-profile-name>]
    host = <account-console-url>
    account_id = <account-id>
    google_credentials = <path-to-google-service-account-credentials-file>

    ワークスペース レベルのコマンドの場合は、.databrickscfg ファイルに次の値を設定します。

    [<some-unique-configuration-profile-name>]
    host = <workspace-url>
    google_credentials = <path-to-google-service-account-credentials-file>
  2. Databricks CLIの [--profile] または [-p] オプションに続けて、Databricks CLI コマンド呼び出しの一部として設定プロファイルの名前 (databricks account groups list -p <configuration-profile-name>databricks clusters list -p <configuration-profile-name>など) を使用します。

ヒント

構成プロファイル名を手動で入力する代わりに、--profileまたは-pの後にTabを押すと、選択可能な既存の構成プロファイルのリストが表示されます。

Google Cloud ID 認証

Google Cloud ID 認証は、対象の Google Cloud サービス アカウントを認証します。 Google Cloud ID 認証をご覧ください。

Google Cloud ID 認証を設定するには、 Google Cloud ID 認証 をローカルにインストールする必要があります。 また、次の操作も行う必要があります。

  1. Databricks 構成プロファイル を作成または識別し、 .databrickscfg ファイルに次のフィールドを含めます。 プロファイルを作成する場合は、プレースホルダを適切な値に置き換えます。

    アカウントレベルのコマンドの場合は、.databrickscfg ファイルで次の値を設定します。

    [<some-unique-configuration-profile-name>]
    host = <account-console-url>
    account_id = <account-id>
    google_service_account = <google-cloud-service-account-email-address>

    ワークスペース レベルのコマンドの場合は、.databrickscfg ファイルに次の値を設定します。

    [<some-unique-configuration-profile-name>]
    host = <workspace-url>
    google_service_account = <google-cloud-service-account-email-address>
  2. Databricks CLI の --profile または -p オプションの後に構成プロファイルの名前を Databricks CLI コマンド呼び出しの一部として使用します (例: databricks clusters list -p <configuration-profile-name>.

ヒント

構成プロファイル名を手動で入力する代わりに、--profileまたは-pの後にTabを押すと、選択可能な既存の構成プロファイルのリストが表示されます。

認証と評価の順序

Databricks CLI は、Databricks ワークスペースまたはアカウントに対して認証されるたびに、次の順序で必要な設定を探します。

  1. バンドル作業ディレクトリから実行されるコマンドのバンド ル設定ファイル 。バンドル設定ファイルに資格情報値を直接含めることはできません。
  2. 環境変数 、この記事と、 統合クライアント認証の環境変数とフィールドに記載されています。
  3. .databrickscfg ファイル内の 構成プロファイル

CLI は、必要な設定を見つけるとすぐに、他の場所の検索を停止します。

例:

  • DATABRICKS_TOKEN環境変数が設定されている場合、複数のトークンが .databrickscfgに存在する場合でも、CLI はそれを使用します。
  • DATABRICKS_TOKENが設定されておらず、バンドル環境が dev → プロファイル DEVなどのプロファイル名を参照する場合、CLI は .databrickscfgのそのプロファイルの資格情報を使用します。
  • DATABRICKS_TOKENが設定されておらず、バンドル環境でhost値が指定されている場合、CLI は一致するhostを持つプロファイルを.databrickscfgで検索し、そのtokenを使用します。

個人用アクセス トークン認証 (非推奨)

important

Databricks ユーザー名とパスワードを使用した基本認証は、2024 年 7 月 10 日にサポート終了に達しました。Databricks アカウントで認証するには、代わりに次のいずれかの認証方法を使用します。

Databricks personal access トークン認証では、Databricks personal access トークンを使用して、Databricks ユーザー アカウントやDatabricks サービスプリンシパルなどのターゲット Databricks エンティティを認証します。「 Databricks 個人用アクセス トークン認証」を参照してください。

個人用アクセス トークンを作成するには、ワークスペース ユーザー向けのDatabricks個人用アクセス トークンの手順に従います。