RBAC, DAC och hierarkin för säkringsbara objekt

Snowflake-hantering, styrning och samarbete

Emily Melhuish

Technical Curriculum Developer, Snowflake

Introduktion till Claro

  • Global app för kredituppbyggnad Fejkad logotyp för Claro
Snowflake-hantering, styrning och samarbete

Åtkomstproblemet

access_control.png

Snowflake-hantering, styrning och samarbete

Grundläggande begrepp

En behörighet är en rättighet att utföra en åtgärd:

  • SELECT: läsa
  • INSERT: skriva
  • CREATE: skapa
Term Definition
Behörighet Rättighet att utföra en åtgärd (t.ex. SELECT, INSERT, CREATE)
Objekt Allt som en behörighet kan beviljas på (tabell, schema, databas, lager)
Roll En entitet som tilldelas behörigheter; kan beviljas till användare eller andra roller
Användare En person eller ett tjänstkonto som ansluter till Snowflake och innehar roller
Snowflake-hantering, styrning och samarbete

Rollbaserad åtkomstkontroll (RBAC): Så fungerar det

 

Flöde från vänster till höger: behörighet, roll och användare

Snowflake-hantering, styrning och samarbete

Implementera RBAC

Bevilja behörighet till en roll

GRANT SELECT ON TABLE core.credit_scores
  TO ROLE analyst_role;

Tilldela roll till en användare

GRANT ROLE analyst_role TO USER maria;
1 [Snowflake: Access Control Privileges](https://docs.snowflake.com/en/user-guide/security-access-control-privileges)
Snowflake-hantering, styrning och samarbete

Discretionary Access Control (DAC)

Partition som visar DAC före och efter överföring

  • Varje objekt har en ägare = en roll, inte en person
  • RBAC definierar rollstrukturen
  • DAC bestämmer vad varje roll kontrollerar
Snowflake-hantering, styrning och samarbete

Överföra ägarskap

Överför ägarskap till en annan roll

-- Current owner: SYSADMIN
GRANT OWNERSHIP ON TABLE core.credit_scores
  TO ROLE data_engineer
  REVOKE CURRENT GRANTS;
Snowflake-hantering, styrning och samarbete

Hierarkin för säkringsbara objekt

Hierarki för säkringsbara objekt

Snowflake-hantering, styrning och samarbete

Tillämpa USAGE på varje nivå

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-hantering, styrning och samarbete

Systemdefinierade roller

 

Roll Ansvar
ACCOUNTADMIN Fullständig kontroll över kontot
SYSADMIN Skapar databaser och lager
SECURITYADMIN Nätverkspolicyer, maskeringspolicyer, rollhantering
USERADMIN Skapar användare och tilldelar roller
PUBLIC Standardroll för varje användare
1 [Snowflake: Access Control Overview](https://docs.snowflake.com/en/user-guide/security-access-control-overview)
Snowflake-hantering, styrning och samarbete

Låt oss öva!

Snowflake-hantering, styrning och samarbete

Preparing Video For Download...