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
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?
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
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
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 {region} .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?
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 oferece suporte tanto para IPv4 quanto IPv6.
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?
Essa alteração não afetará você se você usar apenas IPv4 redes.
Adicionando IPv6 a uma política do IAM
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 do Guia do usuário do IAM. O NotIpAddress Condition elemento a lista dois intervalos de IPv4 endereços 192.0.2.0/24 e203.0.113.0/24, aos quais será negado o acesso à API.
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
Se você usar o endpoint secretsmanager.{region}.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 Managerserviço que IPv6 habilitou endpoints localizados no endpoint amazonaws.com.
nota
O secretsmanager.{region}.amazonaws.com difere da convenção de nomenclatura típica de pilha dupla. Para obter uma lista completa de endpoints do Secrets Manager, consulte AWS Secrets Managerendpoints.
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).
-
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 -
Determine se a rede do cliente pode fazer uma IPv6 conexão usando o
curlcomando 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ão0, 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 estiver0, 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