-
Notifications
You must be signed in to change notification settings - Fork 3k
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
[RFE] Add new "InheritedClusterRoles" field #42213
Comments
Validation TemplateWhat was fixed, or what change have occurredNew fieldA new field has been added, ControllersThe controllers for this field function in the following way:
EnqueuersIn addition, several objects have been setup that trigger changes in related objects, to ensure consistency when something other than a GlobalRoleBinding Changes.
Webhook ValidationsNew webhook checks have been added for additional security on this field. These checks are documented as part of our webhook docs, but a summary is included here for convienence. Global Roles
Global Role Bindings
ClusterRoleTemplateBindings
RoleTemplates
Areas or cases that should be testedBasic Scenarios
Advanced/Corruption Scenarios
Upgrade Scenarios
What areas could experience regressionsPerformance - this change can result in new processing time for existing global roles and associated bindings, even if they don't use Upgrade/Rollback - this introduces a new field, and as such rollback may experience some issues. Admin/Restricted Admin - Users with these GlobalRoles need to be able to create GlobalRoles with any Feature ExampleCreating a GlobalRole can be done by putting the following in apiVersion: management.cattle.io/v3
kind: GlobalRole
displayName: Example Role
description: Base user + Read-only on all downstream clusters
metadata:
name: example-gr
inheritedClusterRoles:
- projects-view
rules:
- apiGroups:
- management.cattle.io
resources:
- preferences
verbs:
- '*'
- apiGroups:
- management.cattle.io
resources:
- settings
verbs:
- get
- list
- watch
- apiGroups:
- management.cattle.io
resources:
- features
verbs:
- get
- list
- watch
- apiGroups:
- project.cattle.io
resources:
- sourcecodecredentials
verbs:
- '*'
- apiGroups:
- project.cattle.io
resources:
- sourcecoderepositories
verbs:
- '*'
- apiGroups:
- management.cattle.io
resources:
- rancherusernotifications
verbs:
- get
- list
- watch You can then create the GlobalRole using kubectl:
Users can be bound to this through the UI, or by making a globalRole by putting the following in apiVersion: management.cattle.io/v3
kind: GlobalRoleBinding
metadata:
name: example-grb
userName: u-123xyz
globalRoleName: example-gr You can then create the GlobalRoleBinding using kubectl: kubectl create -f grb.yaml |
Update: Most of the tests for this have been completed. @anupama2501 is executing the performance and backup/restore checks. Once those are done, we'll mark this issue as "Done". |
Verified the rancher backup/restore test cases:
Steps for test 3
|
Reopening for 1 more validation on performance checks. |
Updated the above comment with results. Closing the issue as validations look good. |
Release Note: Global Roles have a new optional field ( |
related to Global Roles v2
SURE-6636
The text was updated successfully, but these errors were encountered: