⚠️ Traduction non officielle - Cette documentation est une traduction communautaire non officielle de Docker.

Gestion d'Accès de Registre

Subscription: Business
For: Administrators

Avec la Gestion d'Accès de Registre (RAM), les administrateurs peuvent s'assurer que leurs développeurs utilisant Docker Desktop n'accèdent qu'aux registres autorisés. Cela se fait via le tableau de bord de Gestion d'Accès de Registre dans Docker Hub ou la Console d'Administration Docker.

La Gestion d'Accès de Registre prend en charge les registres cloud et sur site. Cette fonctionnalité opère au niveau DNS et est donc compatible avec tous les registres. Vous pouvez ajouter tout nom d'hôte ou nom de domaine que vous souhaitez inclure dans la liste des registres autorisés. Cependant, si le registre redirige vers d'autres domaines tels que s3.amazon.com, alors vous devez ajouter ces domaines à la liste.

Les exemples de registres que les administrateurs peuvent autoriser incluent :

  • Docker Hub. Ceci est activé par défaut.
  • Amazon ECR
  • GitHub Container Registry
  • Google Container Registry
  • GitLab Container Registry
  • Nexus
  • Artifactory

Prérequis

Vous devez appliquer la connexion. Pour que la Gestion d'Accès de Registre prenne effet, les utilisateurs Docker Desktop doivent s'authentifier à votre organisation. Appliquer la connexion assure que vos développeurs Docker Desktop s'authentifient toujours à votre organisation, même s'ils peuvent s'authentifier sans cela et que la fonctionnalité prendra effet. Appliquer la connexion garantit que la fonctionnalité prend toujours effet.

Configurer les permissions de Gestion d'Accès de Registre

To configure Registry Access Management permissions, perform the following steps:

  1. Sign in to the Admin Console.

  2. Select your organization in the left navigation drop-down menu, and then select Registry access.

  3. Enable Registry Access Management to set the permissions for your registry.

    Note

    When enabled, the Docker Hub registry is set by default; however you can also restrict this registry for your developers.

  4. Select Add registry and enter your registry details in the applicable fields, and then select Create to add the registry to your list. You can add up to 100 registries/domains.

  5. Verify that the registry appears in your list and select Save changes.

Once you add a registry, it can take up to 24 hours for the changes to be enforced on your developers’ machines.

If you want to apply the changes sooner, you must force a Docker signout on your developers’ machine and have the developers re-authenticate for Docker Desktop. See the Caveats section below to learn more about limitations.

Important

Starting with Docker Desktop version 4.36, you can enforce sign-in for multiple organizations. If a developer belongs to multiple organizations with different RAM policies, only the RAM policy for the first organization listed in the registry.json file, .plist file, or registry key is enforced.

Tip

Since RAM sets policies about where content can be fetched from, the ADD instruction of the Dockerfile when the parameter of the ADD instruction is a URL is also subject to registry restrictions.

If you're using ADD to fetch an image or artifact from a trusted registry via URL, make sure the registry's domain is included in your organzation's allowed registries list.

RAM is not intended to restrict access to general-purpose external URLs, for example, package mirrors or storage services. Attempting to add too many domains may cause errors or hit system limits.

Important

La gestion des organisations est en cours de transfert vers la console d'administration.

Gérez les membres, les équipes, les paramètres et les journaux d'activité dans la console d'administration Docker. L'accès à ces fonctionnalités dans Docker Hub prendra bientôt fin. Explorez la console d'administration.

To configure Registry Access Management permissions, perform the following steps:

  1. Sign in to Docker Hub.

  2. Select My Hub, your organization, Settings, and then select Registry Access.

  3. Enable Registry Access Management to set the permissions for your registry.

    Note

    When enabled, the Docker Hub registry is set by default; however you can also restrict this registry for your developers.

  4. Select Add registry and enter your registry details in the applicable fields, and then select Create to add the registry to your list. You can add up to 100 registries/domains.

  5. Verify that the registry appears in your list and select Save changes.

Once you add a registry, it can take up to 24 hours for the changes to be enforced on your developers’ machines.

If you want to apply the changes sooner, you must force a Docker signout on your developers’ machine and have the developers re-authenticate for Docker Desktop. See the Caveats section below to learn more about limitations.

Important

Starting with Docker Desktop version 4.36, you can enforce sign-in for multiple organizations. If a developer belongs to multiple organizations with different RAM policies, only the RAM policy for the first organization listed in the registry.json file, .plist file, or registry key is enforced.

Tip

Since RAM sets policies about where content can be fetched from, the ADD instruction of the Dockerfile when the parameter of the ADD instruction is a URL is also subject to registry restrictions.

If you're using ADD to fetch an image or artifact from a trusted registry via URL, make sure the registry's domain is included in your organzation's allowed registries list.

RAM is not intended to restrict access to general-purpose external URLs, for example, package mirrors or storage services. Attempting to add too many domains may cause errors or hit system limits.

Vérifier les restrictions

La nouvelle politique de Gestion d'Accès de Registre prend effet après que le développeur s'authentifie avec succès à Docker Desktop en utilisant ses identifiants d'organisation. Si un développeur tente de tirer une image depuis un registre non autorisé via Docker CLI, il reçoit un message d'erreur que l'organisation a interdit ce registre.

Limitations

Il y a certaines limitations lors de l'utilisation de la Gestion d'Accès de Registre :

  • Vous pouvez ajouter jusqu'à 100 registres/domaines.
  • Les tirages d'images Windows et les constructions d'images ne sont pas restreints par défaut. Pour que la Gestion d'Accès de Registre prenne effet sur le mode Conteneur Windows, vous devez permettre au démon Docker Windows d'utiliser le proxy interne de Docker Desktop en sélectionnant le paramètre Utiliser le proxy pour le démon Docker Windows.
  • Les constructions telles que docker buildx utilisant un pilote Kubernetes ne sont pas restreintes.
  • Les constructions telles que docker buildx utilisant un pilote docker-container personnalisé ne sont pas restreintes.
  • Le blocage est basé sur DNS. Vous devez utiliser les mécanismes de contrôle d'accès d'un registre pour distinguer entre "push" et "pull".
  • WSL 2 nécessite au moins un noyau Linux série 5.4 (ceci ne s'applique pas aux séries de noyaux Linux antérieures).
  • Sous le réseau WSL 2, le trafic de toutes les distributions Linux est restreint. Ceci sera résolu dans le noyau Linux série 5.15 mis à jour.
  • Les images tirées par Docker Desktop quand Docker Debug ou Kubernetes est activé, ne sont pas restreintes par défaut même si Docker Hub est bloqué par RAM.
  • Si l'accès à Docker Hub est restreint par RAM, les tirages sur les images provenant de Docker Hub sont restreints même si l'image a été précédemment mise en cache par un miroir de registre. Voir Utilisation de la Gestion d'Accès de Registre (RAM) avec un miroir de registre.

De plus, la Gestion d'Accès de Registre opère au niveau des hôtes, pas des adresses IP. Les développeurs peuvent contourner cette restriction dans leur résolution de domaine, par exemple en exécutant Docker contre un proxy local ou en modifiant le fichier sts de leur système d'exploitation. Bloquer ces formes de manipulation est en dehors de la compétence de Docker Desktop.

Plus de ressources