CREATE PROJECTION POLICY¶
현재/지정된 스키마에서 새 프로젝션 정책 을 생성하거나 기존 프로젝션 정책을 대체합니다.
프로젝션 정책을 생성한 후 ALTER TABLE … ALTER COLUMN 명령을 사용하여 테이블 열에 프로젝션 정책을 적용하거나 ALTER VIEW 명령을 사용하여 뷰 열에 프로젝션 정책을 적용합니다.
- 참고 항목:
이 항목의 내용:
구문¶
CREATE [ OR REPLACE ] PROJECTION POLICY [ IF NOT EXISTS ] <name>
AS () RETURNS PROJECTION_CONSTRAINT -> <body>
[ COMMENT = '<string_literal>' ]
매개 변수¶
name
프로젝션 정책의 식별자로, 스키마에 고유한 식별자여야 합니다.
식별자 값은 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예:
"My object"
)로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.
body
열을 프로젝션할지 여부를 결정하는 SQL 식입니다.
이 식은 내부 PROJECTION_CONSTRAINT 함수를 호출하여 열 프로젝션을 허용하거나 방지합니다.
PROJECTION_CONSTRAINT(ALLOW => TRUE)
— 프로젝션 정책이 연결된 열을 프로젝션하도록 허용합니다.PROJECTION_CONSTRAINT(ALLOW => FALSE)
— 프로젝션 정책이 연결된 열을 프로젝션하도록 허용하지 않습니다.
COMMENT = 'string_literal'
프로젝션 정책에 대한 설명을 추가하거나 기존 설명을 덮어씁니다.
액세스 제어 요구 사항¶
이 SQL 명령을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
권한 |
오브젝트 |
참고 |
---|---|---|
CREATE PROJECTION POLICY |
스키마 |
스키마의 모든 오브젝트에 대해 작업하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한도 필요합니다.
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
프로젝션 정책 DDL 및 권한에 대한 추가적인 세부 사항은 권한과 명령 섹션을 참조하십시오.
사용법 노트¶
기존 프로젝션 정책을 업데이트하고 정책의 현재 정의를 확인해야 할 경우 DESCRIBE PROJECTION POLICY 명령 또는 GET_DDL 함수를 실행하십시오.
메타데이터 관련:
주의
고객은 Snowflake 서비스를 사용할 때 개인 데이터(사용자 오브젝트 제외), 민감한 데이터, 수출 통제 대상 데이터 또는 기타 규제 데이터가 메타데이터로 입력되지 않도록 해야 합니다. 자세한 내용은 Snowflake의 메타데이터 필드 섹션을 참조하십시오.
예¶
열 프로젝션을 허용하지 않습니다.
CREATE OR REPLACE PROJECTION POLICY do_not_project AS () RETURNS PROJECTION_CONSTRAINT -> PROJECTION_CONSTRAINT(ALLOW => false);
analyst
사용자 지정 역할에 대한 열을 프로젝션합니다. 그렇지 않으면 열을 프로젝션하지 마십시오.
CREATE OR REPLACE PROJECTION POLICY project_analyst_only AS () RETURNS PROJECTION_CONSTRAINT -> CASE WHEN CURRENT_ROLE() = 'ANALYST' THEN PROJECTION_CONSTRAINT(ALLOW => true) ELSE PROJECTION_CONSTRAINT(ALLOW => false) END;