Modelo RBAC
Snowflake usa Role-Based Access Control. Los privilegios se asignan a roles, y los roles se asignan a usuarios.
Roles de sistema
| Rol | Descripción |
|---|---|
| ACCOUNTADMIN | Superusuario, combina SYSADMIN y SECURITYADMIN |
| SECURITYADMIN | Gestiona usuarios y roles |
| SYSADMIN | Gestiona warehouses y objetos |
| USERADMIN | Crea y gestiona usuarios |
| PUBLIC | Rol por defecto de todos los usuarios |
Crear roles personalizados
-- Crear un rol para analistas
CREATE ROLE analyst;
-- Dar acceso a una base de datos
GRANT USAGE ON DATABASE mi_proyecto TO ROLE analyst;
GRANT USAGE ON SCHEMA mi_proyecto.analytics TO ROLE analyst;
GRANT SELECT ON ALL TABLES IN SCHEMA mi_proyecto.analytics TO ROLE analyst;
-- Asignar el rol a un usuario
GRANT ROLE analyst TO USER juan;
Jerarquía de roles
Los roles forman una jerarquía. Un rol padre hereda todos los privilegios de sus roles hijos.
GRANT ROLE analyst TO ROLE sysadmin;
Próximos pasos
Has completado la sección de Fundamentos. Continúa con SQL en Snowflake para profundizar.