Autorização do Envoy Proxy - AWS App Mesh

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Autorização do Envoy Proxy

Importante

Aviso de fim do suporte: em 30 de setembro de 2026, AWS o suporte para o. AWS App Mesh Depois de 30 de setembro de 2026, você não poderá mais acessar o AWS App Mesh console ou os AWS App Mesh recursos. Para obter mais informações, visite esta postagem no blog Migrando do AWS App Mesh Amazon ECS Service Connect.

A autorização de proxy autoriza o proxy Envoy executado em uma ECS tarefa da Amazon, em um pod Kubernetes executado na Amazon ou em execução em uma instância EKS da Amazon a ler a configuração de um ou mais endpoints de malha do App Mesh Envoy Management Service. EC2 Para contas de clientes que já têm Envoys conectados ao endpoint do App Mesh antes de 26/04/2021, a autorização de proxy é necessária para nós virtuais que usam Transport Layer Security (TLS) e para gateways virtuais (com ou sem). TLS Para contas de clientes que desejam conectar os Envoys ao endpoint do App Mesh após 26/04/2021, a autorização de proxy é necessária para todos os recursos do App Mesh. É recomendável que todas as contas de clientes habilitem a autorização de proxy para todos os nós virtuais, mesmo que não usemTLS, para ter uma experiência segura e consistente de uso IAM para autorização de recursos específicos. A autorização de proxy exige que a appmesh:StreamAggregatedResources permissão seja especificada em uma IAM política. A política deve ser anexada a uma IAM função, e essa IAM função deve ser anexada ao recurso computacional no qual você hospeda o proxy.

Criar IAM política

Se quiser que todos os endpoints de malha em uma malha de serviços possam ler a configuração de todos os endpoints de malha, pule para Criar IAM função. Se você quiser limitar os pontos de extremidade de malha a partir dos quais a configuração pode ser lida por pontos de extremidade de malha individuais, é necessário criar uma ou mais IAM políticas. É recomendável limitar os endpoints de malha dos quais a configuração pode ser lida apenas ao proxy Envoy em execução nos recursos computacionais específicos. Crie uma IAM política e adicione a appmesh:StreamAggregatedResources permissão à política. O exemplo de política a seguir permite a configuração dos nós virtuais nomeados serviceBv1 e serviceBv2 a serem lidos em uma malha de serviços. A configuração não pode ser lida para nenhum outro nó virtual definido na malha de serviços. Para obter mais informações sobre como criar ou editar uma IAM política, consulte Criação de IAM políticas e edição de IAM políticas.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "appmesh:StreamAggregatedResources", "Resource": [ "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/serviceBv1", "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/serviceBv2" ] } ] }

É possível criar várias políticas, sendo que cada política restringe o acesso a diferentes endpoints da malha.

Criar IAM função

Se você quiser que todos os endpoints de malha em uma malha de serviço possam ler a configuração de todos os endpoints de malha, basta criar uma IAM função. Se quiser limitar os endpoints de malha a partir dos quais a configuração pode ser lida por endpoints de malha individuais, é necessário criar um perfil para cada política criada na etapa anterior. Conclua as instruções para o recurso computacional no qual o proxy é executado.

  • Amazon EKS — Se você quiser usar uma única função, poderá usar a função existente que foi criada e atribuída aos nós de trabalho quando você criou seu cluster. Para usar várias funções, seu cluster deve atender aos requisitos definidos em Habilitando IAM funções para contas de serviço em seu cluster. Crie as IAM funções e associe-as às contas de serviço do Kubernetes. Para obter mais informações, consulte Criação de uma IAM função e política para sua conta de serviço e Especificação de uma IAM função para sua conta de serviço.

  • Amazon ECS — Selecione o AWS serviço, selecione o Elastic Container Service e, em seguida, selecione o caso de uso do Elastic Container Service Task ao criar sua IAM função.

  • Amazon EC2 — Selecione o AWS serviço, selecione e EC2, em seguida, selecione o caso de EC2uso ao criar sua IAM função. Isso se aplica se você hospeda o proxy diretamente em uma EC2 instância da Amazon ou no Kubernetes em execução em uma instância.

Para obter mais informações sobre como criar uma IAM função, consulte Criando uma função para um AWS serviço.

Anexar IAM política

Se você quiser que todos os endpoints de malha em uma malha de serviço possam ler a configuração de todos os endpoints de malha, anexe a IAM política AWSAppMeshEnvoyAccess gerenciada à IAM função que você criou na etapa anterior. Se quiser limitar os endpoints de malha a partir dos quais a configuração pode ser lida por endpoints de malha individuais, anexe cada política que você criou a cada perfil criado. Para obter mais informações sobre como anexar uma IAM política personalizada ou gerenciada a uma IAM função, consulte Adicionar permissões de IAM identidade.

Anexar IAM função

Anexe cada IAM função ao recurso computacional apropriado:

  • Amazon EKS — Se você anexou a política à função associada aos seus nós de trabalho, você pode pular esta etapa. Se criou perfis separados, atribua cada perfil a uma conta de serviço separada do Kubernetes e atribua cada conta de serviço a uma especificação individual de implantação do pod do Kubernetes que inclua o proxy Envoy. Para obter mais informações, consulte Especificação de uma IAM função para sua conta de serviço no Guia do EKS usuário da Amazon e Configurar contas de serviço para pods na documentação do Kubernetes.

  • Amazon ECS — anexe uma função de ECS tarefa da Amazon à definição de tarefa que inclui o proxy Envoy. A tarefa pode ser implantada com o tipo de lançamento EC2 ou Fargate. Para obter mais informações sobre como criar uma função de ECS tarefa da Amazon e anexá-la a uma tarefa, consulte Especificando uma IAM função para suas tarefas.

  • Amazon EC2 — A IAM função deve ser anexada à EC2 instância da Amazon que hospeda o proxy Envoy. Para obter mais informações sobre como anexar uma função a uma EC2 instância da Amazon, consulte Eu criei uma IAM função e agora quero atribuí-la a uma EC2 instância.

Confirmar permissão

Confirme se a permissão appmesh:StreamAggregatedResources foi atribuída ao recurso computacional no qual você host o proxy selecionando um dos nomes do serviço de computação.

Amazon EKS

Uma política personalizada pode ser atribuída à função atribuída aos nós de processamento, aos pods individuais ou a ambos. No entanto, é recomendável atribuir à política somente em pods individuais, para que você possa restringir o acesso de pods individuais a endpoints de malha individuais. Se a política estiver anexada à função atribuída aos nós de trabalho, selecione a EC2 guia Amazon e conclua as etapas encontradas lá para suas instâncias de nós de trabalho. Para determinar qual IAM função é atribuída a um pod do Kubernetes, conclua as etapas a seguir.

  1. Veja os detalhes de uma implantação do Kubernetes que inclui o pod ao qual você deseja confirmar se uma conta de serviço do Kubernetes estiver atribuída. O comando a seguir exibe os detalhes de uma implantação chamada my-deployment.

    kubectl describe deployment my-deployment

    Na saída retornada, observe o valor à direita de Service Account:. Se uma linha que começa com Service Account: não existir, uma conta de serviço personalizada do Kubernetes não estará atualmente atribuída à implantação. Você precisará atribuí-la. Para obter mais informações, consulte Configurar contas de serviço para pods na documentação do Kubernetes.

  2. Veja os detalhes da conta de serviço retornada na etapa anterior. O comando a seguir exibe os detalhes de uma conta de serviço chamada my-service-account.

    kubectl describe serviceaccount my-service-account

    Desde que a conta de serviço do Kubernetes esteja associada a uma AWS Identity and Access Management função, uma das linhas retornadas será semelhante ao exemplo a seguir.

    Annotations:         eks.amazonaws.com/role-arn=arn:aws:iam::123456789012:role/my-deployment

    No exemplo anterior, my-deployment está o nome da IAM função à qual a conta de serviço está associada. Se a saída da conta de serviço não contiver uma linha semelhante ao exemplo acima, a conta de serviço do Kubernetes não está associada a uma AWS Identity and Access Management conta e você precisa associá-la a uma. Para obter mais informações, consulte Especificação de uma IAM função para sua conta de serviço.

  3. Faça login no AWS Management Console e abra o IAM console em https://console.aws.amazon.com/iam/.

  4. No painel de navegação à esquerda, selecione Roles. Selecione o nome da IAM função que você anotou em uma etapa anterior.

  5. Confirme se a política personalizada que criou anteriormente ou a política gerenciada AWSAppMeshEnvoyAccess está listada. Se nenhuma política estiver anexada, anexe uma IAM política à IAM função. Se você quiser anexar uma IAM política personalizada, mas não tiver uma, precisará criar uma IAM política personalizada com as permissões necessárias. Se uma IAM política personalizada estiver anexada, selecione a política e confirme se ela contém"Action": "appmesh:StreamAggregatedResources". Caso contrário, você precisará adicionar essa permissão à sua IAM política personalizada. Você também pode confirmar se o Amazon Resource Name (ARN) apropriado para um endpoint de malha específico está listado. Se nenhum ARNs estiver listado, você poderá editar a política para adicionar, remover ou alterar a listaARNs. Para obter mais informações, consulte Editar IAM políticas Criar IAM política e.

  6. Repita as etapas anteriores para cada pod do Kubernetes que contém o proxy Envoy.

Amazon ECS
  1. No ECS console da Amazon, escolha Definições de tarefas.

  2. Selecione sua ECS tarefa na Amazon.

  3. Na página Nome da definição da tarefa, selecione a definição da tarefa.

  4. Na página Definição da Tarefa, selecione o link do nome da IAM função que está à direita da Função da Tarefa. Se uma IAM função não estiver listada, você precisará criar uma IAM função e anexá-la à sua tarefa atualizando sua definição de tarefa.

  5. Na página Resumo, na guia Permissões, confirme se a política personalizada criada anteriormente ou a política gerenciada AWSAppMeshEnvoyAccess está listada. Se nenhuma política estiver anexada, anexe uma IAM política à IAM função. Se você quiser anexar uma IAM política personalizada, mas não tiver uma, precisará criar a IAM política personalizada. Se uma IAM política personalizada estiver anexada, selecione a política e confirme se ela contém"Action": "appmesh:StreamAggregatedResources". Caso contrário, você precisará adicionar essa permissão à sua IAM política personalizada. Você também pode confirmar se o Amazon Resource Name (ARN) apropriado para um endpoint de malha específico está listado. Se nenhum ARNs estiver listado, você poderá editar a política para adicionar, remover ou alterar a listaARNs. Para obter mais informações, consulte Editar IAM políticas Criar IAM política e.

  6. Repita as etapas anteriores para cada definição de tarefa que contém o proxy Envoy.

Amazon EC2
  1. No EC2 console da Amazon, selecione Instâncias no painel de navegação à esquerda.

  2. Selecione uma de suas instâncias que hospeda o proxy Envoy.

  3. Na guia Descrição, selecione o link do nome da IAM função que está à direita da IAMfunção. Se uma IAM função não estiver listada, você precisará criar uma IAM função.

  4. Na página Resumo, na guia Permissões, confirme se a política personalizada criada anteriormente ou a política gerenciada AWSAppMeshEnvoyAccess está listada. Se nenhuma política estiver anexada, anexe a IAM política à IAM função. Se você quiser anexar uma IAM política personalizada, mas não tiver uma, precisará criar a IAM política personalizada. Se uma IAM política personalizada estiver anexada, selecione a política e confirme se ela contém"Action": "appmesh:StreamAggregatedResources". Caso contrário, você precisará adicionar essa permissão à sua IAM política personalizada. Você também pode confirmar se o Amazon Resource Name (ARN) apropriado para um endpoint de malha específico está listado. Se nenhum ARNs estiver listado, você poderá editar a política para adicionar, remover ou alterar a listaARNs. Para obter mais informações, consulte Editar IAM políticas Criar IAM política e.

  5. Repita as etapas anteriores para cada instância em que você host o proxy Envoy.