View a markdown version of this page

Envoyer des demandes aux registres Amazon ECR - Amazon ECR

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Envoyer des demandes aux registres Amazon ECR

Vous pouvez envoyer, extraire, supprimer, afficher et gérer des images OCI, des images Docker et des OCI-compatible artefacts dans les registres privés Amazon ECR à l'aide de points de terminaison ou de IPv4-only points de terminaison à double pile (IPv4 et IPv6). Pour effectuer des demandes depuis des réseaux IPv4, vous pouvez utiliser des points de terminaison à double pile ou IPv4. Pour effectuer des demandes depuis un réseau IPv6, utilisez un point de terminaison à double pile. Pour plus d'informations sur l'envoi de demandes aux registres publics Amazon ECR à l'aide d'IPv4 et de points de terminaison à double pile, consultez Envoyer des demandes aux registres publics Amazon ECR. Il n'y a aucun frais supplémentaire pour accéder à Amazon ECR via IPv6. Pour plus d'informations sur les tarifs, consultez les tarifs d'Amazon Elastic Container Registry.

Les points de terminaison Amazon ECR sont désignés par des attributs autres que la prise en charge des points de IPv4-only terminaison ou des points de terminaison à double pile. Ces attributs peuvent inclure :

  • Région — Chaque point de terminaison est spécifique à une région.

  • Type — La sélection du point de terminaison varie selon que vous utilisez le AWS SDK ou les interfaces OCI-compatible de ligne de commande Docker.

  • Sécurité — Dans certaines régions, Amazon ECR propose des points de FIPS-compliant terminaison. Pour plus d'informations sur la liste des points de terminaison FIPS-compliant Amazon ECR, consultez le Federal Information Processing Standard (FIPS) 140-3.

Pour plus d'informations sur les points de terminaison de service pris en charge par les clients IPv4, à double pile, Docker et OCI, qui gère les appels d'API Amazon ECR à partir de la AWS CLI AWS et des SDK, consultez la section Points de terminaison de service.

Commencer à faire des demandes via IPv6

Pour envoyer une demande à un registre Amazon ECR via IPv6, vous devez utiliser un point de terminaison à double pile. Avant d'accéder à un registre Amazon ECR via IPv6, vérifiez les conditions suivantes :

  • Votre client et votre réseau doivent prendre en charge le protocole IPv6.

  • Amazon ECR prend en charge les types de demandes suivants via IPv6 :

    • Demandes des clients OCI et Docker :

      <registry-id>.dkr-ecr.<aws-region>.on.aws

    • AWS Demandes d'API :

      ecr.<aws-region>.api.aws

  • Vous devez mettre à jour toutes les politiques Gestion des identités et des accès AWS (IAM) ou de registre qui utilisent le filtrage des adresses IP source pour inclure les plages d'adresses IPv6. Pour de plus amples informations, veuillez consulter Utilisation d’adresses IPv6 dans les politiques IAM.

  • Lorsque vous utilisez IPv6, les journaux d'accès au serveur affichent Remote IP les adresses au format IPv6. Mettez à jour vos outils, scripts et logiciels existants pour analyser ces adresses IPv6-formatted IP.

    Note

    Si vous rencontrez des problèmes liés à la présence d'adresses IPv6 dans les fichiers journaux, contactez AWS Support.

Test de compatibilité d’adresses IP

Si vous utilisez use Linux/Unix ou Mac OS X, vous pouvez vérifier si vous pouvez accéder à un point de terminaison à double pile via IPv6 en utilisant la curl commande comme indiqué dans l'exemple suivant :

Exemple
curl --verbose https://ecr.us-west-2.api.aws

Les informations que vous obtenez doivent ressembler à celles de l'exemple ci-dessous. Si vous êtes connecté via IPv6, l'adresse IP connectée est une adresse IPv6.

* About to connect() to ecr.us-west-2.api.aws port 443 (#0) * Trying IPv6 address... connected * Connected to ecr.us-west-2.api.aws (IPv6 address) port 443 (#0) > Host: ecr.us-west-2.api.aws * Request completely sent off

Si vous utilisez Microsoft Windows 7 ou Windows 10, vous pouvez vérifier si vous pouvez accéder à un point de terminaison à double pile via IPv4 ou IPv6 à l'aide de la ping commande illustrée dans l'exemple suivant.

ping ecr.us-west-2.api.aws

Envoi de demandes via IPv6 à l'aide de points de terminaison Dual-Stack

Vous pouvez passer des appels d'API Amazon ECR via IPv6 à l'aide de points de terminaison à double pile. Les fonctionnalités et les performances des opérations d'API Amazon ECR restent cohérentes, que vous utilisiez IPv4 ou IPv6.

Lorsque vous utilisez le AWS Command Line Interface (AWS CLI) et les AWS SDK, vous pouvez activer IPv6 soit en utilisant un paramètre ou un indicateur pour passer à un point de terminaison à double pile, soit en spécifiant directement le point de terminaison à double pile dans votre fichier de configuration pour remplacer le point de terminaison Amazon ECR par défaut. Vous pouvez également apporter des modifications de configuration à l'aide d'une commande définie use_dualstack_endpoint sur true dans le profil par défaut. Pour plus d'informations suruse_dualstack_endpoint, voir Dual-stack et les points de terminaison FIPS.

Exemple Modification de la configuration à l'aide d'une commande

aws configure set default.ecr.use_dualstack_endpoint true

Exemple Effectuer des demandes via IPv6 à l'aide de AWS CLI

aws ecr describe-repositories --region us-west-2 --endpoint-url https://ecr.us-west-2.api.aws

Utilisation des points de terminaison Amazon ECR depuis la CLI docker

Une fois connecté à votre référentiel Amazon ECR et étiqueté votre image, vous pouvez transférer et extraire des images OCI et des images Docker vers et depuis les registres Amazon ECR. Les exemples suivants illustrent les commandes docker push et Docker pull avec les deux points de terminaison à double pile.

Exemple Transmission d'images docker à l'aide d'un point de terminaison IPv4

docker push <registry-id>.dkr.ecr.us-west-1.amazonaws.com/my-repository:tag

Exemple Transmission d'images docker à l'aide d'un point de terminaison à double pile

docker push <registry-id>.dkr-ecr.us-west-1.on.aws/my-repository:tag

Exemple Extraction d'images docker à l'aide d'un point de terminaison IPv4

docker pull <registry-id>.dkr.ecr.us-west-1.amazonaws.com/my-repository:tag

Exemple Extraction d'images docker à l'aide d'un point de terminaison à double pile

docker pull <registry-id>.dkr-ecr.us-west-1.on.aws/my-repository:tag

Utilisation d’adresses IPv6 dans les politiques IAM

Avant d'accéder à un registre via IPv6, assurez-vous que votre utilisateur IAM et les politiques de registre Amazon ECR qui utilisent le filtrage des adresses IP incluent des plages d'adresses IPv6. Si les politiques de filtrage des adresses IP ne sont pas mises à jour pour gérer les adresses IPv6, les clients risquent de perdre ou d'accéder incorrectement au registre lorsqu'ils commencent à utiliser IPv6. Pour de plus amples informations sur la gestion des autorisations d'accès avec IAM, veuillez consulter Gestion des identités et des accès au registre de conteneur Amazon Elastic.

Les stratégies IAM qui permettent de filtrer les adresses IP utilisent des opérateurs de condition d'adresse IP. L'exemple de politique de registre suivant montre comment identifier la 54.240.143.* plage d'adresses IPv4 autorisées à l'aide des opérateurs de condition d'adresse IP. Toutes les adresses IP situées en dehors de cette plage se voient refuser l'accès au registre (exampleregistry). Comme toutes les adresses IPv6 se situent en dehors de la plage autorisée, cette politique empêche les adresses IPv6 d'y accéderexampleregistry.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "IPAllow", "Effect": "Allow", "Principal": "*", "Action": "ecr:*", "Resource": "arn:aws:ecr:*:*:repository/exampleregistry/*", "Condition": { "IpAddress": {"aws:SourceIp": "54.240.143.0/24"} } } ] }

Pour autoriser les plages d'adresses IPv4 (54.240.143.0/24) et IPv6 (2001:DB8:1234:5678::/64), modifiez l'élément Condition de la politique de registre comme indiqué dans l'exemple suivant. Vous pouvez utiliser ce format de Condition bloc pour mettre à jour vos politiques d'utilisateur et de registre IAM.

"Condition": { "IpAddress": { "aws:SourceIp": [ "54.240.143.0/24", "2001:DB8:1234:5678::/64" ] } }
Important

Avant d'utiliser IPv6, vous devez mettre à jour toutes les politiques d'utilisateur et de registre IAM pertinentes qui utilisent le filtrage des adresses IP. Nous ne recommandons pas d'utiliser le filtrage des adresses IP dans les politiques de registre.

Vous pouvez consulter vos politiques utilisateur IAM à l'aide de la console IAM à l'adresse. https://console.aws.amazon.com/iam/ Pour de plus amples informations sur IAM, consultez le Guide de l’utilisateur IAM.