RBAC, DAC і ієрархія захищуваних об’єктів

Керування, врядування й співпраця в Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Знайомство з Claro

  • Глобальний застосунок для формування кредитної історії Фейковий логотип Claro
Керування, врядування й співпраця в Snowflake

Проблема доступу

access_control.png

Керування, врядування й співпраця в Snowflake

Базові елементи

Привілей — це дозвіл на дію:

  • SELECT: читання
  • INSERT: запис
  • CREATE: створення
Термін Визначення
Привілей Дозвіл виконати дію (напр., SELECT, INSERT, CREATE)
Об’єкт Те, на що можна надати привілей (table, schema, database, warehouse)
Роль Сутність, якій надають привілеї; може надаватися користувачам або іншим ролям
Користувач Особа або сервісний обліковий запис, що підключається до Snowflake і має ролі
Керування, врядування й співпраця в Snowflake

Рольова модель доступу (RBAC): як це працює

 

Потік зліва направо: привілей, роль і користувач

Керування, врядування й співпраця в Snowflake

Реалізація RBAC

Надайте привілей ролі

GRANT SELECT ON TABLE core.credit_scores
  TO ROLE analyst_role;

Призначте роль користувачу

GRANT ROLE analyst_role TO USER maria;
1 [Snowflake: Access Control Privileges](https://docs.snowflake.com/en/user-guide/security-access-control-privileges)
Керування, врядування й співпраця в Snowflake

Discretionary Access Control (DAC)

Схема, що показує DAC до і після передачі

  • Кожен об’єкт має власника = роль, не особу
  • RBAC визначає структуру ролей
  • DAC визначає, що контролює кожна роль
Керування, врядування й співпраця в Snowflake

Передача права власності

Передайте право власності іншій ролі

-- Поточний власник: SYSADMIN
GRANT OWNERSHIP ON TABLE core.credit_scores
  TO ROLE data_engineer
  REVOKE CURRENT GRANTS;
Керування, врядування й співпраця в Snowflake

Ієрархія захищуваних об’єктів

Ієрархія захищуваних об’єктів

Керування, врядування й співпраця в Snowflake

Надання USAGE на кожному рівні

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;
Керування, врядування й співпраця в Snowflake

Системні ролі

 

Роль Відповідальність
ACCOUNTADMIN Повний контроль облікового запису
SYSADMIN Створює бази даних і сховища
SECURITYADMIN Мережеві політики, політики маскування, керування ролями
USERADMIN Створює користувачів і призначає ролі
PUBLIC Роль за замовчуванням для кожного користувача
1 [Snowflake: Access Control Overview](https://docs.snowflake.com/en/user-guide/security-access-control-overview)
Керування, врядування й співпраця в Snowflake

Попрактикуймося!

Керування, врядування й співпраця в Snowflake

Preparing Video For Download...