カタログリンクデータベース:すべての操作において、データベース所有者ロールに CATALOG INTEGRATION および EXTERNAL VOLUME に対する USAGE 権限が必要です(保留中)¶
この動作変更により、カタログリンクデータベース内のテーブルにアクセスするための要件が変更されます。これは、カタログリンクデータベース内の以下の操作に影響します。これらの操作では、データベースのカタログ統合と外部ボリュームへのアクセスが必要です。
データベース内のオブジェクトに対するすべての DML 操作
データベース内のオブジェクトに対するすべての DDL 操作
テーブルの自動検出
データベース内のテーブルの自動または手動による更新
データベース内のテーブルの読み取り
- 変更前:
カタログリンクデータベース内のテーブルにアクセスするには、以下のいずれかのロールに、データベースの外部ボリュームに対する USAGE 権限と、データベースのカタログ統合に対する USAGE 権限が必要です。
カタログリンクデータベースに対する OWNERSHIP 権限を持つロール。
カタログリンクデータベース内のテーブルに対する OWNERSHIP 権限を持つロール。
セッションでアクティブな任意のロール。
- 変更後:
カタログリンクデータベース内のテーブルにアクセスするには、以下のロールに、データベースの外部ボリュームに対する USAGE 権限と、データベースのカタログ統合に対する USAGE 権限が必要です。
カタログリンクデータベースに対する OWNERSHIP 権限を持つロール。
たとえば、ALTER コマンドは、データベース所有者ロールがカタログ統合および外部ボリュームへのアクセス権を持っている場合にのみ成功します。ALTER コマンドを実行しようとしても、データベース所有者ロールがカタログ統合へのアクセス権を持っていない場合、以下のエラーが表示されます。
SQL access control error: Insufficient privileges to operate on integration '<name of catalog integration>'.
ALTER コマンドを実行しようとしても、データベース所有者ロールが外部ボリュームへのアクセス権を持っていない場合、以下のエラーが表示されます。
SQL access control error: Insufficient privileges to operate on external volume '<name of external volume>').
必要に応じて、カタログリンクデータベースを所有するロールに必要な USAGE 権限を付与します。
以下の例では、カタログリンクデータベースに対する OWNERSHIP 権限を持つdata_engineerロールに、カタログリンクデータベース内のテーブルへのアクセスを提供するために必要な USAGE 権限が付与されています。
GRANT USAGE ON INTEGRATION glueCatalogInt TO ROLE data_engineer; GRANT USAGE ON EXTERNAL VOLUME exvol TO ROLE data_engineer;
この変更により、カタログリンクデータベースの Apache Iceberg™ テーブルに対するアクセス管理が、カタログリンクデータベースの所有者を介してルーティングされるため、より効率的になります。
注釈
カタログ提供の認証情報を使用している場合、外部ボリュームに対する USAGE 権限の要件は、変更の前後には適用されません。
参照:2114