Snowflake Native App 에 대한 액세스 권한 부여하기¶
이 항목에서는 컨슈머가 자신의 계정에서 Snowflake Native App 이 오브젝트를 생성하고 액세스하도록 허용하는 방법을 설명합니다. 여기에는 앱에서 요청한 권한을 부여하거나 참조를 사용하여 기존 오브젝트에 대한 액세스를 활성화하는 것이 포함됩니다.
애플리케이션에서 요청한 권한 및 참조 정보¶
간단한 Snowflake Native App 에서는 설치 중에 설정 스크립트 실행 시 앱에서 필요한 모든 오브젝트가 APPLICATION 오브젝트 내부에 생성됩니다. 애플리케이션에서 필요한 모든 오브젝트가 설치된 애플리케이션 내에서 생성되고 액세스됩니다. 컨슈머는 자신의 계정에서 어떤 작업도 수행할 필요가 없습니다.
그러나 일부 앱에서는 컨슈머에게 계정에서 다음 유형의 작업을 수행하도록 요청할 수 있습니다.
데이터베이스 또는 웨어하우스 만들기.
작업 실행.
기존 오브젝트(예: 테이블)에 액세스합니다.
Snowflake Native App 이 요청할 수 있는 액세스 권한 유형에는 다음 두 가지가 있습니다.
앱이 일부 계정 수준 작업을 수행할 수 있도록 하는 권한. 앱은 다음 전역 권한을 요청할 수 있습니다.
EXECUTE TASK
EXECUTE MANAGED TASK
CREATE WAREHOUSE
MANAGE WAREHOUSES
CREATE DATABASE
일부 앱은 SNOWFLAKE 데이터베이스에 대한 IMPORTED PRIVILEGES 권한을 요청할 수도 있습니다. 자세한 내용은 SNOWFLAKE 데이터베이스에 대한 IMPORTED PRIVILEGES 권한 부여하기 섹션을 참조하십시오.
앱이 컨슈머 계정에 이미 존재하고 APPLICATION 오브젝트 외부에 있는 오브젝트에 액세스할 수 있도록 허용하는 참조. 공급자가
manifest.yml
파일에서 앱에 필요한 참조를 정의합니다.앱을 설치한 후 컨슈머는 오브젝트를 앱에 연결하는 참조 를 생성하여 오브젝트에 대한 액세스 권한을 부여할 수 있습니다.
앱은 다음 유형의 오브젝트와 해당 권한에 대한 액세스를 요청할 수 있습니다.
오브젝트 타입
허용되는 권한
TABLE
SELECT, INSERT, UPDATE, DELETE, TRUNCATE, REFERENCES
VIEW
SELECT, REFERENCES
EXTERNAL TABLE
SELECT, REFERENCES
FUNCTION
USAGE
PROCEDURE
USAGE
WAREHOUSE
MODIFY, MONITOR, USAGE, OPERATE
API INTEGRATION
USAGE
컨슈머는 다음 섹션에서 설명하는 대로 Snowsight 를 사용하거나 SQL 명령을 실행하여 이러한 요청을 승인할 수 있습니다.
참고
요청된 권한을 부여하지 않거나 요청된 오브젝트에 대한 참조를 앱에 연결하지 않으면 앱의 일부가 올바르게 작동하지 않을 수 있습니다.
Snowsight를 사용하여 액세스 요청 관리하기¶
공급자가 Snowflake Native App 에서 사용자 인터페이스를 구현하는 경우 컨슈머는 Snowsight 를 사용하여 다음을 수행할 수 있습니다.
전역 권한을 확인하고 부여합니다.
컨슈머 계정의 기존 오브젝트에 대한 액세스 권한을 부여합니다.
전역 권한 부여하기¶
애플리케이션을 설치한 후 권한을 부여하거나 참조를 생성하려면 다음을 수행하십시오.
Snowsight 에 로그인합니다.
탐색 메뉴에서 Data Products » Apps 를 선택합니다.
애플리케이션을 선택합니다.
도구 모음에서 Security 아이콘을 선택합니다.
애플리케이션에서 요청한 계정 수준 권한은 Account level privileges 아래에 나타납니다.
Account-level privileges 섹션에서 Review 를 선택한 다음, 부여하려는 각 권한에 대한 슬라이더를 전환합니다.
Save 를 선택합니다.
오브젝트에 대한 권한 및 액세스 취소하기¶
권한을 취소하거나 오브젝트에 대한 액세스 권한을 제거하려면 다음을 수행하십시오.
Snowsight 에 로그인합니다.
탐색 메뉴에서 Data Products » Apps 를 선택합니다.
애플리케이션을 선택합니다.
도구 모음에서 Security 아이콘을 선택합니다.
전역 권한을 취소하려면 Edit 버튼을 선택한 다음 취소하려는 권한에 대한 슬라이더를 전환합니다.
특정 오브젝트에서 대한 액세스 권한을 취소하려면 Delete 버튼을 선택한 다음 Revoke Privilege 를 선택합니다.
참고
권한을 취소하거나 오브젝트에서 대한 액세스 권한을 제거하면 애플리케이션이 불안정해지거나 작동을 멈추는 결과를 낳을 수 있습니다.
SQL 명령을 사용하여 앱에 대한 권한 관리하기¶
애플리케이션 개발자가 권한 부여를 위한 인터페이스를 구현하지 않은 경우 SQL 명령을 사용하여 애플리케이션에 대한 액세스 요청을 관리해야 합니다.
애플리케이션에서 요청한 권한 보기¶
공급자가 애플리케이션에서 필요한 권한을 지정하면 권한 요청이 설치된 애플리케이션의 일부로 포함됩니다. 애플리케이션을 설치한 후 이러한 권한을 볼 수 있습니다.
애플리케이션에서 필요한 권한을 보려면 다음 예와 같이 SHOW PRIVILEGES 명령을 실행하십시오.
SHOW PRIVILEGES IN APPLICATION hello_snowflake_app;
Snowflake Native App 에 권한 부여하기¶
컨슈머는 앱에서 요청한 권한을 확인한 후 해당 권한을 앱에 부여할 수 있습니다.
예를 들어, 앱에 EXECUTE TASK 권한을 부여하려면 다음 예와 같이 GRANT PRIVILEGE 명령을 실행하십시오.
GRANT EXECUTE TASK ON ACCOUNT TO APPLICATION hello_snowflake_app;
Snowflake Native App 에 MANAGE WAREHOUSES 권한 부여하기¶
애플리케이션은 MANAGE WAREHOUSES 권한 을 통해 컨슈머 계정 내에서 웨어하우스를 생성, 수정, 사용할 수 있습니다. 앱에 MANAGE WAREHOUSES 권한을 부여하려면 다음 예와 같이 GRANT 를 사용하십시오.
GRANT MANAGE WAREHOUSES ON ACCOUNT TO APPLICATION hello_snowflake_app;
SNOWFLAKE 데이터베이스에 대한 IMPORTED PRIVILEGES 권한 부여하기¶
일부 애플리케이션은 컨슈머가 본인 계정의 SNOWFLAKE 데이터베이스에 대한 IMPORTED PRIVILEGES 권한을 부여하도록 요청할 수 있습니다. 이 권한은 SQL 명령으로만 부여할 수 있습니다. Snowsight 를 사용하여 이 권한을 부여할 수 없습니다. 애플리케이션에 이 권한이 필요한 경우 공급자는 예컨대 애플리케이션의 README 파일을 통해 이 요구 사항을 컨슈머에게 전달해야 합니다.
SNOWFLAKE 데이터베이스에 대한 IMPORT 권한을 부여하려면 다음 명령을 실행하십시오.
GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE TO APPLICATION hello_snowflake_app;
참고
IMPORTED PRIVILEGES 권한을 통해 앱이 컨슈머 계정과 관련된 사용량과 비용에 대한 정보에 액세스할 수 있습니다. 컨슈머는 이 권한을 부여하기 전에 이 정보를 앱과 공유할지 확인해야 합니다.