

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

# Controlar o acesso à API com políticas do IAM
<a name="ip-access"></a>

Se você usa políticas do IAM para controlar o acesso Serviços da AWS com base em endereços IP, talvez seja necessário atualizar suas políticas para incluir intervalos de IPv6 endereços. Este guia explica as diferenças entre IPv4 e IPv6 e descreve como atualizar suas políticas do IAM para oferecer suporte a ambos os protocolos. A implementação dessas mudanças ajuda você a manter o acesso seguro aos seus AWS recursos e, ao mesmo tempo, oferecer suporte IPv6.

## O que é IPv6?
<a name="what-is-ipv6"></a>

IPv6 é o padrão IP de próxima geração destinado a ser substituído eventualmente IPv4. A versão anterior, IPv4, usa um esquema de endereçamento de 32 bits para suportar 4,3 bilhões de dispositivos. IPv6 em vez disso, usa endereçamento de 128 bits para suportar aproximadamente 340 trilhões de trilhões de trilhões (ou 2 até a 128ª potência) de dispositivos. 

Para obter mais informações, consulte a página da [ IPv6Web sobre VPC](https://aws.amazon.com/vpc/ipv6/).

Estes são exemplos de IPv6 endereços:

```
2001:cdba:0000:0000:0000:0000:3257:9652 # This is a full, unabbreviated IPv6 address.
2001:cdba:0:0:0:0:3257:9652             # The same address with leading zeros in each group omitted
2001:cdba::3257:965                     # A compressed version of the same address.
```

## Políticas de pilha dupla (IPv4 e) do IAM IPv6
<a name="ipv6-access"></a>

Você pode usar políticas do IAM para controlar o acesso ao Secrets Manager APIs e impedir que endereços IP fora do intervalo configurado acessem o Secrets Manager APIs.

O gerente de *segredos. O endpoint de pilha dupla \$1region\$1 .amazonaws.com* para Secrets Manager é compatível com e. APIs IPv6 IPv4

Se você precisar oferecer suporte a ambos IPv6, IPv4 atualize suas políticas de filtragem de endereços IP para lidar com IPv6 endereços. Caso contrário, talvez você não consiga se conectar ao Secrets Manager IPv6.

### Quem deve fazer essa alteração?
<a name="customers-impacted"></a>

Essa alteração afetará você caso use o endereçamento duplo com políticas que contenham `aws:sourceIp`. *O endereçamento duplo* significa que a rede suporta IPv4 tanto IPv6 e. 

Se você usa endereçamento duplo, atualize suas políticas do IAM que atualmente usam endereços de IPv4 formato para incluir endereços de IPv6 formato.

### Quem não deve fazer essa alteração?
<a name="customers-not-impacted"></a>

Essa alteração não afetará você se você usar *apenas* IPv4 redes.

## Adicionando IPv6 a uma política do IAM
<a name="updating-for-ipv6"></a>

As políticas do IAM usam a chave de condição `aws:SourceIp` para controlar o acesso a partir de endereços IP específicos. Se sua rede usa endereçamento duplo (IPv4 e IPv6), atualize suas políticas do IAM para incluir intervalos de IPv6 endereços.

No elemento `Condition` das suas políticas, use os operadores `IpAddress` e `NotIpAddress` para condições de endereço IP. Não use operadores de string, pois eles não conseguem lidar com os vários formatos de IPv6 endereço válidos.

Estes exemplos usam `aws:SourceIp`. Para VPCs, use `aws:VpcSourceIp` em vez disso.

A seguir está a política de referência de [negação de acesso AWS com base na política de referência de IP de origem](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_examples_aws_deny-ip.html) do *Guia do usuário do IAM*. O `NotIpAddress` `Condition` elemento a lista dois intervalos de IPv4 endereços `192.0.2.0/24` e`203.0.113.0/24`, aos quais será negado o acesso à API.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Deny",
        "Action": "*",
        "Resource": "*",
        "Condition": {
            "NotIpAddress": {
                "aws:SourceIp": [
                    "192.0.2.0/24",
                    "203.0.113.0/24"
                ]
            },
            "Bool": {
                "aws:ViaAWSService": "false"
            }
        }
    }
}
```

------

Para atualizar essa política, altere o `Condition` elemento para incluir os intervalos de IPv6 endereços `2001:DB8:1234:5678::/64` `2001:cdba:3257:8593::/64` e.

**nota**  
Não remova os IPv4 endereços existentes. Eles são necessários para retrocompatibilidade.

```
"Condition": {
                "NotIpAddress": {
                    "aws:SourceIp": [
                        "192.0.2.0/24", <<DO NOT REMOVE existing IPv4 address>>
                        "203.0.113.0/24", <<DO NOT REMOVE existing IPv4 address>>
                        "2001:DB8:1234:5678::/64", <<New IPv6 IP address>>
                        "2001:cdba:3257:8593::/64" <<New IPv6 IP address>>
                    ]
                },
                "Bool": {
                    "aws:ViaAWSService": "false"
                }
            }
```

Para atualizar essa política para uma VPC, use `aws:VpcSourceIp` em vez de `aws:SourceIp`:

```
"Condition": {
                "NotIpAddress": {
                    "aws:VpcSourceIp": [
                        "10.0.2.0/24", <<DO NOT REMOVE existing IPv4 address>>
                        "10.0.113.0/24", <<DO NOT REMOVE existing IPv4 address>>
                        "fc00:DB8:1234:5678::/64", <<New IPv6 IP address>>
                        "fc00:cdba:3257:8593::/64" <<New IPv6 IP address>>
                    ]
                },
                "Bool": {
                    "aws:ViaAWSService": "false"
                }
            }
```

## Verificando o suporte do seu cliente IPv6
<a name="testing-connection"></a>

Se você usar o endpoint *secretsmanager.\$1region\$1.amazonaws.com*, verifique se é possível se conectar a ele. As etapas a seguir descrevem como realizar a verificação. 

**Este exemplo usa Linux e curl versão 8.6.0 e usa o [AWS Secrets Manager serviço](https://docs.aws.amazon.com/general/latest/gr/secretsmanager.html) que IPv6 habilitou endpoints localizados no endpoint amazonaws.com.** 

**nota**  
O **secretsmanager.\$1region\$1.amazonaws.com** difere da [convenção de nomenclatura típica de pilha dupla](https://docs.aws.amazon.com/general/latest/gr/rande.html#dual-stack-endpoints). Para obter uma lista completa de endpoints do Secrets Manager, consulte [AWS Secrets Manager endpoints](asm_access.md#endpoints).  
Mude Região da AWS para a mesma região em que seu serviço está localizado. Neste exemplo, usamos o endpoint `us-east-1`, ou seja, Leste dos EUA (Norte da Virgínia).

1. Determine se o endpoint é resolvido com um IPv6 endereço usando o comando a seguir`dig`. 

   ```
   $ dig +short AAAA secretsmanager.us-east-1.amazonaws.com 
   
   > 2600:1f18:e2f:4e05:1a8a:948e:7c08:c1c3
   ```

1. Determine se a rede do cliente pode fazer uma IPv6 conexão usando o `curl` comando a seguir. Um código de resposta 404 significa uma conexão bem-sucedida, enquanto um código de resposta 0 significa falha da conexão.

   ```
   $ curl --ipv6 -o /dev/null --silent -w "\nremote ip: %{remote_ip}\nresponse code: %{response_code}\n" https://secretsmanager.us-east-1.amazonaws.com 
   
   > remote ip: 2600:1f18:e2f:4e05:1a8a:948e:7c08:c1c3
   > response code: 404
   ```

Se um IP remoto foi identificado **e** o código de resposta não`0`, uma conexão de rede foi estabelecida com sucesso com o endpoint usando IPv6. O IP remoto deve ser um IPv6 endereço porque o sistema operacional deve selecionar o protocolo válido para o cliente.

Se o IP remoto estiver em branco ou o código de resposta estiver`0`, a rede do cliente ou o caminho da rede até o endpoint será somente IPv4 -. É possível verificar isso com o seguinte comando do `curl`: 

```
$ curl -o /dev/null --silent -w "\nremote ip: %{remote_ip}\nresponse code: %{response_code}\n" https://secretsmanager.us-east-1.amazonaws.com 

> remote ip: 3.123.154.250
> response code: 404
```