Roles summary#
Note
The names of the ClusterRole objects may have different prefixes depending on the name of the k0rdent Helm chart.
The ClusterRole object definitions below use the kcm prefix, which is the default name of the k0rdent Helm chart.
Global Admin#
The Global Admin role provides full administrative access across all the k0rdent system.
Name: kcm-global-admin-role
Aggregation Rule: Includes all ClusterRoles with the labels:
- k0rdent.mirantis.com/aggregate-to-global-admin: true
- k0rdent.mirantis.com/aggregate-to-namespace-admin: true
- k0rdent.mirantis.com/aggregate-to-namespace-editor: true
Permissions:
- Full access to the k0rdent API
- Full access to Flux Helm repositories and Helm charts
- Full access to Cluster API identities
- Full access to namespaces and secrets
Use case
A user with the Global Admin role is authorized to perform the following actions:
- Manage the k0rdent configuration
- Manage namespaces in the management cluster
- Manage ProviderTemplateobjects: add new templates or remove unneeded ones
- Manage ClusterTemplateandServiceTemplateobjects in any namespace, including adding and removing templates
- Manage Flux HelmRepositoryandHelmChartobjects in any namespace
- Manage access rules for ClusterTemplateandServiceTemplateobjects, including distributing templates across namespaces usingTemplateChainobjects
- Manage upgrade sequences for ClusterTemplateandServiceTemplateobjects
- Manage and deploy Services across multiple clusters in any namespace by modifying MultiClusterServiceresources
- Manage ClusterDeploymentobjects in any namespace
- Manage CredentialandSecretobjects in any namespace
- Upgrade k0rdent
- Uninstall k0rdent
Global Viewer#
The Global Viewer role grants read-only access across the k0rdent system. It does not permit any modifications,
including the creation of clusters.
Name: kcm-global-viewer-role
Aggregation Rule: Includes all ClusterRole objects with the labels:
- k0rdent.mirantis.com/aggregate-to-global-viewer: true
- k0rdent.mirantis.com/aggregate-to-namespace-viewer: true
Permissions:
- Read access to k0rdent API
- Read access to Flux Helm repositories and Helm charts
- Read access to Cluster API identities
- Read access to namespaces and secrets
Use case
A user with the Global Viewer role is authorized to perform the following actions:
- View the k0rdent configuration
- List namespaces available in the management cluster
- List and get the detailed information about available ProviderTemplateobjects
- List available ClusterTemplateandServiceTemplateobjects in any namespace
- List and view detailed information about Flux HelmRepositoryandHelmChartobjects in any namespace
- View access rules for ClusterTemplateandServiceTemplateobjects, includingTemplateChainobjects in any namespace
- View full details about the created MultiClusterServiceobjects
- List and view detailed information about ClusterDeploymentobjects in any namespace
- List and view detailed information about created CredentialandSecretobjects in any namespace
Namespace Admin#
The Namespace Admin role provides full administrative access within a namespace.
Name: kcm-namespace-admin-role
Aggregation Rule: Includes all ClusterRole objects with the labels:
- k0rdent.mirantis.com/aggregate-to-namespace-admin: true
- k0rdent.mirantis.com/aggregate-to-namespace-editor: true
Permissions:
- Full access to ClusterDeployment,Credential,ClusterTemplateandServiceTemplateobjects in the namespace
- Full access to TemplateChainobjects in the namespace
- Full access to Flux HelmRepositoryandHelmChartobjects in the namespace
Use case
A user with the Namespace Admin role is authorized to perform the following actions within the namespace:
- Create and manage all ClusterDeploymentobjects in the namespace
- Create and manage ClusterTemplateandServiceTemplateobjects in the namespace
- Manage the distribution and upgrade sequences of Templates within the namespace
- Create and manage Flux HelmRepositoryandHelmChartobjects in the namespace
- Manage Credentialobjects created by any user in the namespace
Namespace Editor#
The Namespace Editor role allows users to create and modify ClusterDeployment objects within namespace using predefined
Credential and Template objects.
Name: kcm-namespace-editor-role
Aggregation Rule: Includes all ClusterRole objects with the labels:
- k0rdent.mirantis.com/aggregate-to-namespace-editor: true
Permissions:
- Full access to ClusterDeploymentobjects in the allowed namespace
- Read access to Credential,ClusterTemplateandServiceTemplate, andTemplateChainobjects in the namespace
- Read access to Flux HelmRepositoryandHelmChartobjects in the namespace
Use case
A user with the Namespace Editor role has the following permissions in the namespace:
- Can create and manage ClusterDeploymentobjects in the namespace using existingCredentialandTemplateobjects
- Can list and view detailed information about the Credentialobjects available in the namespace
- Can list and view detailed information about the available ClusterTemplateandServiceTemplateobjects and theTemplateupgrade sequences
- Can list and view detailed information about the Flux HelmRepositoryandHelmChartobjects
Namespace Viewer#
The Namespace Viewer role grants read-only access to resources within a namespace.
Name: kcm-namespace-viewer-role
Aggregation Rule: Includes all ClusterRole objects with the labels:
- k0rdent.mirantis.com/aggregate-to-namespace-viewer: true
Permissions:
- Read access to ClusterDeploymentobjects in the namespace
- Read access to Credential,ClusterTemplate,ServiceTemplate, andTemplateChainobjects in the namespace
- Read access to Flux HelmRepositoryandHelmChartobjects in the namespace
Use case
A user with the Namespace Viewer role has the following permissions in the namespace:
- Can list and view detailed information about all the ClusterDeploymentobjects in the allowed namespace
- Can list and view detailed information about Credentialobjects available in the specific namespace
- Can list and view detailed information about available ClusterTemplateandServiceTemplateobjects, andTemplateupgrade sequences
- Can list and view detailed information about Flux HelmRepositoryandHelmChartobjects