-
Notifications
You must be signed in to change notification settings - Fork 828
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
Manage organization roles #1726
Conversation
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: spiffxp The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/uncc @bartsmykla @mikedanese |
I like the idea! but don't know enough GCP stuff to review thoroughly. +1 to ship and iterate too! |
E_TOOMUCHBASH and depends on yq, but now we can define custom roles using something that looks like a spec
need to substitute in full role name depending on whether creating as project role or organization role output diff of role
refresh to pick up new permissions added to predefined roles, and grant read access to all buckets/objects within a project
this was reverse-engineered from a role that's already in the org, presumably manually created a long time ago
this was reverse-engineered from a role that already exists in the org, presumably manually created a long time ago
intended to supplement the roles/owner binding given to org admins, and to replace the additional role bindings used for org admins - removed redundant roles from the list used to generate this - added role to administer folders
add two individual users to the redundant role bindings just in case this ends up locking out the group
e2bdb69
to
2afc352
Compare
Rebased due to #1733 |
/lgtm |
/hold |
/hold cancel |
Using the same process as https://gist.github.com/spiffxp/7d2bfaa9c510de89a7f2ce1c31ec1a00, I removed the early exit and ran The resulting diff for k8s-infra-gcp-org-admins' permissions looks expected; nothing lost, and resourecemanager.folder permissions gained.
|
/kind feature |
This addresses most of #1659
To do so I added a script to generate roles out of other roles/permissions (#1656).
A role spec looks like the following:
Sadly, I did this with bash and yq. Redoing this with go would be a great help-wanted.
Updates the following managed org roles:
prow.viewer
- Auditingroles/viewer
fromk8s-infra-e2e-prow-viewers@
made me realize they don't have view access to buckets in most e2e projects. Now they will.Adds the following previously unmanaged org roles:
CustomRole
- not a good name, but held off on migrating to better name until I get some historical contextStorageBucketLister
- this can go away once audit.viewer is liveAdds the following new managed org roles:
audit.viewer
- replace the sundry bindings used byk8s-infra-gcp-auditors@
organization.admin
- replace the sundry non-roles/owner
bindings used byk8s-infra-gcp-org-admins@
There is a little more followup I would like to do to close out #1659, but not in this PR:
ServiceAccountLister
role out of projects and up into the org (but keep the binding(s) project level)StorageBucketLister
unless there's a reason to keep it around