การจัดการ กำกับดูแล และการทำงานร่วมกันใน Snowflake
Emily Melhuish
Technical Curriculum Developer, Snowflake



ขั้นตอนที่ 1: สร้าง Access Role และมอบสิทธิ์อ็อบเจกต์
CREATE ROLE credit_read;
GRANT USAGE ON DATABASE claro_db
TO ROLE credit_read;
GRANT USAGE ON SCHEMA claro_db.core
TO ROLE credit_read;
GRANT SELECT ON TABLE core.credit_scores
TO ROLE credit_read;
ขั้นตอนที่ 2: สร้าง Functional Role และสืบทอด Access Role
CREATE ROLE analyst;
GRANT ROLE credit_read TO ROLE analyst;
ขั้นตอนที่ 3: กำหนด Functional Role ให้ผู้ใช้
GRANT ROLE analyst TO USER ana;
| Account Roles | Database Roles | |
|---|---|---|
| ขอบเขต | ครอบคลุมทุก Database หรือ Schema | จำกัดเฉพาะ Database เดียว |
| กำหนดให้ผู้ใช้ได้? | ได้ | ไม่ได้ — ต้องมอบให้ Account Role แทน |
| SQL | CREATE ROLE | CREATE DATABASE ROLE |
| กรณีใช้งาน | แทนหน้าที่งานในระดับ Account | รวมสิทธิ์เข้าถึงอ็อบเจกต์ใน Database เดียว |
USE ROLE <Role Name>ใช้ USE SECONDARY ROLES <role_name> เพื่อเปิดใช้งาน Role เฉพาะกลุ่ม
USE SECONDARY ROLES NONE เพื่อจำกัดให้ใช้เฉพาะ Primary Role
ควบคุม Secondary Roles ใน Session
USE SECONDARY ROLES ALL;
USE SECONDARY ROLES <role_name>;
USE SECONDARY ROLES NONE;
มอบสิทธิ์ SELECT อัตโนมัติสำหรับตารางใหม่ที่เพิ่มใน Schema นี้
GRANT SELECT ON FUTURE TABLES
IN SCHEMA core
TO ROLE credit_read;
การจัดการ กำกับดูแล และการทำงานร่วมกันใน Snowflake