Snowflake, a world-famous cloud database has something unique in its access control which makes it different from other traditional databases. Snowflake support RBAC (Role-based Access Control) which helps to create a role hierarchy to provide state-of-the-art access control to departments and users in the organization on the snowflake database.
let’s understand what is Access control, Role, RBAC
Access control: It is the privileges that determine who can access and perform specific operations on snowflake database objects.
Role: An entity to which privileges can be granted. Roles are in turn assigned to users. Note that roles can also be assigned to other roles, creating a role hierarchy.
RBAC: Access privileges are assigned to roles, which are in turn assigned to users.
Role hierarchy access model.
Roles are granted to other roles to form an inheritance relationship. Permissions granted to roles at a lower level are inherited by roles at a higher level.
For e.g, if a role at a lower level has ‘select’ access on XYZ table in the case higher level role to which this role is granted will automatically have select on the XYZ table.
The benefit of using the Role hierarchy access model is that whenever you create a…