

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á.

# Limitando o acesso do agente em um AWS Conta
<a name="aws-devops-agent-security-limiting-agent-access-in-an-aws-account"></a>

AWS DevOps O agente usa funções do IAM para descobrir e descrever AWS recursos durante investigações de incidentes e avaliações preventivas. Você pode controlar o nível de acesso que o agente tem configurando as políticas do IAM anexadas a essas funções. A topologia do aplicativo não mostra tudo ao qual o agente tem acesso — as políticas do IAM são a única maneira de realmente limitar quais APIs e recursos AWS de serviço o agente pode acessar.

## Entendendo as funções do IAM para AWS DevOps Agente
<a name="understanding-iam-roles-for-aws-devops-agent"></a>

AWS DevOps O agente usa funções do IAM para acessar recursos em dois tipos de contas:
+ **Função principal da conta** — concede ao agente acesso aos recursos na AWS conta em que você criou o Espaço do Agente.
+ **Funções secundárias da conta** — concede ao agente acesso aos recursos em AWS contas adicionais que você conecta ao Espaço do Agente.

Para qualquer tipo de conta, você pode restringir quais AWS serviços o agente pode acessar, limitar o acesso a recursos específicos dentro desses serviços e controlar em quais regiões o agente pode operar.

## Entendendo as barreiras de proteção de permissão
<a name="understanding-permission-guardrails"></a>

AWS DevOps O agente aplica uma proteção de permissão a cada sessão que cria ao acessar seus AWS recursos. Essa grade de proteção funciona como um teto — ela define o conjunto máximo de permissões que o agente pode usar, independentemente das permissões que você concede na função do IAM.

### Como funciona
<a name="how-it-works"></a>

Quando o agente assume sua função do IAM, ele passa uma [política de sessão](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) que limita as permissões efetivas para essa sessão. As permissões efetivas são a interseção de:

1. **Suas políticas de função do IAM** — A política gerenciada e todas as políticas embutidas que você anexar à função.

1. **A barreira de permissão** — Uma política de sessão aplicada pelo AWS DevOps Agente no momento de assumir a função.

Uma permissão deve estar presente nas duas camadas para entrar em vigor. Se você adicionar uma permissão à sua função que não esteja incluída na grade de proteção, o agente não poderá usá-la.

### Permissões padrão
<a name="default-permissions"></a>

A política `AIDevOpsAgentAccessPolicy` gerenciada fornece o conjunto padrão de permissões somente para leitura que o agente usa para investigações. Essas permissões estão incluídas na grade de proteção, portanto, funcionam sem configuração adicional.

### Estendendo as permissões além do padrão
<a name="extending-permissions-beyond-the-default"></a>

AWS DevOps O agente oferece suporte a um conjunto selecionado de permissões adicionais além da política gerenciada padrão. Essas permissões estão incluídas na grade de proteção, mas não são habilitadas por padrão. Para usá-las, adicione as permissões específicas à sua função como uma política embutida.

Por exemplo, para permitir que o agente leia objetos de seus buckets do S3 durante as investigações, adicione uma política embutida à sua função:

```
{
  "Version": "2012-10-17",		 	 	 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::my-application-bucket",
        "arn:aws:s3:::my-application-bucket/*"
      ]
    }
  ]
}
```

Por `s3:GetObject` estar `s3:ListBucket` incluída na grade de proteção, essa política em linha entra em vigor. Você pode definir o escopo `Resource` de dois compartimentos específicos para seguir o princípio do menor privilégio.

### Permissões adicionais suportadas
<a name="supported-additional-permissions"></a>

As permissões a seguir estão incluídas na grade de proteção e podem ser ativadas adicionando-as à sua função como uma política embutida. Eles não são concedidos por padrão — você deve se inscrever explicitamente.


| Serviço | Ações | Caso de uso | 
| --- | --- | --- | 
| Amazon S3 | s3:GetObject, s3:ListBucket | Leia dados, registros ou configurações do aplicativo armazenados no S3 | 
| AWS Direct Connect | directconnect:DescribeConnections, directconnect:DescribeDirectConnectGatewayAssociations, directconnect:DescribeDirectConnectGateways, directconnect:DescribeLags, directconnect:DescribeVirtualInterfaces | Investigue problemas de conectividade de rede | 

**Observação:** essa lista pode se expandir com o tempo, à medida que novos recursos são adicionados ao AWS DevOps Agente. As permissões não listadas aqui ou na política `AIDevOpsAgentAccessPolicy` gerenciada são bloqueadas pela grade de proteção.

### Permissões bloqueadas pela grade de proteção
<a name="permissions-blocked-by-the-guardrail"></a>

Se você adicionar uma permissão à sua função que não esteja na grade de proteção, o agente não poderá usá-la. Isso ocorre intencionalmente — a barreira impede que o agente execute ações fora do escopo pretendido, mesmo que a função as permitisse.

Por exemplo, operações de gravação como `s3:PutObject``ec2:TerminateInstances`, ou não `dynamodb:DeleteItem` estão incluídas na grade de proteção. Mesmo que sua função conceda essas permissões, o agente não poderá realizar essas ações.

### Resumo
<a name="summary"></a>


| Camada | Quem controla isso | Finalidade | 
| --- | --- | --- | 
| Políticas de função do IAM | You | Defina o que você pretende que o agente seja capaz de fazer | 
| Guardrail de permissão | AWS DevOps Agente | Define o máximo que o agente pode fazer | 
| Permissões efetivas | Interseção de ambos | O que o agente pode realmente fazer | 

Esse modelo garante que o agente opere dentro de um limite de segurança bem definido, ao mesmo tempo em que oferece flexibilidade para ampliar seus recursos para seu caso de uso específico.

## Escolhendo seus limites de recursos
<a name="choosing-your-resource-boundaries"></a>

Ao limitar o acesso aos recursos, você precisa incluir permissões suficientes para que o agente investigue com êxito os incidentes do aplicativo. Isso inclui:
+ Todos os recursos para aplicativos dentro do escopo que o agente deve monitorar e investigar
+ Toda a infraestrutura de suporte da qual esses aplicativos dependem

A infraestrutura de suporte pode incluir:
+ Componentes de rede (VPCs, sub-redes, balanceadores de carga, gateways de API)
+ Armazenamentos de dados (bancos de dados, caches, armazenamento de objetos)
+ Recursos computacionais (instâncias EC2, funções Lambda, contêineres)
+ Serviços de monitoramento e registro (CloudWatch, CloudTrail)
+ Recursos de gerenciamento de identidade e acesso necessários para entender as permissões

Se você restringir o acesso de forma muito restrita, talvez o agente não consiga identificar as causas-raiz que se originam na infraestrutura de suporte fora dos limites definidos.

## Restringindo o acesso ao serviço
<a name="restricting-service-access"></a>

Você pode limitar quais AWS serviços o agente pode acessar modificando as políticas do IAM anexadas às funções do agente. Ao criar políticas personalizadas, siga estas melhores práticas:
+ **Conceda somente permissões de leitura** — O agente precisa ler as configurações, métricas e registros dos recursos durante as investigações. Evite conceder permissões que permitam ao agente modificar ou excluir recursos.
+ **Limite aos serviços necessários** — inclua somente AWS os serviços que contêm recursos relevantes para seus aplicativos. Por exemplo, se seu aplicativo não usa o Amazon RDS, não inclua as permissões do RDS na política.
+ **Use ações específicas em vez de curingas** — em vez de conceder `service:*` permissões, especifique ações individuais, como ou`cloudwatch:GetMetricData`. `ec2:DescribeInstances`

Exemplo de política de restrição a serviços específicos:

```
json

{
  "Version": "2012-10-17",		 	 	 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloudwatch:GetMetricData",
        "cloudwatch:GetMetricStatistics",
        "cloudwatch:DescribeAlarms",
        "logs:GetLogEvents",
        "logs:FilterLogEvents",
        "ec2:DescribeInstances",
        "lambda:GetFunction",
        "lambda:GetFunctionConfiguration"
      ],
      "Resource": "*"
    }
  ]
}
```

## Restringindo o acesso aos recursos
<a name="restricting-resource-access"></a>

Para limitar o agente a recursos específicos em um serviço, use permissões em nível de recurso em suas políticas do IAM. Isso permite que você conceda acesso somente a recursos que correspondam a padrões específicos.

**Usando padrões de ARN de recursos:**

```
{
  "Version": "2012-10-17",		 	 	 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "lambda:GetFunction",
        "lambda:GetFunctionConfiguration"
      ],
      "Resource": "arn:aws:lambda:*:*:function:production-*"
    }
  ]
}
```

Este exemplo limita o agente a acessar somente funções do Lambda com nomes que começam com “production-”.

**Usando restrições baseadas em tags:**

```
{
  "Version": "2012-10-17",		 	 	 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ec2:DescribeInstances",
        "ec2:DescribeInstanceStatus"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/Environment": "production"
        }
      }
    }
  ]
}
```

Este exemplo limita o agente a acessar somente instâncias do EC2 marcadas com`Environment=production`.

## Restringindo o acesso regional
<a name="restricting-regional-access"></a>

Para limitar quais AWS regiões o agente pode acessar, use a chave de `aws:RequestedRegion` condição em suas políticas do IAM:

```
{
  "Version": "2012-10-17",		 	 	 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ec2:Describe*",
        "lambda:Get*",
        "cloudwatch:Get*"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:RequestedRegion": [
            "us-east-1",
            "us-west-2"
          ]
        }
      }
    }
  ]
}
```

Este exemplo limita o agente a acessar recursos somente nas regiões us-east-1 e us-west-2.

## Criação de políticas personalizadas do IAM
<a name="creating-custom-iam-policies"></a>

Ao criar um Agent Space ou adicionar contas secundárias, você tem a opção de criar uma função personalizada do IAM usando um modelo de política. Isso permite que você implemente o princípio do menor privilégio.

**Ao criar um Espaço do Agente**

No console do DevOps agente no console AWS de gerenciamento...
+ Escolha **Criar uma nova função de DevOps agente usando um documento de política** e siga as instruções

**Ao editar um Espaço do Agente**

No console do DevOps agente no console AWS de gerenciamento...
+ Selecione a guia **Capacidades**
+ Selecione a conta secundária que você deseja editar **na seção Nuvem** e clique em Editar
+ Escolha **Criar uma nova política de DevOps agente usando um modelo** e siga as instruções.

## Práticas recomendadas de políticas personalizadas
<a name="custom-policy-best-practices"></a>
+ **Conceda permissões somente de leitura — evite permissões** que permitam a modificação ou exclusão de recursos
+ **Use permissões em nível de recurso quando possível** — restrinja o acesso a recursos específicos usando padrões ou tags de ARN
+ **Revise e audite regularmente as permissões** — revise periodicamente as políticas de IAM do agente para garantir que elas ainda estejam alinhadas aos seus requisitos de segurança