Visibility of data in system tables and views - Amazon Redshift

英語の翻訳が提供されている場合で、内容が矛盾する場合には、英語版がオリジナルとして取り扱われます。翻訳は機械翻訳により提供されています。

Visibility of data in system tables and views

システムテーブルとビューには、データについて 2 つのクラスの可視性 (ユーザーが表示可能、スーパーユーザーが表示可能) があります。

スーパーユーザー特権を持っているユーザーのみが、スーパーユーザーが表示可能なカテゴリのテーブルのデータを表示できます。通常のユーザーは、ユーザーが表示可能なテーブルのデータを表示できます。通常のユーザーに、スーパーユーザーが表示可能なテーブルのアクセス権を付与するには、そのテーブルに対する SELECT 権限の GRANT を、通常のユーザーに対して実行します。

デフォルトでは、ユーザーが表示可能なテーブルの大部分で、別のユーザーによって生成された行は、通常のユーザーには表示されません。通常のユーザーに無制限の SYSLOG ACCESS が付与された場合、そのユーザーは、別のユーザーによって生成された行を含む、ユーザーが表示可能なテーブルのすべての行を表示できます。詳細については、「ALTER USER」または「CREATE USER」を参照してください。STV_RECENTS および SVV_TRANSACTIONS のすべての行は、すべてのユーザーに表示されます。

注記

システムテーブルに対する無制限のアクセス権限を付与されたユーザーは、別のユーザーが生成したデータへの可視性が提供されます。たとえば、STL_QUERY と STL_QUERY_TEXT には INSERT、UPDATE、および DELETE ステートメントのフルテキストが含まれており、ユーザーが生成した機密データがこれらに含まれている可能性があります。

スーパーユーザーは、すべてのテーブルのすべての行を表示できます。通常のユーザーに、スーパーユーザーが表示可能なテーブルのアクセス権を付与するには、そのテーブルに対する SELECT 権限の GRANT を、通常のユーザーに対して実行します。

Filtering system-generated queries

通常、SVL_QUERY_SUMMARY、SVL_QLOG など、クエリに関連するシステムテーブルとビューには、Amazon Redshift がデータベースのステータスを監視するために使用する、自動的に生成された多数のステートメントが含まれます。これらのシステム生成クエリはスーパーユーザーに表示されますが、ほとんど役立ちません。userid 列を使用するシステムテーブルまたはシステムビューからの選択時にそれらのクエリを除外するには、条件 userid > 1 を WHERE 句に追加します。たとえば、 と指定します。

select * from svl_query_summary where userid > 1