Databricks ODBC ドライバーの認証設定
この記事では、 Databricks ODBC ドライバーの Databricks 認証設定を構成する方法について説明します。
Databricks ODBC ドライバーでは、次の Databricks 認証の種類がサポートされています。
注:
Databricks のユーザー名とパスワードを使用した基本認証は、2024 年 7 月 10 日にサポートが終了しました。 Databricks 管理パスワードのサポート終了を参照してください。
Databricks personal アクセストークン
Databricks個人用アクセストークンを作成するには、「ワークスペース ユーザー向けの個人用アクセストークンDatabricks」の手順に従います。
Databricks 個人用アクセス トークンを使用して認証するには、 コンピュート 設定と、特別な ドライバー機能または高度なドライバー機能設定に次の構成を追加します。
設定 |
値 |
---|---|
|
3 |
|
|
|
ワークスペースユーザーのDatabricks個人アクセストークン |
Windows 以外のシステム用の DSN を作成するには、次の形式を使用します。
[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>
<path-to-driver>
の値を取得するには、「Databricks ODBC ドライバーのダウンロードとインストール」を参照してください。<server-hostname>
と<http-path>
の値を取得するには、「Databricks ODBC ドライバーのコンピュート設定」を参照してください。また、特別なドライバー機能や高度な ドライバー機能の設定を追加することもできます。
OAuth 2.0 トークン
ODBC ドライバー 2.7.5 以降では、Databricks ユーザーまたはサービスプリンシパルの OAuth 2.0 トークンがサポートされています。 これは、OAuth 2.0 トークン パススルー 認証とも呼ばれます。
トークン・パススルー認証用の OAuth 2.0 トークンを作成するには、以下の操作を行います。
ユーザーの場合、 Databricks CLI を使用して OAuth U2M プロセスを開始して OAuth 2.0 トークンを生成し、
databricks auth token
コマンドを実行して生成された OAuth 2.0 トークンを取得できます。 OAuthユーザーからマシン(U2M)への認証を参照してください。OAuth 2.0 トークンのデフォルトの有効期間は 1 時間です。 新しい OAuth 2.0 トークンを生成するには、このプロセスを繰り返します。サービス プリンシパルの場合は、 「 OAuth M2M 認証用にアクセストークンを手動で生成して使用する」の手順 1 ~ 3 に従います。 サービスプリンシパルのOAuth
access_token
値をメモします。 OAuth 2.0 トークンのデフォルトの有効期間は 1 時間です。 新しい OAuth 2.0 トークンを生成するには、このプロセスを繰り返します。
OAuth 2.0 トークン パススルー認証を使用して認証するには、 コンピュート設定 と、特別な ドライバー機能または高度なドライバー機能の設定に次の構成を追加します。
設定 |
値 |
---|---|
|
11 |
|
0 |
|
OAuth 2.0 トークン |
Windows 以外のシステム用の DSN を作成するには、次の形式を使用します。
[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>
<path-to-driver>
の値を取得するには、「Databricks ODBC ドライバーのダウンロードとインストール」を参照してください。<server-hostname>
と<http-path>
の値を取得するには、「Databricks ODBC ドライバーのコンピュート設定」を参照してください。また、特別なドライバー機能や高度な ドライバー機能の設定を追加することもできます。
詳細については、「Databricks ODBC ドライバー ガイド」の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 user-to-machine (U2M) または OAuth 2.0 ブラウザーベースの認証を使用して認証するには、 コンピュート 設定と、特殊または高度な ドライバー機能設定に次の構成を追加します。
設定 |
値 |
---|---|
|
11 |
|
2 |
|
任意のパスワード。 ドライバーは、更新トークンの暗号化にこのキーを使用します。 |
|
|
|
|
|
|
Windows 以外のシステム用の DSN を作成するには、次の形式を使用します。
[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>
<path-to-driver>
の値を取得するには、「Databricks ODBC ドライバーのダウンロードとインストール」を参照してください。<server-hostname>
と<http-path>
の値を取得するには、「Databricks ODBC ドライバーのコンピュート設定」を参照してください。また、特別なドライバー機能や高度な ドライバー機能の設定を追加することもできます。
詳細については、「Databricks ODBC ドライバー ガイド」のBrowser Based
セクションを参照してください。
OAuthマシン間(M2M)認証
ODBCOAuthドライバーは、Databricks プリンシパルの マシン間 (M2M) 認証をサポートします。これは、OAuth 2.0クライアント資格情報認証とも呼ばれます。
OAuth M2M または OAuth 2.0 クライアント資格情報認証を構成するには、次の手順を実行します。
Databricks ワークスペースに Databricks サービスプリンシパルを作成し、そのサービスプリンシパルの OAuth シークレットを作成します。
サービスプリンシパルとそのOAuth シークレットを作成するには、「 Databricksを使用してサービスプリンシパルで へのアクセスを認証するOAuth (OAuth M2M)」 を参照してください。サービスプリンシパルの UUID または Application ID の値と、サービスプリンシパルの シークレットの SecretOAuth 値をメモします。
サービスプリンシパルにクラスターまたはウェアハウスへのアクセスを許可します。 「コンピュート権限」または「SQL ウェアハウスの管理」を参照してください。
OAuth マシン間 (M2M) または OAuth 2.0 クライアント資格情報認証を使用して認証するには、 コンピュート 設定と、特殊または高度な ドライバー機能設定に次の構成を追加します。
設定 |
値 |
---|---|
|
11 |
|
1 |
|
サービスプリンシパルの UUID/アプリケーション ID 値。 |
|
サービスプリンシパルのOAuthシークレット値。 |
|
|
Windows 以外のシステム用の DSN を作成するには、次の形式を使用します。
[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
<path-to-driver>
の値を取得するには、「Databricks ODBC ドライバーのダウンロードとインストール」を参照してください。<server-hostname>
と<http-path>
の値を取得するには、「Databricks ODBC ドライバーのコンピュート設定」を参照してください。また、特別なドライバー機能や高度な ドライバー機能の設定を追加することもできます。
詳細については、「Databricks ODBC ドライバー ガイド」のClient Credentials
セクションを参照してください。