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