Snowflake Role Based Access Control (RBAC)
Snowflake recommends that roles are used for authorizing access to database objects instead of allowing direct access to objects by individual users. Roles may be granted to other roles, and this enables the Snowflake administrator to create access control hierarchies that act as building blocks for creating an overall access control strategy.
There is some excellent information out there about Snowflake Role Based Access Control or RBAC for short that can be used as a starting point to learn the basics, such as this document on Snowflake Community and a series of posts written by John Ryan here, here and here.
In this post I want to summarize the concepts of role based access control and then point out some additional considerations when implementing it.
Here is a summary of best practices when setting up role based access control (RBAC):
Define a set of functional roles that will be granted to users according to how they will be using the database, for example...