RBAC, DAC și Ierarhia Obiectelor Securizabile

Administrare, Guvernanță și Colaborare în Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Prezentare Claro

  • Aplicație globală de construire a creditului Logo fictiv pentru Claro
Administrare, Guvernanță și Colaborare în Snowflake

Problema Accesului

access_control.png

Administrare, Guvernanță și Colaborare în Snowflake

Elementele de Bază

Un privilegiu este o permisiune de a acționa:

  • SELECT: citire
  • INSERT: scriere
  • CREATE: creare
Termen Definiție
Privilegiu Permisiunea de a efectua o acțiune (ex. SELECT, INSERT, CREATE)
Obiect Orice entitate căreia i se poate acorda un privilegiu (tabel, schemă, bază de date, depozit)
Rol O entitate căreia i se acordă privilegii; poate fi atribuit utilizatorilor sau altor roluri
Utilizator O persoană sau cont de serviciu care se conectează la Snowflake și deține roluri
Administrare, Guvernanță și Colaborare în Snowflake

Controlul Accesului Bazat pe Roluri (RBAC): Cum Funcționează

 

Flux de la stânga la dreapta: privilegiu, rol și utilizator

Administrare, Guvernanță și Colaborare în Snowflake

Implementarea RBAC

Acordarea unui privilegiu unui rol

GRANT SELECT ON TABLE core.credit_scores
  TO ROLE analyst_role;

Atribuirea unui rol unui utilizator

GRANT ROLE analyst_role TO USER maria;
1 [Snowflake: Access Control Privileges](https://docs.snowflake.com/en/user-guide/security-access-control-privileges)
Administrare, Guvernanță și Colaborare în Snowflake

Controlul Accesului Discreționar (DAC)

Partiție care arată DAC înainte și după transfer

  • Fiecare obiect are un proprietar = un rol, nu o persoană
  • RBAC definește structura rolurilor
  • DAC determină ce controlează fiecare rol
Administrare, Guvernanță și Colaborare în Snowflake

Transferul Proprietății

Transferul proprietății către un alt rol

-- Current owner: SYSADMIN
GRANT OWNERSHIP ON TABLE core.credit_scores
  TO ROLE data_engineer
  REVOKE CURRENT GRANTS;
Administrare, Guvernanță și Colaborare în Snowflake

Ierarhia Obiectelor Securizabile

Ierarhia Obiectelor Securizabile

Administrare, Guvernanță și Colaborare în Snowflake

Aplicarea USAGE la Fiecare Nivel

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;
Administrare, Guvernanță și Colaborare în Snowflake

Roluri Definite de Sistem

 

Rol Responsabilitate
ACCOUNTADMIN Control complet al contului
SYSADMIN Creează baze de date și depozite
SECURITYADMIN Politici de rețea, mascare, gestionare roluri
USERADMIN Creează utilizatori și atribuie roluri
PUBLIC Rol implicit pentru fiecare utilizator
1 [Snowflake: Access Control Overview](https://docs.snowflake.com/en/user-guide/security-access-control-overview)
Administrare, Guvernanță și Colaborare în Snowflake

Să exersăm!

Administrare, Guvernanță și Colaborare în Snowflake

Preparing Video For Download...