サービス資格情報の管理
重要
この機能はパブリック プレビュー段階にあります。
この記事では、サービス資格情報の一覧表示、表示、更新、アクセス許可の付与、削除を行う方法について説明します。これは、外部クラウド サービスへのアクセスを制御できる Unity カタログセキュリティ保護可能なオブジェクトです。
関連項目:
- 概要と、サービス資格情報を作成する方法については、 サービス資格情報を使用した外部クラウド サービスへのアクセスの管理
- コードでサービス資格情報を参照し、コンピューティング リソースの既定のサービス資格情報を指定する方法については、「 Unity Catalog サービス資格情報を使用して外部クラウド サービスに接続する。
開始する前に
この記事で説明するタスクを実行するには、次の要件を満たす必要があります。
- Unity Catalog で有効になっている Azure Databricks ワークスペース。
- サービス資格情報を一覧表示または表示するには、次のいずれかの特権またはロールが必要です。
BROWSE
親カタログに対する特権CREATE SERVICE CREDENTIAL
メタストア上ACCESS
サービス資格情報- サービス資格情報の所有者
- メタストア管理者
- この記事に記載されているその他のタスクを実行するには、サービス資格情報の所有者またはメタストア管理者である必要があります。
- SQL コマンドを使用してサービス資格情報の一覧表示、表示、または更新を行う場合は、Databricks Runtime 15.4 LTS 以降でコンピューティングが必要です。 カタログ エクスプローラーまたは REST API を使用する場合、Databricks ランタイムのバージョン要件はありません。
サービス資格情報を一覧表示する
メタストア内のすべてのサービス資格情報の一覧を表示するには、カタログ エクスプローラーまたは SQL コマンドを使用します。
カタログ エクスプローラー
- サイド バーで、 [カタログ] をクリックします。
- [ Quick アクセス ] ページで、[ External data > ] ボタンをクリックし、[ Credentials ] タブに移動します。
- 資格情報を Purpose (STORAGE または SERVICE) で並べ替えます。
SQL
ノートブックで次のコマンドを実行します。
SHOW SERVICE CREDENTIALS;
サービス資格情報を表示する
サービス資格情報のプロパティを表示するには、カタログ エクスプローラーまたは SQL コマンドを使用します。
カタログ エクスプローラー
- サイド バーで、 [カタログ] をクリックします。
- [ Quick アクセス ] ページで、[ External data > ] ボタンをクリックし、[ Credentials ] タブに移動します。
- サービス資格情報の名前をクリックすると、そのプロパティが表示されます。
SQL
ノートブックで次のコマンドを実行します。 <credential-name>
を資格情報の名前で置き換えます。
DESCRIBE SERVICE CREDENTIAL <credential-name>;
サービス資格情報に付与を表示する
サービス資格情報に許可を表示するには、次のようなコマンドを使用します。 必要に応じて結果をフィルター処理して、指定したプリンシパルの許可のみを表示することもできます。
SHOW GRANTS [<principal>] ON SERVICE CREDENTIAL <service-credential-name>;
プレースホルダー値を次のように置き換えます。
<principal>
: アカウント レベルのユーザーの電子メール アドレス、またはアクセス許可が付与されたアカウント レベル グループの名前。<service-credential-name>
: サービス資格情報の名前。
Note
グループまたはユーザー名にスペースまたは @
記号が含まれている場合は、その周囲にバックティックを使用します (アポストロフィではありません)。 たとえば、
チーム
。
サービス資格情報を使用して外部クラウド サービスにアクセスするためのアクセス許可を付与する
サービス資格情報を使用して外部クラウド サービスにアクセスするためのアクセス許可を付与するには、次の手順を実行します。 カタログ エクスプローラーまたは SQL コマンドを使用できます。
カタログ エクスプローラー
- サイド バーで、 [カタログ] をクリックします。
- [ Quick アクセス ] ページで、[ External data > ] ボタンをクリックし、[ Credentials ] タブに移動します。
- サービス資格情報の名前をクリックして、詳細ページを開きます。
- [アクセス許可] をクリックします。
- ユーザーまたはグループにアクセス許可を付与するには、各 ID を選択し、[許可] をクリックします。
- ACCESS を選択して、サービス資格情報を使用して外部クラウド サービスまたはサービスにアクセスする権限を付与します。
- CREATE CONNECTIONを選択して、このサービス資格情報を使用して Unity カタログで Lakehouse フェデレーション接続を作成する権限を付与します。 「 レイクハウスフェデレーションの管理接続」を参照してください。
- ユーザーまたはグループからアクセス許可を取り消すには、それぞれの ID を選択して、[取り消し] をクリックします。
SQL
アクセス権を付与するには、ノートブックで次のいずれかのコマンドを実行し、プレースホルダーの値を置き換えます。
<principal>
: アカウント レベルのユーザーのメール アドレス、またはアクセス許可を付与するアカウント レベルのグループの名前。<service-credential-name>
: サービス資格情報の名前。
Note
グループまたはユーザー名にスペース、ダッシュ (-
)、または @
記号が含まれている場合は、その周囲にバックティックを使用します (アポストロフィではありません)。 たとえば、`finance team`.
のように指定します。
GRANT ACCESS ON SERVICE CREDENTIAL <service-credential-name> TO <principal>;
このサービス資格情報を使用して Unity カタログで Lakehouse フェデレーション接続 作成する権限を付与する場合は、次のコマンドを使用します。
GRANT CREATE CONNECTION ON SERVICE CREDENTIAL <service-credential-name> TO <principal>;
アクセスを取り消すには、 GRANT
を次の例の REVOKE
に置き換えます。
サービス資格情報の所有者を変更する
サービス資格情報の作成者は、最初の所有者です。 所有者を別のアカウント レベルのユーザーまたはグループに変更するには、カタログ エクスプローラーまたは SQL コマンドを使用できます。
カタログ エクスプローラー
- サイド バーで、 [カタログ] をクリックします。
- [ Quick アクセス ] ページで、[ External data > ] ボタンをクリックし、[ Credentials ] タブに移動します。
- サービス資格情報の名前をクリックして、編集ダイアログを開きます。
- Owner の横にある [] をクリックします。
- 入力してプリンシパルを検索し、それを選択します。
- [保存] をクリックします。
SQL
ノートブックで次のコマンドを実行します。 プレースホルダー値を次のように置き換えます。
<credential-name>
: 資格情報の名前。<principal>
: アカウント レベルのユーザーのメール アドレス、またはアカウント レベルのグループの名前。
ALTER SERVICE CREDENTIAL <credential-name> OWNER TO <principal>;
サービス資格情報の名前を変更する
サービス資格情報の名前を変更するには、カタログ エクスプローラーまたは SQL コマンドを使用します。
カタログ エクスプローラー
- サイド バーで、 [カタログ] をクリックします。
- [ Quick アクセス ] ページで、[ External data > ] ボタンをクリックし、[ Credentials ] タブに移動します。
- サービス資格情報の名前をクリックして、編集ダイアログを開きます。
- サービス資格情報の名前を変更して保存します。
SQL
ノートブックで次のコマンドを実行します。 プレースホルダー値を次のように置き換えます。
<credential-name>
: 資格情報の名前。<new-credential-name>
: 資格情報の新しい名前。
ALTER SERVICE CREDENTIAL <credential-name> RENAME TO <new-credential-name>;
サービス資格情報を削除する
サービス資格情報を削除 (削除) するには、その所有者である必要があります。 サービス資格情報を削除するには、カタログ エクスプローラーまたは SQL コマンドを使用します。
カタログ エクスプローラー
- サイド バーで、 [カタログ] をクリックします。
- [ Quick アクセス ] ページで、[ External data > ] ボタンをクリックし、[ Credentials ] タブに移動します。
- サービス資格情報の名前をクリックして、編集ダイアログを開きます。
- [削除] ボタンをクリックします。
SQL
ノートブックで次のコマンドを実行します。 <credential-name>
を資格情報の名前で置き換えます。 角かっこ内にあるコマンドの部分は省略可能です。
資格情報が存在しない場合、IF EXISTS
ではエラーを返しません。
DROP SERVICE CREDENTIAL [IF EXISTS] <credential-name>;