RBAC, DAC và phân cấp đối tượng có thể bảo mật

Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Giới thiệu Claro

  • Ứng dụng xây dựng tín dụng toàn cầu Logo giả của Claro
Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Vấn đề truy cập

access_control.png

Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Các khối xây dựng

Đặc quyền là quyền thực hiện hành động:

  • SELECT: đọc
  • INSERT: ghi
  • CREATE: tạo
Thuật ngữ Định nghĩa
Privilege Quyền thực hiện hành động (vd. SELECT, INSERT, CREATE)
Object Bất cứ thứ gì có thể cấp đặc quyền (bảng, schema, database, warehouse)
Role Thực thể được cấp đặc quyền; có thể cấp cho người dùng hoặc vai trò khác
User Cá nhân hoặc tài khoản dịch vụ kết nối Snowflake và nắm giữ vai trò
Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Kiểm soát truy cập dựa trên vai trò (RBAC): Cách hoạt động

 

Luồng từ trái sang phải của đặc quyền, vai trò và người dùng

Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Triển khai RBAC

Cấp đặc quyền cho vai trò

GRANT SELECT ON TABLE core.credit_scores
  TO ROLE analyst_role;

Gán vai trò cho người dùng

GRANT ROLE analyst_role TO USER maria;
1 [Snowflake: Access Control Privileges](https://docs.snowflake.com/en/user-guide/security-access-control-privileges)
Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Discretionary Access Control (DAC)

Phân vùng cho thấy DAC trước và sau khi chuyển giao

  • Mỗi đối tượng có một chủ sở hữu = một vai trò, không phải cá nhân
  • RBAC xác định cấu trúc vai trò
  • DAC quyết định mỗi vai trò kiểm soát gì
Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Chuyển quyền sở hữu

Chuyển quyền sở hữu sang vai trò khác

-- Chủ sở hữu hiện tại: SYSADMIN
GRANT OWNERSHIP ON TABLE core.credit_scores
  TO ROLE data_engineer
  REVOKE CURRENT GRANTS;
Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Phân cấp đối tượng có thể bảo mật

Phân cấp đối tượng có thể bảo mật

Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Áp dụng USAGE ở mọi cấp

GRANT USAGE ON DATABASE <your_database>
  TO ROLE analyst_role;

GRANT USAGE ON SCHEMA core
  TO ROLE analyst_role;

GRANT SELECT ON TABLE core.credit_scores
  TO ROLE analyst_role;
Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Vai trò hệ thống định nghĩa

 

Vai trò Trách nhiệm
ACCOUNTADMIN Toàn quyền quản trị tài khoản
SYSADMIN Tạo cơ sở dữ liệu và warehouse
SECURITYADMIN Chính sách mạng, masking policy, quản lý vai trò
USERADMIN Tạo người dùng và gán vai trò
PUBLIC Vai trò mặc định cho mọi người dùng
1 [Snowflake: Access Control Overview](https://docs.snowflake.com/en/user-guide/security-access-control-overview)
Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Ayo berlatih!

Quản trị, Quản trị dữ liệu & Cộng tác trên Snowflake

Preparing Video For Download...