애플리케이션 패키지 만들기

이 항목에서는 Snowflake Native App Framework 로 애플리케이션 패키지를 만들고 관리하는 방법을 설명합니다.

애플리케이션 패키지 정보

애플리케이션 패키지는 애플리케이션에서 필요한 데이터 콘텐츠, 애플리케이션 논리, 메타데이터, 설정 스크립트를 캡슐화하는 컨테이너입니다. 애플리케이션 패키지에는 애플리케이션에 대해 정의된 버전 및 패치 수준에 대한 정보도 포함됩니다.

애플리케이션 패키지 만들기

Snowflake Native App Framework 는 Snowsight 를 사용하여 애플리케이션 패키지 생성을 지원하거나 SQL 명령을 실행하여 애플리케이션을 만들 수 있습니다.

애플리케이션 패키지 생성에 필요한 권한

애플리케이션 패키지를 생성하려면 자신의 역할에 전역 CREATE APPLICATION PACKAGE 권한이 부여되어 있어야 합니다.

매니페스트 파일 및 설정 스크립트를 명명된 스테이지에 업로드하기

애플리케이션 패키지를 생성하기 전에 매니페스트 파일과 설정 스크립트를 생성하여 자신의 계정에 액세스할 수 있는 명명된 스테이지에 업로드해야 합니다.

명명된 스테이지에 파일을 업로드하는 두 가지 방법이 있습니다.

Snowsight를 사용하여 애플리케이션 패키지 만들기

Snowsight 를 사용하여 애플리케이션 패키지를 만들려면 다음을 수행하십시오.

  1. Snowsight 에 로그인합니다.

  2. 탐색 메뉴에서 Projects » App Packages 를 선택합니다.

  3. Create » App Package 를 선택합니다.

  4. 애플리케이션 패키지의 이름을 입력합니다.

  5. 애플리케이션 패키지에 대해 의도된 컨슈머를 선택합니다.

    • Consumers outside of your organization 을 선택하여 조직 외부에서 애플리케이션 패키지를 사용할 수 있게 합니다. 이 옵션을 선택하면 애플리케이션 패키지에 정의된 각 버전과 패치에 대해 자동 보안 검사 가 시작됩니다.

    • Consumers within your organization 을 선택하여 조직 내부에서 애플리케이션 패키지를 사용할 수 있게 합니다. 자동 보안 검사가 시작되지 않습니다.

  6. 선택적으로, 애플리케이션 패키지에 대한 설명을 입력합니다. 이러한 설명은 컨슈머에게 표시되지 않습니다.

  7. Create 를 선택합니다.

SQL 명령을 사용하여 애플리케이션 패키지 만들기

SQL을 사용하여 애플리케이션 패키지를 만들려면 다음 예와 같이 CREATE APPLICATION PACKAGE 명령을 사용하십시오.

CREATE APPLICATION PACKAGE HelloSnowflakePackage;
Copy

애플리케이션 패키지를 만든 후 SHOW APPLICATION PACKAGES 명령을 사용하여 제공되는 애플리케이션 패키지의 목록을 확인하십시오.

애플리케이션 패키지에 대한 권한 부여하기

애플리케이션 패키지 개발과 관련된 일부 작업을 수행하려면 애플리케이션 패키지에 대해 특정한 권한을 설정해야 합니다. 다음 표에는 이러한 작업을 수행하는 데 필요한 권한이 설명되어 있습니다.

권한

작업

ATTACH LISTING

목록에 애플리케이션 패키지를 추가합니다.

DEVELOP

개발 모드의 애플리케이션 패키지에서 APPLICATION 오브젝트를 만듭니다.

INSTALL

애플리케이션 패키지를 기반으로 APPLICATION 오브젝트를 만듭니다.

MANAGE RELEASES

릴리스 지시문을 지정하고 버전 및 패치 수준을 확인합니다.

MANAGE VERSIONS

애플리케이션 패키지에 버전 및 패치 수준을 추가합니다.

OWNERSHIP

위의 모든 작업을 수행합니다.

Snowsight를 사용하여 애플리케이션 패키지에 대한 권한 부여하기

Snowsight 를 사용하여 애플리케이션 패키지에 대한 권한을 설정하려면 다음을 수행하십시오.

  1. Snowsight 에 로그인합니다.

  2. 탐색 메뉴에서 Projects » App Packages 를 선택합니다.

  3. 애플리케이션 패키지를 선택한 다음 Settings 탭을 선택합니다.

  4. Privileges 섹션에서 부여하려는 권한 옆에 있는 편집 아이콘을 선택합니다.

  5. Add Role 을 선택한 다음 권한을 부여하려는 역할을 선택합니다.

  6. Save 를 선택합니다.

권한 옆에 역할이 나타납니다.

SQL 명령을 사용하여 애플리케이션 패키지에 대한 권한 설정하기

SQL을 사용하여 애플리케이션 패키지에 대한 권한을 역할에 부여하려면 다음 예와 같이 GRANT <권한> 명령을 사용하십시오.

GRANT MANAGE RELEASES ON APPLICATION PACKAGE HelloSnowflakePackage TO ROLE app_release_mgr;
Copy

이 명령을 실행하면 app_release_mgr 역할에 MANAGE RELEASES 권한이 부여됩니다. 동일한 명령을 사용하여 애플리케이션 패키지에 대해 사용 가능한 다른 권한을 부여할 수 있습니다.

애플리케이션 패키지의 소유권 이전하기

애플리케이션 패키지를 만든 후 애플리케이션 패키지의 소유권을 다른 계정 수준 역할로 이전할 수 있습니다.

Snowsight를 사용하여 소유권 이전하기

Snowsight 를 사용하여 애플리케이션 패키지의 소유권을 이전하려면 다음을 수행하십시오.

  1. Snowsight 에 로그인합니다.

  2. 탐색 메뉴에서 Projects » App Packages 를 선택합니다.

  3. 제거하려는 애플리케이션 패키지 옆에 있는 를 선택한 다음 Transfer Ownership 을 선택합니다.

  4. Transfer to 아래에서 새 계정 수준 역할을 선택합니다.

  5. Transfer 를 선택합니다.

SQL 명령을 사용하여 소유권 이전하기

SQL을 사용하여 애플리케이션 패키지의 소유권을 다른 계정 수준 역할로 이전하려면 다음 예와 같이 GRANT OWNERSHIP 명령을 사용하십시오.

GRANT OWNERSHIP ON APPLICATION HelloSnowflakePackage TO ROLE native_app_dev;
Copy

계정에서 애플리케이션 패키지 제거하기

애플리케이션 패키지에 대해 OWNERSHIP 권한을 가진 사용자는 계정에서 애플리케이션 패키지를 제거할 수 있습니다. 하지만 현재 목록과 연결된 애플리케이션 패키지는 제거할 수 없습니다.

애플리케이션 패키지를 제거한 후에는 공급자 계정 내에서 더 이상 사용할 수 없습니다.

참고

목록과 연결된 애플리케이션 패키지를 제거한 후 컨슈머는 애플리케이션 패키지에서 생성된 Snowflake Native App 을 볼 수 있지만 액세스할 수는 없습니다. 컨슈머가 Snowflake Native App 에 액세스하려고 하면 애플리케이션 패키지가 제거되었음을 나타내는 오류 메시지가 표시됩니다.

Snowsight를 사용하여 애플리케이션 패키지 제거하기

Snowsight 를 사용하여 애플리케이션 패키지를 제거하려면 다음을 수행하십시오.

  1. Snowsight 에 로그인합니다.

  2. 탐색 메뉴에서 Projects » App Packages 를 선택합니다.

  3. 제거하려는 애플리케이션 패키지 옆에 있는 를 선택한 다음 Drop 을 선택합니다.

SQL 명령을 사용하여 애플리케이션 패키지 제거하기

SQL을 사용하여 애플리케이션 패키지를 제거하려면 다음 예와 같이 DROP APPLICATION PACKAGE 명령을 실행하십시오.

DROP APPLICATION PACKAGE HelloSnowflakePackage;
Copy