Saber mais sobre identidade e acesso no Modo Automático do EKS - Amazon EKS

Ajudar a melhorar esta página

Para contribuir com este guia de usuário, escolha o link Editar esta página no GitHub, disponível no painel direito de cada página.

Saber mais sobre identidade e acesso no Modo Automático do EKS

Este tópico descreve os perfis e as permissões do Identity and Access Management (IAM) necessários para usar o Modo Automático do EKS. O Modo Automático do EKS usa dois perfis principais do IAM: um perfil do IAM do cluster e um perfil do IAM do nó. Esses perfis trabalham em conjunto com a Identidade de Pods do EKS e as entradas de acesso do EKS para fornecer gerenciamento de acesso abrangente para os clusters do EKS.

Ao configurar o Modo Automático do EKS, você precisará configurar esses perfis do IAM com permissões específicas que permitam que os serviços da AWS interajam com os recursos do cluster. Isso inclui permissões para gerenciar recursos computacionais, volumes de armazenamento, balanceadores de carga e componentes de rede. Compreender essas configurações de perfil é essencial para a operação e a segurança adequadas do cluster.

No Modo Automático do EKS, os perfis do AWS IAM são mapeados automaticamente para as permissões do Kubernetes por meio de entradas de acesso do EKS, eliminando a necessidade de configuração manual de ConfigMaps aws-auth ou vinculações personalizadas. Quando você cria um novo cluster no modo automático, o EKS cria automaticamente as permissões correspondentes do Kubernetes usando entradas de acesso, garantindo que os componentes do cluster e serviços da AWS tenham os níveis de acesso apropriados nos sistemas de autorização da AWS e do Kubernetes. Essa integração automatizada reduz a complexidade da configuração e ajuda a evitar problemas relacionados a permissões que geralmente ocorrem ao gerenciar clusters do EKS.

Função do IAM do cluster

O perfil do IAM do cluster é um perfil do AWS Identity and Access Management (IAM) usado pelo Amazon EKS para gerenciar permissões para clusters do Kubernetes. Esse perfil concede ao Amazon EKS as permissões necessárias para interagir com outros serviços da AWS em nome do cluster, e é configurado automaticamente com as permissões do Kubernetes usando entradas de acesso do EKS.

  • Você também deve anexar políticas do AWS IAM ao perfil.

  • O Modo Automático do EKS anexa permissões do Kubernetes a esse perfil automaticamente usando entradas de acesso do EKS.

  • Com o Modo Automático do EKS, a AWS sugere a criação de um único perfil do IAM do cluster por conta da AWS.

  • A AWS sugere nomear esse perfil AmazonEKSAutoClusterRole.

  • Esse perfil exige permissões para vários serviços da AWS gerenciarem recursos, incluindo volumes do EBS, Elastic Load Balancers e instâncias do EC2.

  • A configuração sugerida para esse perfil inclui várias políticas do IAM gerenciadas pela AWS, relacionadas aos diferentes recursos do Modo Automático do EKS.

    • AmazonEKSComputePolicy

    • AmazonEKSBlockStoragePolicy

    • AmazonEKSLoadBalancingPolicy

    • AmazonEKSNetworkingPolicy

    • AmazonEKSClusterPolicy

Para obter mais informações sobre o perfil do IAM do cluster e políticas do IAM gerenciadas pela AWS, consulte:

Para obter mais informações sobre o acesso do Kubernetes, consulte:

Perfil do IAM do nó

O perfil do IAM do nó é um perfil do AWS Identity and Access Management (IAM) usado pelo Amazon EKS para gerenciar permissões para nós de processamento em clusters do Kubernetes. Esse perfil concede às instâncias do EC2 executadas como nós do Kubernetes as permissões necessárias para interagir com os serviços e recursos da AWS, e é configurado automaticamente com permissões de RBAC do Kubernetes usando entradas de acesso do EKS.

  • Você também deve anexar políticas do AWS IAM ao perfil.

  • O Modo Automático do EKS anexa permissões de RBAC do Kubernetes a esse perfil automaticamente usando entradas de acesso do EKS.

  • A AWS sugere nomear esse perfil AmazonEKSAutoNodeRole.

  • Com o Modo Automático do EKS, a AWS sugere a criação de um único perfil do IAM do nó por conta da AWS.

  • Esse perfil tem permissões limitadas. As principais permissões incluem assumir um perfil de Identidade de Pods e extrair imagens do ECR.

  • A AWS sugere as seguintes políticas do IAM gerenciadas pela AWS:

    • AmazonEKSWorkerNodeMinimalPolicy

    • AmazonEC2ContainerRegistryPullOnly

Para obter mais informações sobre o perfil do IAM do cluster e políticas do IAM gerenciadas pela AWS, consulte:

Para obter mais informações sobre o acesso do Kubernetes, consulte:

Perfil vinculado a serviço

O Amazon EKS usa um perfil vinculado ao serviço (SLR) para determinadas operações. A função vinculada ao serviço é um tipo exclusivo de função do IAM vinculada diretamente ao Amazon EKS. As funções vinculadas a serviços são predefinidas pelo Amazon EKS e incluem todas as permissões que o serviço requer para chamar outros serviços da AWS em seu nome.

A AWS cria e configura automaticamente o SLR. Você poderá excluir um SLR somente depois de primeiro excluir seus recursos relacionados. Isso protege seus recursos do Amazon EKS, pois você não pode remover por engano as permissões para acessar os recursos.

A política de SLR concede ao Amazon EKS permissões para observar e excluir os principais componentes da infraestrutura: recursos do EC2 (instâncias, interfaces de rede, grupos de segurança), recursos do ELB (balanceadores de carga, grupos de destino), recursos do CloudWatch (registro em log e métricas) e perfis do IAM com o prefixo "eks". Também habilita a rede de endpoints privados por meio da associação da VPC e zona hospedada e inclui permissões para o monitoramento do EventBridge e limpeza dos recursos marcados com o EKS.

Para obter mais informações, consulte:

Tags da AWS personalizadas para recursos do Modo Automático do EKS.

Por padrão, as políticas gerenciadas relacionadas ao Modo Automático do EKS não permitem a aplicação de tags definidas pelo usuário aos recursos da AWS provisionados pelo Modo Automático. Caso queira aplicar tags definidas pelo usuário aos recursos da AWS, você deverá anexar permissões adicionais ao perfil do IAM do cluster com permissões suficientes para criar e modificar tags nos recursos da AWS. Segue abaixo um exemplo de uma política que permitirá acesso irrestrito à marcação:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Compute", "Effect": "Allow", "Action": [ "ec2:CreateFleet", "ec2:RunInstances", "ec2:CreateLaunchTemplate" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}" }, "StringLike": { "aws:RequestTag/eks:kubernetes-node-class-name": "*", "aws:RequestTag/eks:kubernetes-node-pool-name": "*" } } }, { "Sid": "Storage", "Effect": "Allow", "Action": [ "ec2:CreateVolume", "ec2:CreateSnapshot" ], "Resource": [ "arn:aws:ec2:*:*:volume/*", "arn:aws:ec2:*:*:snapshot/*" ], "Condition": { "StringEquals": { "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}" } } }, { "Sid": "Networking", "Effect": "Allow", "Action": "ec2:CreateNetworkInterface", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}" }, "StringLike": { "aws:RequestTag/eks:kubernetes-cni-node-name": "*" } } }, { "Sid": "LoadBalancer", "Effect": "Allow", "Action": [ "elasticloadbalancing:CreateLoadBalancer", "elasticloadbalancing:CreateTargetGroup", "elasticloadbalancing:CreateListener", "elasticloadbalancing:CreateRule", "ec2:CreateSecurityGroup" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}" } } }, { "Sid": "ShieldProtection", "Effect": "Allow", "Action": [ "shield:CreateProtection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}" } } }, { "Sid": "ShieldTagResource", "Effect": "Allow", "Action": [ "shield:TagResource" ], "Resource": "arn:aws:shield::*:protection/*", "Condition": { "StringEquals": { "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}" } } } ] }

Referência de política de acesso

Para obter mais informações sobre as permissões do Kubernetes usadas pelo Modo Automático do EKS, consulte Analisar permissões da política de acesso.