CREATE PROJECTION POLICY

현재/지정된 스키마에서 새 프로젝션 정책 을 생성하거나 기존 프로젝션 정책을 대체합니다.

프로젝션 정책을 생성한 후 ALTER TABLE … ALTER COLUMN 명령을 사용하여 테이블 열에 프로젝션 정책을 적용하거나 ALTER VIEW 명령을 사용하여 뷰 열에 프로젝션 정책을 적용합니다.

참고 항목:

프로젝션 정책 DDL 참조

이 항목의 내용:

구문

CREATE [ OR REPLACE ] PROJECTION POLICY [ IF NOT EXISTS ] <name>
  AS () RETURNS PROJECTION_CONSTRAINT -> <body>
  [ COMMENT = '<string_literal>' ]
Copy

매개 변수

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);
Copy

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;
Copy