En dessous de l'erreur lors de la connexion du Registre des conteneurs
Commande:
Error response from daemon: Get https://<MY_REGISTRY_NAME>.azurecr.io/v2/: unauthorized: Application not registered with AAD
Message d'erreur:
docker login <MY_REGISTRY_NAME>.azurecr.io
7 Réponses :
Accédez aux clés d'accès dans le registre des conteneurs et activez l'utilisateur de l'administrateur, puis utilisez les informations d'identification automatique pour se connecter via Docker
Comment cela aide-t-il à l'authentification Active Directory? Bien sûr, cela vous permet de créer un seul utilisateur "admin", avec un mot de passe que vous pouvez quoi, transmettre à tout le monde de votre organisation? Ce sont des conseils horribles.
Pour moi, le moyen le plus simple de tout faire a été de lire les documents de Docker à https : //docs.docker.com/cloud/aci-integration/ . Vraiment, tout ce que vous avez à faire est de créer le conteneur dans Azure, d'ouvrir PowerShell (si vous ne l'avez pas fait, installez / importez les modules Azure) et exécutez la commande "Docker Login Azure". Cela ouvrira une fenêtre de navigateur et vous pouvez vous connecter directement à votre conteneur à partir de là. Je n'ai pas encore essayé avec plusieurs conteneurs, car je n'ai besoin que d'un seul jusqu'à présent, mais je ne peux pas imaginer que ce serait difficile.
Pour ceux d'entre vous qui ne souhaitent pas activer l'utilisateur administrateur via la section "Access Keys" dans le registre des conteneurs, vous pouvez suivre ce lien - https://docs.microsoft.com/en-us/azure/container-regry/container-registry -Auth-Service-Principal - Pour créer un directeur de service. L'exécution du script fourni dans le lien mentionné génère une combinaison de mot de passe ID qui peut être utilisée avec vos commandes Docker de connexion (donnez l'ID comme nom d'utilisateur dans la commande docker de connexion). Cela garantit également que si vous souhaitez exécuter les commandes Docker via certains scripts que vous avez écrits, vous pouvez utiliser ces informations d'identification.
La commande offre la capacité d'attribuer des rôles fixes aux directeurs de service que vous créez. Les rôles spécifiques à la simple pression ou à la poussée (qui incluent la traction) peuvent être attribués.
Ce que je ne suis pas clair, c'est pourquoi les utilisateurs ajoutés via l'annonce Azure ne peuvent-ils pas être utilisés dans les commandes de connexion Docker, mais l'utilisation des directeurs de service fonctionne. (Si quelqu'un a une idée à ce sujet, n'hésitez pas à partager).
Cela peut se produire si vous utilisez le nom de registre complet, par exemple registryname.azurecr.io
comme nom d'utilisateur au lieu de simplement registrename
Le message d'erreur est extrêmement incorrect!
J'ai eu cette erreur non autorisé: application non enregistrée avec aad
quand pendant docker connex
en tant que valeur - nom d'utilisateur
.
Get-AzADServicePrincipal -DisplayName <DisplayName> | Select ApplicationId
De cette façon, vous pouvez découvrir applicationID
> DisplayName dans Azure PowerShell. Vous pouvez également le trouver sur Azure Portal.
AZ ACR CREALTIFICATION HOW - Name TestContainerRegistry
Docker Login TestContainerRegistry.azurecr.io
Comme les autres l'ont mentionné, vous pouvez utiliser l'utilisateur administrateur si vous le souhaitez.
Cependant, ce n'est peut-être pas la solution idéale pour une organisation plus grande. Au lieu de cela, vous pouvez utiliser les connexions RBAC et Azure AD pour gérer l'accès. Voici les étapes que j'ai prises:
AZ Login
AZ ACR Login --name .azurecr.io
c'est tout! J'ai trouvé cette solution pour faciliter la collaboration. J'espère que ça aide!
Avez-vous enregistré la demande sur Azure AD Portal? docs.microsoft.com/en-us/ azure / actif-directory / se développer /…