Native Apps의 선언적 공유: 제한 사항

선언적 공유는 공급자가 간단한 YAML 구성 파일을 사용하여 여러 데이터베이스에서 오브젝트를 빠르게 정의하고 공유할 수 있는 Snowflake Native Apps의 기능입니다. 이 기능은 데이터 공유 워크플로를 많이 간소화하지만, 공급자가 구현하기 전에 이해해야 하는 제한 사항이 있습니다.

지원되는 오브젝트 유형

선언적 공유는 다음 오브젝트 유형을 지원합니다.

  • 테이블

  • 보안 뷰 (구체화된 뷰 포함)

  • 노트북

다른 모든 오브젝트 유형은 Native Apps의 선언적 공유에서의 공유에 대해 지원되지 않습니다.

노트북 제한 사항

컨슈머를 위한 읽기 전용

컨슈머는 공급자 노트북을 직접 편집하거나 복제할 수 없습니다.

네트워크 액세스

노트북은 고객 계정에서 실행할 때 외부 엔드포인트 또는 컨슈머 데이터에 액세스할 수 없습니다.

특수 라이브러리

지리 공간 및 기타 서드 파티 라이브러리는 노트북에서 바로 사용할 수 있다고 보장되지 않습니다.

외부 종속성

선언적 공유 앱은 외부 라이브러리(코드 스테이징의 Snowflake Anaconda 채널 및 Python 파일)에 대한 지원이 제한적입니다.

보안 및 액세스 제어

역할 정의

공유 콘텐츠에서 참조되는 모든 애플리케이션 역할은 매니페스트의 roles 필드에 미리 정의되어야 합니다.

오브젝트 수준 역할

오브젝트 역할은 상위 스키마 역할의 하위 세트여야 합니다.

역할 유효성 검사 누락

공유 구성에서 참조된 역할이 없는 경우 매니페스트의 유효성을 검사하면 오류가 반환됩니다.

최소 권한

shared_content.yaml 파일을 커밋하는 공급자 역할에는 공유 오브젝트에 대해 컨슈머에게 부여된 권한과 최소한 동일한 권한이 있어야 합니다.

REFERENCE_USAGE 필요 없음

기존 데이터 공유와 달리 공급자는 애플리케이션 패키지에 대한 REFERENCE_USAGE 권한을 부여할 필요가 없습니다.

마이그레이션 및 호환성

선언적 공유 마이그레이션

데이터 공유에서 선언적 공유로 전환하기 위한 마이그레이션 지원을 네이티브 앱에서 사용할 수 없습니다.

명명 및 구성 제약 조건

와일드카드 없음

오브젝트 이름은 명시적으로 지정해야 합니다. 와일드카드 또는 정규식 일치는 지원되지 않습니다.

이름 충돌 방지

두 공유 객체는 동일한 DOMAIN 및 이름을 사용할 수 없습니다.

스키마 매핑

스키마 매핑은 지원되지 않습니다. 여러 데이터베이스의 스키마 이름을 중복 사용하는 것은 허용되지 않습니다.