ストレージ資格情報の管理
この記事では、 ストレージ資格情報の一覧表示、表示、更新、アクセス許可の付与、および削除する方法について説明します。
Databricks では、ストレージ資格情報に対してはCREATE EXTERNAL LOCATION
のみを付与し、他の権限は付与しないことをお勧めします。
この記事では、ノートブックまたはDatabricks SQLクエリーでカタログエクスプローラーとSQLコマンドを使用してストレージ資格情報を管理する方法について説明します。 代わりに Databricks CLI を使用する方法については、「 Databricks CLI とは」を参照してください。
ストレージ資格情報のリスト
メタストア内のすべてのストレージ資格情報のリストを表示するには、カタログ エクスプローラーまたは SQL コマンドを使用できます。
サイドバーで [ カタログ ] をクリックします 。
[ カタログ ] ウィンドウの上部にある [ ] 歯車アイコンをクリックし、[ ストレージ認証情報] を選択します。
または、クイック アクセスページで[外部データ >]ボタンをクリックし、 [ストレージ資格情報]タブに移動します。
ノートブックまたはDatabricks SQLエディタで次のコマンドを実行します。
SHOW STORAGE CREDENTIALS;
ストレージ資格情報の表示
ストレージ資格情報のプロパティを表示するには、「カタログ・エクスプローラ」または SQL コマンドを使用できます。
サイドバーで [ カタログ ] をクリックします 。
[ カタログ ] ウィンドウの上部にある [ ] 歯車アイコンをクリックし、[ ストレージ認証情報] を選択します。
または、クイック アクセスページで[外部データ >]ボタンをクリックし、 [ストレージ資格情報]タブに移動します。
ストレージ資格情報の名前をクリックすると、そのプロパティが表示されます。
ノートブックまたは Databricks SQL エディターで次のコマンドを実行します。 <credential-name>
を資格情報の名前に置き換えます。
DESCRIBE STORAGE CREDENTIAL <credential-name>;
ストレージ資格情報の付与を表示する
ストレージ資格情報の許可を表示するには、次のようなコマンドを使用します。オプションで、結果をフィルタリングし、指定したプリンシパルの許可のみを表示できます。
SHOW GRANTS [<principal>] ON STORAGE CREDENTIAL <storage-credential-name>;
プレースホルダーの値を置き換えます。
<principal>
:アカウントレベルのユーザーのメールアドレス、またはアクセス許可を付与するアカウントレベルのグループの名前。<storage-credential-name>
:ストレージ資格情報の名前。
手記
グループ名にスペースが含まれている場合は、(アポストロフィではなく)バックティックで囲みます。
外部ロケーションを作成する権限を付与する
ストレージ資格情報を使用して外部ロケーションを作成する権限を付与するには、以下のステップを実行します。
サイドバーで [ カタログ ] をクリックします 。
[ カタログ ] ウィンドウの上部にある [ ] 歯車アイコンをクリックし、[ ストレージ認証情報] を選択します。
または、クイック アクセスページで[外部データ >]ボタンをクリックし、 [ストレージ資格情報]タブに移動します。
ストレージ認証情報の名前をクリックして、詳細ページを開きます。
[ アクセス許可] をクリックします。
ユーザーまたはグループにアクセス許可を付与するには、各 ID を選択し、[ 付与] をクリックします。
ユーザーまたはグループから権限を取り消すには、各 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>;
ストレージ資格情報を読み取り専用としてマークする
ストレージ資格情報によって管理されるすべてのデータへの読み取り専用アクセス権をユーザーに付与する場合は、「カタログエクスプローラ」を使用してストレージ資格情報を読み取り専用としてマークできます。
ストレージ資格情報を読み取り専用にすると、その資格情報で構成されたストレージはすべて読み取り専用になります。
ストレージ資格情報は、作成時に読み取り専用としてマークできます。
また、カタログエクスプローラーを使用して、ストレージ資格証明の作成後に読み取り専用ステータスを変更することもできます。
カタログエクスプローラで、ストレージ認証情報を検索し、オブジェクト行のケバブメニューをクリックして 、「 編集」を選択します。
編集ダイアログで[読み取り専用]オプションを選択します。
ストレージ資格情報の名前の変更
ストレージ資格情報の名前を変更するには、カタログエクスプローラーまたは SQL コマンドを使用できます。
サイドバーで [ カタログ ] をクリックします 。
[ カタログ ] ウィンドウの上部にある [ ] 歯車アイコンをクリックし、[ ストレージ認証情報] を選択します。
または、クイック アクセスページで[外部データ >]ボタンをクリックし、 [ストレージ資格情報]タブに移動します。
ストレージ資格情報の名前をクリックして、編集ダイアログを開きます。
ストレージ資格情報の名前を変更して保存します。
ノートブックまたはDatabricks SQLエディタで次のコマンドを実行します。プレースホルダーの値を置き換えます。
<credential-name>
:資格情報の名前。<new-credential-name>
:資格情報の新しい名前。
ALTER STORAGE CREDENTIAL <credential-name> RENAME TO <new-credential-name>;
ストレージ資格情報を削除する
ストレージ資格情報を削除 (ドロップ) するには、その所有者である必要があります。 ストレージ資格情報を削除するには、カタログ・エクスプローラーまたは SQL コマンドを使用できます。
サイドバーで [ カタログ ] をクリックします 。
[ カタログ ] ウィンドウの上部にある [ ] 歯車アイコンをクリックし、[ ストレージ認証情報] を選択します。
または、クイック アクセスページで[外部データ >]ボタンをクリックし、 [ストレージ資格情報]タブに移動します。
ストレージ資格情報の名前をクリックして、編集ダイアログを開きます。
[削除]ボタンをクリックします。
ノートブックまたはDatabricks SQLエディタで次のコマンドを実行します。<credential-name>
を資格情報の名前に置き換えます。コマンドの括弧で囲まれた部分はオプションです。既定では、資格情報が外部ロケーションで使用されている場合、資格情報は削除されません。<credential-name>
を資格情報の名前に置き換えます。
IF EXISTS
資格情報が存在しない場合はエラーを返しません。
DROP STORAGE CREDENTIAL [IF EXISTS] <credential-name>;