ALTER PACKAGES POLICY

ALTER PACKAGES POLICY

기존 패키지 정책(packages policy)의 속성을 수정하는 명령이에요. 패키지 정책 속성에 대한 변경 사항은 해당 정책을 사용하는 다음 SQL 쿼리가 실행될 때 적용돼요.

출처: 문서

본문

구문 (Syntax)

ALTER PACKAGES POLICY [ IF EXISTS ] <name> SET
  [ ALLOWLIST = ( [ '<packageSpec>' ] [ , '<packageSpec>' ... ] ) ]
  [ BLOCKLIST = ( [ '<packageSpec>' ] [ , '<packageSpec>' ... ] ) ]
  [ ADDITIONAL_CREATION_BLOCKLIST = ( [ '<packageSpec>' ] [ , '<packageSpec>' ... ] ) ]
  [ COMMENT = '<string_literal>' ]

ALTER PACKAGES POLICY [ IF EXISTS ] <name> UNSET
  [ ALLOWLIST ]
  [ BLOCKLIST ]
  [ ADDITIONAL_CREATION_BLOCKLIST ]
  [ COMMENT ]

매개변수 (Parameters)

name — 수정할 패키지 정책의 식별자를 지정해요. 식별자에 공백이나 특수 문자가 포함되어 있으면 전체 문자열을 큰따옴표로 묶어야 해요. 큰따옴표로 묶은 식별자는 대소문자를 구분해요. 자세한 내용은 식별자 요구사항을 참고하세요.

SET ... — 패키지 정책에 설정할 하나 이상의 속성을 지정해요.

ALLOWLIST = ( [ 'packageSpec' ] [ , 'packageSpec' ... ] ) — 허용할 패키지 스펙 목록을 지정해요.

기본값: ('*') (즉 모든 패키지를 허용).

BLOCKLIST = ( [ 'packageSpec' ] [ , 'packageSpec' ... ] ) — 차단할 패키지 스펙 목록을 지정해요. 이 매개변수를 해제하려면 빈 목록을 지정해요.

기본값: () (즉 어떤 패키지도 차단하지 않음).

ADDITIONAL_CREATION_BLOCKLIST = ( [ 'packageSpec' ] [ , 'packageSpec' ... ] ) — 생성 시점에 차단할 패키지 스펙 목록을 지정해요. 이 매개변수를 해제하려면 빈 목록을 지정해요. ADDITIONAL_CREATION_BLOCKLIST가 설정되면 생성 시점에 기본 BLOCKLIST에 추가돼요. 임시 UDF와 익명 저장 프로시저의 경우 ADDITIONAL_CREATION_BLOCKLIST가 생성 및 실행 시점 모두에서 기본 BLOCKLIST에 추가돼요.

기본값: () (즉 어떤 패키지도 차단하지 않음).

COMMENT = 'string_literal' — 패키지 정책에 주석을 추가하거나 기존 주석을 덮어써요.

UNSET ... — 패키지 정책의 하나 이상의 속성을 해제해 기본값으로 되돌려요:

  • ALLOWLIST
  • BLOCKLIST
  • ADDITIONAL_CREATION_BLOCKLIST
  • COMMENT

하나의 ALTER 문으로 여러 속성을 재설정할 수 있어요. 다만 각 속성은 콤마로 구분해야 해요. 속성을 재설정할 때는 이름만 지정해야 하며, 속성에 값을 지정하면 오류가 반환돼요.

접근 제어 요구사항 (Access control requirements)

이 작업을 실행하는 데 사용되는 역할은 최소한 다음 권한을 보유해야 해요: GRANT OWNERSHIP

권한 객체 설명
OWNERSHIP Packages policy OWNERSHIP은 객체를 만든 역할에 자동으로 부여되는 객체의 특별한 권한이에요. 소유 역할(또는 MANAGE GRANTS 권한이 있는 역할)이 GRANT OWNERSHIP 명령으로 다른 역할에 이전할 수도 있어요.

스키마의 객체를 조작하려면 상위 데이터베이스에 대해 하나 이상의 권한과 상위 스키마에 대해 하나 이상의 권한이 필요해요.

지정한 권한 집합을 가진 사용자 정의 역할을 만드는 방법은 사용자 정의 역할 만들기를 참고하세요.

보호 객체에서 SQL 작업을 수행할 때 역할과 권한 부여에 대한 일반 정보는 접근 제어 개요를 참고하세요.

사용 메모 (Usage notes)

  • 기존 패키지 정책을 업데이트하려고 하는데 현재 정의를 확인해야 한다면 GET_DDL 함수를 호출하거나 DESCRIBE PACKAGES POLICY 명령을 실행해요.

  • 메타데이터 관련: Snowflake 서비스를 사용할 때 메타데이터로 개인 데이터(User 객체 외), 민감한 데이터, 수출 통제 데이터 또는 기타 규제 대상 데이터를 입력하지 않도록 주의해야 해요. 자세한 내용은 Snowflake의 메타데이터 필드를 참고하세요.

예시 (Examples)

다음 예시는 패키지 정책을 업데이트해요.

ALTER PACKAGES POLICY packages_policy_prod_1 SET ALLOWLIST = ('pandas==1.2.3');

더 알아보기 (Learn more)