web-dev-qa-db-fra.com

Azure DevOps ne peut pas se déployer sur Azure Web App

J'essaie actuellement de déployer une application à partir d'un pipeline de versions sous Azure DevOps appartenant à la société A vers une application Azure hébergée sur Azure appartenant à la société B.

Continuez à obtenir cette erreur lorsque vous essayez de publier, arrêtez l'application Azure:

Erreur: impossible d'obtenir l'ID de ressource pour le type de ressource "Microsoft.Web/Sites" et le nom de ressource "AppName". Erreur: impossible de récupérer le jeton d'accès pour le principal du service géré. Veuillez configurer l'identité de service géré (MSI) pour la machine virtuelle ' https://aka.ms/Azure-msi-docs '. Code d'état: 400, message d'état: mauvaise demande

Je ne sais pas comment résoudre ce problème.

Ce qui a été fait jusqu'à présent:

  • L'application Web est créée dans Azure de la société B
  • Utilisateur de la société DevOps Un compte est ajouté en tant qu'utilisateur invité dans la société Azure AD
  • L'utilisateur a des droits de contributeur sur l'application Web
  • L'identité du service géré est définie sur "Activé" sur l'application Web
  • L'abonnement à la société B et aux applications Web peut être vu et sélectionné lors de la configuration de la version dans Azure DevOps.

Je suis sûr que plus doit être en place pour que le déploiement de la version fonctionne, mais après une recherche intensive, je n'ai rien trouvé.

J'espère que n'importe qui ici pourra vous conseiller.

12
AgitoM

J'ai réussi à trouver la solution au problème que j'ai rencontré. Il était lié aux droits d'accès du compte invité sur l'abonnement Azure.

Tout d'abord, "l'identité du service géré" n'était pas liée à ce problème.

Voici les étapes qui ont été suivies pour connecter les DevOps Azure de la société A à l'Azure de la société B:

  • Application Web créée dans la société B Azure
  • Le compte Azure DevOp de la société A a été ajouté en tant qu '"utilisateur invité" dans l'Azure de la société B
  • Le compte DevOp bénéficie des droits de contributeur à la fois sur l'abonnement Azure et sur l'application Web.
  • Dans DevOps de la société A, ajoutez un "Azure Resource Manager". Choisissez les paramètres d'Azure de la société B comme "Authentification principale du service"
  • Lors de l'enregistrement d'Azure Resource Manager, vous serez invité à vous connecter. Vous devrez vous connecter avec le compte administrateur d'Azure de la société B.
8
AgitoM