Grants
A grant provides access to specific data objects in a data source.
The what-links also define the permissions that the grant provides to the users.
When defining the who-links, you have the option to immediately grant the access or to pre-approve the access, which mean that the access will automatically be granted when the user creates an Access Request for this Grant Access Control.
Permissions
When adding a data object in the what-list of a grant, you also have to specify which permissions you want to grant on this data object.
The available permissions are determined by the type of data object and the data source that the data object is in. For example: on a Snowflake table, permissions like SELECT
, INSERT
, … will be available.
Data objects on a higher level will also show the permissions that are available on all its descendants. For example: on a Snowflake schema, you will also see the SELECT
permission, which means that the SELECT
permission will be applied on all tables and views in that schema.
On top of these, 3 additional permissions are always available to provide a high-level abstraction on top of the data source specific permissions: Read
, Write
and Admin
.
These global permissions will be unpacked to data source specific permissions when the access control is synced to the data source.
For example: on a Snowflake table, the Read
permission will translate into the SELECT
permission, while the Write
permission is unpacked to the INSERT
, UPDATE
, DELETE
and TRUNCATE
permissions. This mapping is determined by the CLI connector plugin.
Creating a Grant
To create a new grant, navigate to Access controls > Grants
and click Create grant
in the top right corner of the page.
ℹ️ To create a new grant, you need be at least owner of one or more data objects or have the global
Access Manager
orAccess Creator
role in Raito. See User Management for more information on roles in Raito.
A wizard will be shown to guide you through the different steps to create a new grant.
- In the first step, a name for the grant must be provided.
For data sources where grants are represented by named entities (e.g. roles), this display name will be used to generate that (technical) name from.
Additionally, an optional description of the grant can be provided in this step as well. It is recommended to do this to make clear what this grant is for.
- In step 2, you must select the data source this grant is for. Grants are always part of a single data source. To provide access to multiple data sources with the same access control, use a purpose instead.
- Once you selected the data source, step 3 will become available to select the data objects you want to grant access to.
- To add a data object, click the
+ Add Data object
link. - In the panel that pops up, select the type of data object(s) you want to add and then search for the actual data objects.
- Now click
Add data object
to add the data object to the what-list of you new grant.
You can also add other grants here to inherit the what-list from those.
Note: If you do not own the data objects or grants you would like to add, an access request will be started and assigned to the owners to add these to your grant. - For each data object in the list, you can select which permissions should be granted.
- To add a data object, click the
- In the last step, you can select the beneficiaries (who-list) of this grant.
- Click the
+ Add Beneficiary
link. - First, you will be asked to choose whether you want to grant the access immediately or only want to pre-approve access in case the user creates an access request for this grant. When the user creates the access request, access will automatically be granted for the timeframe you predefined. This mechanism is a great way to implement a least-privilege access mindset.
- In the next step, you can then select the users, groups, grants and/or purposes you want to provide access to this grant.
- Now click the
Add
button to add the new beneficiaries to the grant. - For each beneficiary, a date can be chosen until which this grant (or pre-approval) remains valid. After this time, the access will automatically be revoked again.
- Click the
- Click
Publish grant
. A dialog will pop up showing an overview of the changes that will be made. - Choose
Publish grant
again to store the changes.
When a CLI is running against the data source you picked, your new (or updated) grant will automatically be synchronized with the data source.