個人用アクセストークンの監視と取り消し
Databricks REST APIに対して認証するために、ユーザーはパーソナルアクセストークン (PAT) を作成し、それをREST API要求で使用できます。ユーザーは、CI/CDツールや自動化処理でDatabricks REST APIを呼び出すために、サービスプリンシパルを作成し、それを個人用アクセストークンと共に使用することもできます。この記事では Databricks 管理者がワークスペースでパーソナルアクセストークンを管理する方法について説明します。 個人用アクセストークンを作成するには、Databricksパーソナルアクセストークン認証を参照してください。
個人用アクセストークンの代わりに OAuth を使用する
Databricks では OAuth セキュリティと利便性を高めるために、PAT の代わりに アクセストークンを使用することをお勧めします。 Databricks は引き続きPATをサポートしますが、セキュリティリスクが高いため、アカウントの現在のPAT使用状況を監査し、ユーザーとサービスプリンシパルを OAuth アクセストークンに移行することをお勧めします。 OAuthオートメーションのサービスプリンシパルで使用する アクセストークン (PAT ではなく) を作成するには、OAuth (OAuth M2M)を使用してサービスプリンシパルによる Databricks へのアクセスを認証する を参照してください。
Databricks では、次の手順で個人用アクセストークンの露出を最小限に抑えることをお勧めします。
ワークスペースで作成されたすべての新しいトークンの有効期間を短く設定します。 寿命は 90 日未満である必要があります。 デフォルトでは、すべての新しいトークンの最大有効期間は 730 日 (2 年) です。
Databricks ワークスペースの管理者やユーザーと協力して、有効期間を短くしたトークンに切り替えます。
これらの古いトークンが時間の経過とともに悪用されるリスクを減らすために、存続期間の長いトークンをすべて取り消します。 Databricks は、トークンが 90 日以上使用されていない場合、Databricks ワークスペースのすべての PAT を自動的に取り消します。
要件
個人用アクセストークンを管理するには、管理者である必要があります。
Databricks アカウント管理者は、アカウント全体で個人用アクセス トークンを監視および取り消すことができます。
Databricks ワークスペース管理者は、次の操作を実行できます。
ワークスペースの個人用アクセス トークンを無効にします。
トークンを作成して使用できる管理者以外のユーザーを制御します。
新しいトークンの最大有効期間を設定します。
ワークスペース内のトークンを監視および取り消します。
ワークスペースでパーソナルアクセストークンを管理するには、プレミアムプラン以上が必要です。
アカウント内のパーソナルアクセストークンの監視および取り消し
プレビュー
この機能は パブリック プレビュー段階です。 このプレビューに参加するには、Databricks アカウント チームにお問い合わせください。
アカウント 管理者は、アカウント コンソールから個人用アクセス トークンを監視および取り消すことができます。 トークンを監視するクエリは、アカウント管理者がトークンレポートページを使用する場合にのみ実行されます。
このプレビューに参加するには、まず Databricks アカウント チームにお問い合わせください。
アカウント管理者として、アカウントコンソールにログインします。
サイドバーで、 プレビューをクリックします。
トグル を使用して 、アクセストークンレポートを有効にします。
サイドバーで、 設定 と トークンレポートをクリックします。
トークンの所有者、ワークスペース、作成日、有効期限、およびトークンが最後に使用された日付でフィルタリングできます。 レポートの上部にあるボタンを使用して、非アクティブなプリンシパルのアクセストークンまたは有効期限のないアクセストークンをフィルタリングします。
レポートを CSV にエクスポートするには、エクスポート をクリックします。
トークンを取り消すには、トークンを選択して 取り消し をクリックします。
ワークスペースの個人用アクセストークン認証を有効または無効にする
個人用アクセストークン認証は、2018年以降に作成されたすべてのDatabricksワークスペースではデフォルトで有効になっています。この設定は、ワークスペース設定ページで変更できます。
ワークスペースの個人用アクセストークンが無効になっている場合、個人用アクセストークンをDatabricksおよびワークスペースユーザーへの認証に使用することはできず、サービスプリンシパルは新しいトークンを作成できません。ワークスペースの個人用アクセストークン認証を無効にしても、トークンは削除されません。後でトークンを再度有効にすると、有効期限が切れていないトークンは使用できるようになります。
一部のユーザーに対してトークン アクセスを無効にする場合は、ワークスペースに対して個人用アクセス トークン認証を有効にし、ユーザーとグループに対してきめ細かなアクセス許可を設定できます。 個人用アクセストークンを作成および使用できるユーザーの制御を参照してください。
警告
Partner Connect、パートナー統合、およびサービスプリンシパルは、ワークスペースで有効にするために個人用アクセストークンが必要です。
ワークスペースの個人用アクセストークンを作成および使用する機能を無効にするには、次の手順を実行します:
設定ページに移動します。
詳細設定タブをクリックします。
パーソナルアクセストークントグルをクリックします。
確認をクリックします。
この変更が有効になるまで数秒かかる場合があります。
ワークスペース構成APIを使用して、ワークスペースの個人用アクセストークンを無効にすることもできます。
パーソナルアクセストークンを作成および使用できるユーザーを制御する
ワークスペース管理者は、個人のアクセス トークンに権限を設定して、どのユーザー、サービス プリンシパル、およびグループがトークンを作成および使用できるかを制御できます。 個人のアクセストークン権限を構成する方法の詳細については、 個人のアクセストークン権限の管理を参照してください。
新しい個人用アクセストークンの最大有効期間を設定する
デフォルトでは、新しいトークンの最大有効期間は 730 日 (2 年) です。 ワークスペースでトークンの最大有効期間を短く設定するには、Databricks CLI またはワークスペース構成APIを使用します。この制限は、新しいトークンにのみ適用されます。
maxTokenLifetimeDays
を新しいトークンの最大トークン有効期間 (日数) に整数として設定します。例えば:
databricks workspace-conf set-status --json '{
"maxTokenLifetimeDays": "90"
}'
curl -n -X PATCH "https://<databricks-instance>/api/2.0/workspace-conf" \
-d '{
"maxTokenLifetimeDays": "90"
}'
maxTokenLifetimeDays
を 0 に設定すると、最大 730 日 (2 年) の有効期間で新しいトークンを作成できます。
Databricks Terraform プロバイダーを使用してワークスペース内の新しいトークンの最大有効期間を管理するには、ワークスペース リソースを参照してください。
ワークスペース内のトークンの監視と取り消し
このセクションでは、ワークスペース管理者が Databricks CLI を使用してワークスペース内の既存のトークンを管理する方法について説明します。 トークン管理 API を使用することもできます。Databricks は、90 日以上使用されていない個人用アクセス トークンを自動的に取り消します。
ワークスペースのトークンの取得
ワークスペースのトークンを取得するには:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
spark.createDataFrame([token.as_dict() for token in w.token_management.list()]).createOrReplaceTempView('tokens')
display(spark.sql('select * from tokens order by creation_time'))
# Filter results by a user by using the `created-by-id` (to filter by the user ID) or `created-by-username` flags.
databricks token-management list