Comprendre les RBAC rôles et les utilisateurs EKS créés par Amazon - Amazon EKS

Aidez à améliorer cette page

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Vous souhaitez contribuer à ce guide de l'utilisateur ? Faites défiler cette page vers le bas et sélectionnez Modifier cette page sur GitHub. Vos contributions contribueront à améliorer notre guide de l'utilisateur pour tous.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Comprendre les RBAC rôles et les utilisateurs EKS créés par Amazon

Lorsque vous créez un Kubernetes cluster, plusieurs par défaut Kubernetes des identités sont créées sur ce cluster pour le bon fonctionnement de Kubernetes. Amazon EKS crée Kubernetes identités pour chacun de ses composants par défaut. Les identités fournissent Kubernetes contrôle d'autorisation basé sur les rôles (RBAC) pour les composants du cluster. Pour plus d'informations, consultez la section Utilisation de RBAC l'autorisation dans le Kubernetes .

Lorsque vous installez des EKSModules complémentaires Amazon modules complémentaires facultatifs sur votre cluster, Kubernetes des identités peuvent être ajoutées à votre cluster. Pour plus d'informations sur les identités non abordées dans cette rubrique, consultez la documentation du module complémentaire.

Vous pouvez consulter la liste des Amazon EKS créés Kubernetes identités sur votre cluster à l'aide de l'outil de ligne de kubectl commande AWS Management Console or. Toutes les identités des utilisateurs apparaissent dans les journaux kube d'audit mis à votre disposition via Amazon CloudWatch.

AWS Management Console

.Prérequis Le IAMprincipal que vous utilisez doit disposer des autorisations décrites dans la section Autorisations Autorisations nécessaires requises.

  1. Ouvrez la EKSconsole Amazon.

  2. Dans la liste Clusters, sélectionnez le cluster qui contient les identités que vous souhaitez afficher.

  3. Sélectionnez l'onglet Ressources.

  4. Sous Resource types (Types de ressources), sélectionnez Authorization (Autorisation).

  5. Choisissez, ClusterRolesClusterRoleBindings, Rôles ou RoleBindings. Toutes les ressources préfacées avec eks sont créées par AmazonEKS. Les ressources d'identité supplémentaires EKS créées par Amazon sont les suivantes :

    • Le ClusterRoleet ClusterRoleBindingnommé aws-node. Les ressources aws-node prennent en charge le VPC CNI plugin Amazon VPC CNI Amazon pour Kubernetes, qu'EKSAmazon installe sur tous les clusters.

    • Un ClusterRolenom vpc-resource-controller-roleet un ClusterRoleBindingnom vpc-resource-controller-rolebinding. Ces ressources prennent en charge le contrôleur de VPC ressources Amazon, qu'Amazon EKS installe sur tous les clusters.

Outre les ressources affichées dans la console, les identités utilisateur spéciales suivantes existent sur votre cluster, bien qu'elles ne soient pas visibles dans la configuration du cluster :

+

  • eks:cluster-bootstrap— Utilisé pour les kubectl opérations lors du bootstrap du cluster.

  • eks:support-engineer— Utilisé pour les opérations de gestion de clusters.

    1. Choisissez une ressource spécifique pour afficher les détails la concernant. Par défaut, les informations s'affichent en mode structuré. Dans le coin supérieur droit de la page de détails, vous pouvez sélectionner Raw view (Vue brute) pour afficher toutes les informations relative à la ressource.

Kubectl

.Prérequis L'entité que vous utilisez (AWS Identity and Access Management (IAM) ou OpenID Connect (OIDC)) pour répertorier les Kubernetes les ressources du cluster doivent être authentifiées par IAM ou par votre OIDC fournisseur d'identité. L'entité doit être autorisée à utiliser le Kubernetes getet list des verbes désignant le RoleClusterRole,RoleBinding, et les ClusterRoleBinding ressources de votre cluster avec lesquelles vous souhaitez que l'entité fonctionne. Pour plus d'informations sur l'octroi d'un accès aux IAM entités à votre cluster, consultezAccorder IAM aux utilisateurs et aux rôles l'accès à Kubernetes APIs. Pour plus d'informations sur l'octroi d'entités authentifiées par vos propres moyens OIDC accès du fournisseur à votre cluster, voirAccorder aux utilisateurs l'accès à Kubernetes avec un appareil externe OIDC provider. .Pour afficher les identités EKS créées par Amazon, utilisez kubectl Exécutez la commande correspondant au type de ressource que vous souhaitez voir. Toutes les ressources renvoyées préfacées par eks sont créées par AmazonEKS. Outre les ressources renvoyées dans le résultat des commandes, les identités utilisateur spéciales suivantes existent sur votre cluster, bien qu'elles ne soient pas visibles dans la configuration du cluster :

  • eks:cluster-bootstrap— Utilisé pour les kubectl opérations lors du bootstrap du cluster.

  • eks:support-engineer— Utilisé pour les opérations de gestion de clusters.

    ClusterRolesClusterRoles sont limitées à votre cluster, de sorte que toute autorisation accordée à un rôle s'applique aux ressources de n'importe quel Kubernetes espace de noms sur le cluster.

    La commande suivante renvoie tous les Amazon EKS créés Kubernetes ClusterRolessur votre cluster.

    kubectl get clusterroles | grep eks

    Outre les ClusterRoles renvoyés dans la sortie, les ClusterRoles suivants sont disponibles.

  • aws-node— Cela ClusterRole prend en charge le VPC CNI plugin Amazon VPC CNI Amazon pour Kubernetes, qu'Amazon EKS installe sur tous les clusters.

  • vpc-resource-controller-role— Cela ClusterRole prend en charge le contrôleur de VPC ressources Amazon, qu'Amazon EKS installe sur tous les clusters.

    Pour voir les spécifications d'unClusterRole, remplacez eks:k8s-metrics dans la commande suivante avec un ClusterRole renvoyé dans la sortie de la commande précédente. L'exemple suivant renvoie la spécification pour le eks:k8s-metrics ClusterRole.

    kubectl describe clusterrole eks:k8s-metrics

    L'exemple qui suit illustre un résultat.

    Name: eks:k8s-metrics Labels: <none> Annotations: <none> PolicyRule: Resources Non-Resource URLs Resource Names Verbs --------- ----------------- -------------- ----- [/metrics] [] [get] endpoints [] [] [list] nodes [] [] [list] pods [] [] [list] deployments.apps [] [] [list]

    ClusterRoleBindingsClusterRoleBindings sont limités à votre cluster.

    La commande suivante renvoie tous les Amazon EKS créés Kubernetes ClusterRoleBindingssur votre cluster.

    kubectl get clusterrolebindings | grep eks

    En plus des ClusterRoleBindings renvoyés dans la sortie, les ClusterRoleBindings suivants sont disponibles.

  • aws-node— Cela ClusterRoleBinding prend en charge le VPC CNI plugin Amazon VPC CNI Amazon pour Kubernetes, qu'Amazon EKS installe sur tous les clusters.

  • vpc-resource-controller-rolebinding— Cela ClusterRoleBinding prend en charge le contrôleur de VPC ressources Amazon, qu'Amazon EKS installe sur tous les clusters.

Pour voir les spécifications d'unClusterRoleBinding, remplacez eks:k8s-metrics dans la commande suivante avec un ClusterRoleBinding renvoyé dans la sortie de la commande précédente. L'exemple suivant renvoie la spécification pour le eks:k8s-metrics ClusterRoleBinding.

+

kubectl describe clusterrolebinding eks:k8s-metrics

+ Voici un exemple de sortie.

+

Name: eks:k8s-metrics Labels: <none> Annotations: <none> Role: Kind: ClusterRole Name: eks:k8s-metrics Subjects: Kind Name Namespace ---- ---- --------- User eks:k8s-metrics

+ RôlesRoles sont limités à un Kubernetes espace de noms. Toutes les EKS créations Amazon Roles sont limitées à l'espace de kube-system noms.

+ La commande suivante renvoie tous les Amazon EKS créés Kubernetes Rolessur votre cluster.

+

kubectl get roles -n kube-system | grep eks

+ Pour voir les spécifications d'unRole, remplacez eks:k8s-metrics dans la commande suivante avec le nom de a Role renvoyé dans la sortie de la commande précédente. L'exemple suivant renvoie la spécification pour le eks:k8s-metrics Role.

+

kubectl describe role eks:k8s-metrics -n kube-system

+ Voici un exemple de sortie.

+

Name: eks:k8s-metrics Labels: <none> Annotations: <none> PolicyRule: Resources Non-Resource URLs Resource Names Verbs --------- ----------------- -------------- ----- daemonsets.apps [] [aws-node] [get] deployments.apps [] [vpc-resource-controller] [get]

+ RoleBindingsRoleBindings sont limités à un Kubernetes espace de noms. Toutes les EKS créations Amazon RoleBindings sont limitées à l'espace de kube-system noms.

+ La commande suivante renvoie tous les Amazon EKS créés Kubernetes RoleBindingssur votre cluster.

+

kubectl get rolebindings -n kube-system | grep eks

+ Pour voir les spécifications d'unRoleBinding, remplacez eks:k8s-metrics dans la commande suivante avec un RoleBinding renvoyé dans la sortie de la commande précédente. L'exemple suivant renvoie la spécification pour le eks:k8s-metrics RoleBinding.

+

kubectl describe rolebinding eks:k8s-metrics -n kube-system

+ Voici un exemple de sortie.

+

Name: eks:k8s-metrics Labels: <none> Annotations: <none> Role: Kind: Role Name: eks:k8s-metrics Subjects: Kind Name Namespace ---- ---- --------- User eks:k8s-metrics