카테고리:

테이블, 뷰 및 시퀀스 DDL

SHOW ROW ACCESS POLICIES

액세스 권한이 있는 행 액세스 정책을 나열합니다. 만든 날짜, 데이터베이스 및 스키마 이름, 소유자, 사용 가능한 설명을 포함한 정보를 반환합니다.

참고 항목:

행 액세스 정책 DDL

이 항목의 내용:

구문

SHOW ROW ACCESS POLICIES [ LIKE '<pattern>' ]
                         [ IN
                              {
                                ACCOUNT                  |

                                DATABASE                 |
                                DATABASE <database_name> |

                                SCHEMA                   |
                                SCHEMA <schema_name>     |
                                <schema_name>
                              }
                         ]

매개 변수

LIKE 'pattern'

오브젝트 이름으로 명령 출력을 필터링합니다. 이 필터는 SQL 와일드카드 문자(%_) 지원과 함께 대/소문자를 구분하지 않는 패턴 일치를 사용합니다.

예를 들어, 다음 패턴은 같은 결과를 반환합니다.

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...
[ IN ... ]

선택적으로 명령의 범위를 지정합니다. 다음 중 하나를 지정합니다.

ACCOUNT

전체 계정의 레코드를 반환합니다.

DATABASE, . DATABASE db_name

현재 사용 중인 데이터베이스 또는 지정된 데이터베이스(db_name)의 레코드를 반환합니다.

db_name 없이 DATABASE 를 지정하고 사용 중인 데이터베이스가 없는 경우 키워드는 출력에 아무런 영향도 주지 않습니다.

SCHEMA, . SCHEMA schema_name, . schema_name

현재 사용 중인 스키마 또는 지정된 스키마(schema_name)의 레코드를 반환합니다.

데이터베이스가 사용 중이거나 정규화된 schema_name (예: db.schema)을 지정하는 경우 SCHEMA 는 선택 사항입니다.

사용 중인 데이터베이스가 없으면 SCHEMA 를 지정해도 출력에 아무런 영향도 주지 않습니다.

기본값: 세션에 현재 사용 중인 데이터베이스가 있는지 여부에 따라 다릅니다.

  • 데이터베이스: DATABASE 가 기본값입니다(즉, 이 명령은 데이터베이스에서 볼 권한이 있는 오브젝트를 반환함).

  • 데이터베이스 없음: ACCOUNT 가 기본값입니다(즉, 이 명령은 계정에서 볼 권한이 있는 오브젝트를 반환함).

액세스 제어 요구 사항

이 SQL 명령을 실행하는 데 사용되는 역할 에는 다음 권한최소한 하나 이상 이 있어야 합니다.

권한

오브젝트

참고

APPLY ROW ACCESS POLICY

계정

APPLY

행 액세스 정책

OWNERSHIP

행 액세스 정책

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

스키마의 모든 오브젝트에 대해 작업하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한도 필요합니다.

지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.

보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 Snowflake에서의 액세스 제어 섹션을 참조하십시오.

행 액세스 정책 DDL 및 권한에 대한 추가적인 세부 사항은 행 액세스 정책 관리하기 섹션을 참조하십시오.

사용법 노트

  • 이 명령을 실행하기 위해 실행 중인 웨어하우스가 꼭 필요하지는 않습니다.

  • LIMIT rows 의 값은 10000 을 초과할 수 없습니다. LIMIT rows 가 생략된 경우 결과 세트의 행 수가 10,000개를 넘는 경우 이 명령을 실행하면 오류가 발생합니다.

    10,000개 이상의 레코드가 있는 결과를 보려면 LIMIT rows 를 포함하거나 Snowflake Information Schema 에서 해당 뷰를 쿼리하십시오.

  • 이 명령의 출력을 사후 처리하려면 출력을 쿼리할 수 있는 테이블로 처리하는 RESULT_SCAN 함수를 사용하면 됩니다.

다음 예는 쿼리를 실행하는 ACCOUNTADMIN 역할을 가진 사용자를 나타냅니다.

show row access policies;

---------------------------------+------+---------------+-------------+-------------------+--------------+---------+
          created_on             | name | database_name | schema_name |       kind        |    owner     | comment |
---------------------------------+------+---------------+-------------+-------------------+--------------+---------+
Fri, 23 Jun 1967 00:00:00 -0700  | P1   | RLS_AUTHZ_DB  | S_D_1       | ROW_ACCESS_POLICY | ACCOUNTADMIN |         |
Fri, 23 Jun 1967 00:00:00 -0700  | P2   | RLS_AUTHZ_DB  | S_D_2       | ROW_ACCESS_POLICY | ACCOUNTADMIN |         |
---------------------------------+------+---------------+-------------+-------------------+--------------+---------+

다음 예는 행 액세스 정책이 존재하는 부모 스키마에서 USAGE가 없고 ACCOUNTADMIN 역할이 아닌 역할을 나타냅니다.

show row access policies;

---------------------------------+------+---------------+-------------+-------------------+--------------+---------+
          created_on             | name | database_name | schema_name |       kind        |    owner     | comment |
---------------------------------+------+---------------+-------------+-------------------+--------------+---------+
맨 위로 이동