ストレージ資格情報の管理

この記事では、 ストレージ資格情報の一覧表示、表示、更新、アクセス許可の付与、および削除する方法について説明します。

Databricks では、ストレージ資格情報に対してはCREATE EXTERNAL LOCATIONのみを付与し、他の権限は付与しないことをお勧めします。

この記事では、ノートブックまたはDatabricks SQLクエリーでカタログエクスプローラーとSQLコマンドを使用してストレージ資格情報を管理する方法について説明します。 代わりに Databricks CLI または Terraform を使用する方法については、 Databricks Terraform のドキュメントDatabricks CLI とはを参照してください。

ストレージ資格情報のリスト

メタストア内のすべてのストレージ資格情報のリストを表示するには、カタログ エクスプローラーまたは SQL コマンドを使用できます。

  1. サイドバーで [カタログ アイコン カタログ ] をクリックします 。

  2. 画面下部の [ 外部データ>ストレージ資格情報] をクリックします。

ノートブックまたはDatabricks SQLエディタで次のコマンドを実行します。

SHOW STORAGE CREDENTIALS;

ストレージ資格情報の表示

ストレージ資格情報のプロパティを表示するには、「カタログ・エクスプローラ」または SQL コマンドを使用できます。

  1. サイドバーで [カタログ アイコン カタログ ] をクリックします 。

  2. 画面下部の [ 外部データ>ストレージ資格情報] をクリックします。

  3. ストレージ資格情報の名前をクリックすると、そのプロパティが表示されます。

ノートブックまたは Databricks SQL エディターで次のコマンドを実行します。 <credential-name> を資格情報の名前に置き換えます。

DESCRIBE STORAGE CREDENTIAL <credential-name>;

ストレージ資格情報の付与を表示する

ストレージ資格情報の許可を表示するには、次のようなコマンドを使用します。オプションで、結果をフィルタリングし、指定したプリンシパルの許可のみを表示できます。

SHOW GRANTS [<principal>] ON STORAGE CREDENTIAL <storage-credential-name>;

プレースホルダーの値を置き換えます。

  • <principal>:アカウントレベルのユーザーのメールアドレス、またはアクセス許可を付与するアカウントレベルのグループの名前。

  • <storage-credential-name>:ストレージ資格情報の名前。

手記

グループ名にスペースが含まれている場合は、(アポストロフィではなく)バックティックで囲みます。

外部ロケーションを作成する権限を付与する

ストレージ資格情報を使用して外部ロケーションを作成する権限を付与するには、以下のステップを実行します。

  1. サイドバーで [カタログ アイコン カタログ ] をクリックします 。

  2. 画面下部の [ 外部データ>ストレージ資格情報] をクリックします。

  3. ストレージ資格情報の名前をクリックして、そのプロパティを開きます。

  4. [ アクセス許可] をクリックします。

  5. ユーザーまたはグループにアクセス許可を付与するには、各 ID を選択し、[ 付与] をクリックします。

  6. ユーザーまたはグループから権限を取り消すには、各 ID を選択し、[ 取り消し] をクリックします。

ノートブックまたは SQL クエリーエディターで次のコマンドを実行します。

GRANT CREATE EXTERNAL LOCATION ON STORAGE CREDENTIAL <storage-credential-name> TO <principal>;

プレースホルダーの値を置き換えます。

  • <principal>:アカウントレベルのユーザーのメールアドレス、またはアクセス許可を付与するアカウントレベルのグループの名前。

  • <storage-credential-name>:ストレージ資格情報の名前。

手記

グループ名にスペースが含まれている場合は、(アポストロフィではなく)バックティックで囲みます。

ストレージ資格情報の所有者を変更する

ストレージ資格情報の作成者は、その初期所有者です。所有者を別のアカウントレベルのユーザーまたはグループに変更するには、次の手順を実行します。

ノートブックまたはDatabricks SQLエディタで次のコマンドを実行します。プレースホルダーの値を置き換えます。

  • <credential-name>:資格情報の名前。

  • <principal>:アカウントレベルのユーザーのメールアドレスまたはアカウントレベルのグループの名前。

ALTER STORAGE CREDENTIAL <credential-name> OWNER TO <principal>;

ストレージ資格情報を読み取り専用としてマークする

ストレージ資格情報によって管理されるすべてのデータへの読み取り専用アクセス権をユーザーに付与する場合は、「カタログエクスプローラ」を使用してストレージ資格情報を読み取り専用としてマークできます。

ストレージ資格情報を読み取り専用にすると、その資格情報で構成されたストレージはすべて読み取り専用になります。

ストレージ資格情報は、作成時に読み取り専用としてマークできます。

また、「カタログエクスプローラ」(Catalog Explorer) を使用して、ストレージ資格証明の作成後に読み取り専用ステータスを変更することもできます。

  1. カタログエクスプローラで、ストレージ認証情報を検索し、オブジェクト行のケバブメニュー(3ドットメニューとも呼ばれる)をクリックして ケバブメニュー 、[ 編集]を選択します。

  2. 編集ダイアログで、[ 読み取り専用 ]オプションを選択します。

ストレージ資格情報の名前の変更

ストレージ資格情報の名前を変更するには、「カタログエクスプローラ」(Catalog Explorer) または SQL コマンドを使用できます。

  1. サイドバーで [カタログ アイコン カタログ ] をクリックします 。

  2. 画面下部の [ 外部データ>ストレージ資格情報] をクリックします。

  3. ストレージ資格情報の名前をクリックして、編集ダイアログを開きます。

  4. ストレージ資格情報の名前を変更して保存します。

ノートブックまたはDatabricks SQLエディタで次のコマンドを実行します。プレースホルダーの値を置き換えます。

  • <credential-name>:資格情報の名前。

  • <new-credential-name>:資格情報の新しい名前。

ALTER STORAGE CREDENTIAL <credential-name> RENAME TO <new-credential-name>;

ストレージ資格情報を削除する

ストレージ資格情報を削除 (ドロップ) するには、その所有者である必要があります。 ストレージ資格情報を削除するには、カタログ・エクスプローラーまたは SQL コマンドを使用できます。

  1. サイドバーで [カタログ アイコン カタログ ] をクリックします 。

  2. 画面下部の [ 外部データ>ストレージ資格情報] をクリックします。

  3. ストレージ資格情報の名前をクリックして、編集ダイアログを開きます。

  4. [削除]ボタンをクリックします。

ノートブックまたはDatabricks SQLエディタで次のコマンドを実行します。<credential-name>を資格情報の名前に置き換えます。コマンドの括弧で囲まれた部分はオプションです。既定では、資格情報が外部ロケーションで使用されている場合、資格情報は削除されません。<credential-name>を資格情報の名前に置き換えます。

IF EXISTS 資格情報が存在しない場合はエラーを返しません。

DROP STORAGE CREDENTIAL [IF EXISTS] <credential-name>;