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

Databricks ODBC ドライバーの認証設定

このページでは、 Databricks ODBC ドライバーの Databricks 認証設定を構成する方法について説明します。

Databricks ODBC ドライバーは、次の Databricks 認証の種類をサポートしています。

OAuth 2.0 トークン

ドライバーODBC 2.7.5 以降では、OAuthDatabricks ユーザーまたはサービスプリンシパルの 2.0 トークンがサポートされています。これは、OAuth 2.0 トークン パススルー 認証とも呼ばれます。

トークン パススルー認証用の OAuth 2.0 トークンを作成するには、次の操作を行います。

OAuth 2.0 トークンのデフォルトの有効期間は 1 時間です。新しいトークンを生成するには、このプロセスを繰り返します。

OAuth 2.0 トークン パススルー認証を使用して認証するには、コンピュート設定と、特別なドライバー機能または高度なドライバー機能設定に次の構成を追加します。

設定

AuthMech

11

Auth_Flow

0

Auth_AccessToken

OAuth 2.0 トークン

Windows 以外のシステム用の DSN を作成するには、次の形式を使用します。

ini
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=0
Auth_AccessToken=<oauth-token>

DSN なしの接続文字列を作成するには、次の形式を使用します。この例では、読みやすくするために改行が含まれています。接続文字列に次の改行を含めないでください。

Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=0;
Auth_AccessToken=<oauth-token>

詳細については、『 Databricks ODBC Driver Guide』のToken Pass-throughセクションを参照してください。

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

ODBC ドライバー 2.8.2 以降では、Databricks ユーザーの OAuth ユーザー間 (U2M) 認証がサポートされています。 これは、OAuth 2.0 ブラウザーベースの 認証とも呼ばれます。

OAuth U2M または OAuth 2.0 ブラウザベースの認証には前提条件はありません。OAuth 2.0 トークンのデフォルトの有効期間は 1 時間です。OAuth U2M または OAuth 2.0 ブラウザベースの認証では、期限切れの OAuth 2.0 トークンが自動的に更新されます。

注記

OAuth U2M または OAuth 2.0 ブラウザベースの認証は、ローカルで実行されるアプリケーションでのみ機能します。サーバーベースまたはクラウドベースのアプリケーションでは動作しません。

OAuth ユーザーツーマシン (U2M) 認証または OAuth 2.0 ブラウザベースの認証を使用して認証するには、コンピュート設定と、特別なドライバー機能または高度なドライバー機能設定に次の構成を追加します。

設定

AuthMech

11

Auth_Flow

2

PWD

選択したパスワード。 ドライバーは、更新トークンの暗号化にこのキーを使用します。

Auth_Client_ID (任意)

databricks-sql-odbc (デフォルト)。利用可能なすべてのアプリケーションについては、アカウント コンソールのアプリ接続設定を参照してください。

Auth_Scope (任意)

sql offline_access (デフォルト)

OAuth2RedirectUrlPort (任意)

8020 (デフォルト)

Windows 以外のシステム用の DSN を作成するには、次の形式を使用します。

ini
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=2
PWD=<password>

DSN なしの接続文字列を作成するには、次の形式を使用します。この例では、読みやすくするために改行が含まれています。接続文字列に次の改行を含めないでください。

Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=2;
PWD=<password>

詳細については、『 Databricks ODBC Driver Guide』のBrowser Basedセクションを参照してください。

OAuth マシン間 (M2M) 認証

ODBC ドライバーはOAuthDatabricks サービスプリンシパルの マシン間 (M2M) 認証をサポートしています。これは、OAuth 2.0 クライアント資格情報 認証とも呼ばれます。

OAuth M2M または OAuth 2.0 クライアント資格情報認証を構成するには、次の手順を実行します。

  1. DatabricksワークスペースにDatabricks サービスプリンシパルを作成し、そのサービスプリンシパルのOAuthシークレットを作成します。

    サービスプリンシパルとそのOAuthシークレットを作成するには、「サービスプリンシパルのアクセスをOAuthでDatabricksに許可する」を参照してください。サービスプリンシパルの UUID または アプリケーション ID の値と、サービスプリンシパルのOAuthシークレットの Secret 値をメモします。

  2. サービスプリンシパルにクラスターまたはウェアハウスへのアクセス権を付与します。 「コンピュートの権限」または「SQLウェアハウスの管理」を参照してください。

OAuth マシン間 (M2M) 認証または OAuth 2.0 クライアント資格情報認証を使用して認証するには、コンピュート設定と、特殊または高度なドライバー機能設定に次の構成を追加します。

設定

AuthMech

11

Auth_Flow

1

Auth_Client_ID

サービスプリンシパルの UUID / Application ID 値。

Auth_Client_Secret

サービスプリンシパルの OAuth Secret 値。

Auth_Scope (任意)

all-apis (デフォルト)

Windows 以外のシステム用の DSN を作成するには、次の形式を使用します。

ini
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=1
Auth_Client_ID=<service-principal-application-ID>
Auth_Client_Secret=<service-principal-secret>
Auth_Scope=all-apis

DSN なしの接続文字列を作成するには、次の形式を使用します。この例では、読みやすくするために改行が含まれています。接続文字列に次の改行を含めないでください。

Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=1;
Auth_Client_ID=<service-principal-application-ID>;
Auth_Client_Secret=<service-principal-secret>;
Auth_Scope=all-apis

詳細については、『 Databricks ODBC Driver Guide』のClient Credentialsセクションを参照してください。

Databricksパーソナルアクセストークン (レガシー)

Databricksの個人アクセス ノートを作成するには、 「ワークスペース ユーザー向けの個人アクセス ノートを作成する」のステップに従います。

Databricks 個人用アクセス トークンを使用して認証するには、コンピュート設定と、特別なドライバー機能または高度なドライバー機能設定に次の構成を追加します。

設定

AuthMech

3

UID

token

PWD

ワークスペース ユーザーの Databricks 個人用アクセス トークン

Windows 以外のシステム用の DSN を作成するには、次の形式を使用します。

ini
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=3
UID=token
PWD=<personal-access-token>

DSN なしの接続文字列を作成するには、次の形式を使用します。この例では、読みやすくするために改行が含まれています。接続文字列に次の改行を含めないでください。

Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=3;
UID=token;
PWD=<personal-access-token>