-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CT-581] [Feature] Grants as Node Configs #5189
Comments
Looking grand! Two things I picked up on and want to call out:
Our attitude here depends on how much of a standard exists across our relevant databases. It's likely that many many databases support
This is how I have it in the original proposal and in #5090. I'm ~85% sure it's the right data structure. There are two things that give me hesitation:
grants:
'roles/viewer': ['recipient_one', 'recipient_two']
# but should we instead opt for:
grants:
- privilege: 'roles/viewer' # or just call this attribute 'name'?
recipients: ['recipient_one', 'recipient_two']
|
✅ default implementation - edited.
and the adapter override would have the freedom to map that directly to the correct SQL grant statement for FunkyDB.
|
Good point re: 2! I had been thinking about a merge strategy of "merge" (updating specific keys, leaving keys without updates in place). If our merge strategy is indeed to clobber, it doesn't matter. |
Moved the second half of this description to #5263 |
Description
This is the first in a two ticket series. #5263 is the second ticket. They will be merged sequentially, but both are required for this feature to be exposed to users.
Today users often configure a
post_hook
to grant permissions on models, seeds, and snapshots:These two tickets aim to make it easier to specify grants allowing it to be configured directly both in dbt_project.yml as well as in source files:
These grant configs will not necessarily look the same for each and every warehouse. The logic to generate the sql from these configs can be overriden by adapters.
Implementation
The text was updated successfully, but these errors were encountered: