Databricks ODBC ドライバーの認証設定
この記事では、 Databricks ODBC ドライバーの Databricks 認証設定を構成する方法について説明します。
Databricks ODBC ドライバーは、次の Databricks 認証の種類をサポートしています。
Databricks のユーザー名とパスワードを使用した基本認証は、2024 年 7 月 10 日にサポートが終了しました。 「Databricks で管理されるパスワードのサポート終了」を参照してください。
Databricks 個人用アクセス トークン
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 以降では、OAuthDatabricks ユーザーまたはサービスプリンシパルの 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 サービスプリンシパル認証用のアクセス トークンを手動で生成して使用する」の手順 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 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 ブラウザベースの認証を使用して認証するには、コンピュート設定と、特別なドライバー機能または高度なドライバー機能設定に次の構成を追加します。
設定 | 値 |
---|---|
| 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 Driver Guide』のBrowser Based
セクションを参照してください。
OAuth マシン間 (M2M) 認証
ODBC ドライバーはOAuthDatabricks サービスプリンシパルの マシン間 (M2M) 認証をサポートしています。これは、OAuth 2.0 クライアント資格情報 認証とも呼ばれます。
OAuth M2M または OAuth 2.0 クライアント資格情報認証を構成するには、次の手順を実行します。
-
DatabricksワークスペースにDatabricks サービスプリンシパルを作成し、そのサービスプリンシパルのOAuthシークレットを作成します。
サービスプリンシパルとそのOAuth シークレットを作成するには、「Databricksを使用してサービスプリンシパルを使用して リソースへの無人アクセスを承認OAuth する」を参照してください。サービスプリンシパルの UUID または Application ID の値と、サービスプリンシパルの シークレットの Secret OAuth 値をメモします。
-
サービスプリンシパルにクラスターまたはウェアハウスへのアクセス権を付与します。 「コンピュートの権限」または「SQLウェアハウスの管理」を参照してください。
OAuth マシン間 (M2M) 認証または OAuth 2.0 クライアント資格情報認証を使用して認証するには、コンピュート設定と、特殊または高度なドライバー機能設定に次の構成を追加します。
設定 | 値 |
---|---|
| 11 |
| 1 |
| サービスプリンシパルの UUID / Application ID 値。 |
| サービスプリンシパルの OAuth Secret 値。 |
|
|
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 Driver Guide』のClient Credentials
セクションを参照してください。