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: truek0rdent.mirantis.com/aggregate-to-namespace-admin: truek0rdent.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: truek0rdent.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: truek0rdent.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