Skip to content

UI Support for New Global Roles Fields #9728

@MbolotSuse

Description

@MbolotSuse

Is your feature request related to a problem? Please describe.

The backend is adding support for 4 new fields on global role objects:

  • InheritedClusterRoles: The names of RoleTemplates whose permissions are granted by this GlobalRole in every cluster besides the local cluster.
    • RC - Key Points
      • array of strings
      • Roles apply to ALL downstream clusters, present and future. Does NOT apply to local cluster
      • Role may only exist in downstream cluster, UI cannot show pre-populated list of existing cluster roles
      • This sees to be a way to avoid manually assigning users/groups a cluster role every time a new cluster is created
  • NamespacedRules: A map of the namespaces to the rules that this GlobalRole provides in that namespace.
    • RC - Key Points
      • map of namespace name to array of Grants (resources + verbs)
      • DOES apply to local cluster. Does NOT apply to downstream.
      • This seems to be a way to allow limited access to the local cluster
  • Status: The status of the backing RBAC for this GlobalRole.
    • RC - Key Points
      • Think this contains the status of all the native rbac resources used to support this global role
  • InheritedFleetWorkspacePermissions: Allows granting access to all fleet workspaces except fleet-local.
    • RC - Key Points
      • two properties
        • ResourceRules - array of grants. Applies to ALL workspaces EXCEPT local. Allows user with this role to user fleet to manage resources in all clusters in all workspaces EXCEPT those in local local(?)
        • WorkspaceVerbs - array of verbs. verb permissions on the workspace resource itself cover every workspace EXCEPT local
      • Used in the Restricted Admin replacement global role i.e this seems to be admin level like permissions in Fleet... excluding local workspace and local cluster

While the UI does not need to support these fields immediately, eventually it should include support for users to edit the first two fields, and view the second (whatever form that ends up taking).

Note: Backend support for these values is currently a work in progress. This issue exists mostly for tracking purposes at the moment, and will be updated once the backend has fully implemented the above fieds.

Describe the solution you'd like
The UI should allow users to add/remove the names of existing role templates to the InheritedClusterRoles field.
The UI should allow users to add/remove rules (using the same format/UI currently used for the Rules field) specific to namespaces using the NamespaceRules field.
The UI should read the Status field, and change the display of a global role in some way to indicate the status of a GlobalRole.

Describe alternatives you've considered
N/A

Additional context
Backend Issues:

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions