

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 將IAM政策升級為 IPv6
<a name="arex-security-ipv6-upgrade"></a>

AWS 資源總管 客戶使用IAM政策來設定允許的 IP 位址範圍，並防止任何超出設定範圍的 IP 位址能夠存取資源總管APIs。

*資源瀏覽器 -2。*region*託管資源總管的 .api.aws * 網域APIs正IPv6在升級以支援。IPv4

未更新以處理IPv6位址的 IP 位址篩選原則可能會導致用戶端無法存取 Resource Explorer API 網域上的資源。

## 受IPv4到從升級到影響的客戶 IPv6
<a name="customers-impacted"></a>

針對包含 *aws* 的政策使用雙重定址的客戶sourceIp會受到此升級的影響。雙位址代表網路同時支援IPv4和IPv6。

如果您使用雙重定址，IAM則必須更新目前使用IPv4格式位址設定的原則，以包含IPv6格式位址。

如需存取問題的協助，請聯絡[支援](https://support.console.aws.amazon.com/support/home/?nc1=f_dr#/case/create)。

**注意**  
下列客戶*不*受此升級的影響：  
*只*有IPv4網路上的客戶。
*只*有IPv6網路上的客戶。

## 什麼是IPv6？
<a name="what-is-ipv6"></a>

IPv6是旨在最終取代的下一代 IP 標準IPv4。舊版使用 32 位元定址配置來支援 43 億部裝置。IPv4IPv6而是使用 128 位元定址來支援約 340 萬億億 (或 2 到 128 功率) 的裝置。

```
2001:cdba:0000:0000:0000:0000:3257:9652
2001:cdba:0:0:0:0:3257:9652
2001:cdba::3257:965
```

## 更新IAM政策 IPv6
<a name="updating-for-ipv6"></a>

IAM原則目前用於使用`aws:SourceIp`篩選器設定允許的 IP 位址範圍。

雙尋址支援IPv4和IPV6流量。如果您的網路使用雙重定址，您必須確定任何用於 IP 位址篩選的原IAM則都已更新，以包含位IPv6址範圍。

例如，此 Amazon S3 儲存貯體政策可識別允許的IPv4地址範圍`192.0.2.0.*`和`Condition`元素`203.0.113.0.*`中。

```
# https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_examples_aws_deny-ip.html
{
    "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"
            }
        }
    }
}
```

若要更新此原則，原則的`Condition`元素會更新為包含IPv6位址範圍`2001:DB8:1234:5678::/64`和`2001:cdba:3257:8593::/64`。

**注意**  
做現有NOTREMOVE的IPv4地址，因為它們是向後兼容性所需的。

```
"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"
            }
        }
```

如需有關使用管理存取權限的詳細資訊IAM，請參閱*AWS Identity and Access Management 使用指南*中的[受管理原則和內嵌政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html)。

## 驗證您的客戶可以支持 IPv6
<a name="testing-connection"></a>

客戶使用*資源瀏覽器 -2。 建議 \$1region\$1 .api.aws* 端點驗證其客戶端是否可以訪問已啟用的其他 AWS 服務 端點。IPv6下列步驟說明如何驗證這些端點。

此範例使用 Linux 和 curl 版本 8.6.0，並使用已IPv6啟用位於 *api.* aws 網域的[端點的 Amazon Athena 服務](https://docs.aws.amazon.com/general/latest/gr/athena.html)端點。

**注意**  
切換 AWS 區域 到用戶端所在的相同區域。在此範例中，我們使用美國東部 (維吉尼亞北部) `us-east-1` 端點。

1. 使用下列 curl 命令判斷端點是否以IPv6位址解析。

   ```
   dig +short AAAA athena.us-east-1.api.aws
   2600:1f18:e2f:4e05:1a8a:948e:7c08:d2d6
   2600:1f18:e2f:4e03:4a1e:83b0:8823:4ce5
   2600:1f18:e2f:4e04:34c3:6e9a:2b0d:dc79
   ```

1. 確定客戶端網絡是否可以IPv6使用以下 curl 命令進行連接。

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

   如果識別出遠端 IP **且**回應碼沒有`0`，表示已使用成功與端點建立網路連線IPv6。

如果遠端 IP 為空白或回應碼為`0`，則用戶端網路或端點的網路路徑為IPv4僅限。您可以使用以下 curl 命令驗證此配置。

```
curl -o /dev/null --silent -w "\nremote ip: %{remote_ip}\nresponse code: %{response_code}\n" https://athena.us-east-1.api.aws

remote ip: 3.210.103.49
response code: 404
```

如果識別出遠端 IP **且**回應碼沒有`0`，表示已使用成功與端點建立網路連線IPv4。遠端 IP 應該是位IPv4址，因為作業系統應該選取對用戶端有效的通訊協定。如果遠端 IP 不是位IPv4址，請使用下列指令強制 curl 使用IPv4。

```
curl --ipv4 -o /dev/null --silent -w "\nremote ip: %{remote_ip}\nresponse code: %{response_code}\n" https://athena.us-east-1.api.aws

remote ip: 35.170.237.34
response code: 404
```