Partager via


Gérer les informations d’identification de déploiement pour Azure App Service

Vous pouvez déployer des applications locales sur Azure App Service à l’aide du déploiement Git local ou du déploiement FTP/S. Cet article explique comment créer et gérer des informations d’identification de déploiement pour le déploiement Git local ou FTP/S.

Les informations d’identification de déploiement sont différentes de vos informations d’identification d’abonnement Azure. App Service prend en charge deux types d’informations d’identification pour sécuriser le déploiement d’applications locales : les informations d’identification d’étendue utilisateur et d’étendue d’application .

  • Les informations d’identification au niveau de l’utilisateur fournissent un jeu unique d’informations d’identification de déploiement pour l’ensemble du compte Azure d’un utilisateur. Un utilisateur disposant d’un accès d’application via le contrôle d’accès en fonction du rôle (RBAC) ou des autorisations de coadministrateur peut utiliser ses informations d’identification au niveau de l’utilisateur tant qu’ils disposent de ces autorisations.

    Vous pouvez utiliser vos informations d’identification spécifiques à l’utilisateur pour déployer une application sur App Service via Git local ou FTP/S dans n’importe quel abonnement auquel votre compte Azure a accès. Vous ne partagez pas ces informations d’identification avec d’autres utilisateurs Azure. Vous pouvez réinitialiser vos identifiants au niveau de l'utilisateur à tout moment.

  • L’étendue de l’application ou les informations d’identification au niveau de l’application sont un ensemble d’informations d’identification par application qui peuvent être utilisées pour déployer cette application uniquement. Ces informations d’identification sont générées automatiquement pour chaque application lors de la création et ne peuvent pas être configurées manuellement, mais le mot de passe peut être réinitialisé à tout moment.

    Un utilisateur doit disposer d’au moins des autorisations de niveau Contributeur sur une application, y compris le rôle Contributeur de site web intégré, pour pouvoir accéder aux informations d’identification au niveau de l’application via RBAC. Le rôle lecteur ne peut pas publier et ne peut pas accéder à ces informations d’identification.

Conditions préalables

Pour définir, réinitialiser, accéder ou utiliser des informations d’identification de déploiement, vous devez disposer d’autorisations de niveau Contributeur sur l’application App Service.

Exigence d’authentification de base

Pour publier des applications App Service via Git ou FTP/S local, vous devez activer l’authentification de base. Les identifiants de publication SCM avec authentification de base et les identifiants de publication FTP avec authentification de base doivent être paramétrés sur Activé dans la page de Configuration de l'application dans le portail Azure.

L’authentification de base est moins sécurisée que les autres méthodes d’authentification et est désactivée par défaut pour les nouvelles applications. Si l’authentification de base est désactivée, vous ne pouvez pas afficher ou définir les informations d’identification de déploiement dans le Centre de déploiement de l’application ou utiliser ces informations d’identification pour la publication. Pour plus d’informations, consultez Désactiver l’authentification de base dans les déploiements Azure App Service.

Définir les informations d'identification au niveau utilisateur

Pour le déploiement FTP/S, vous avez besoin d’un nom d’utilisateur et d’un mot de passe. Le déploiement Git local nécessite uniquement un nom d’utilisateur. Le nom d’utilisateur doit être unique au sein de Azure.

Pour le déploiement Git local, le nom d’utilisateur ne peut pas contenir le @ caractère.

Pour le déploiement FTP/S :

  • Le nom d’utilisateur doit suivre le format <app-name>\<user-name>. Étant donné que les informations d’identification d’étendue utilisateur sont liées à l’utilisateur et non à l’application, ce format dirige l’action de connexion vers le point de terminaison FTP/S approprié pour l’application.

  • Le mot de passe doit comporter au moins huit caractères et contenir des lettres majuscules, des lettres minuscules, des chiffres et des symboles. Le portail Azure n’affiche pas le mot de passe d’étendue utilisateur et la sortie JSON l’affiche comme null. Si vous perdez ou oubliez votre mot de passe, vous pouvez réinitialiser vos informations d’identification pour en obtenir une nouvelle.

Vous pouvez configurer des informations d'identification à l'échelle de l'utilisateur à l'aide d'Azure CLI ou du portail Azure.

Pour créer des informations d’identification à portée utilisateur à l’aide d’Azure CLI, exécutez la commande az webapp deployment user set, en remplaçant <username> et <password> par les valeurs que vous sélectionnez.

az webapp deployment user set --user-name <username> --password <password>

Après avoir défini les informations d’identification de portée utilisateur, vous pouvez voir le nom d’utilisateur de votre déploiement dans la page Vue d’ensemble de votre application dans le Portail Azure. Si le déploiement Git local est configuré, l’étiquette est le nom d’utilisateur Git/Déploiement. Sinon, l’étiquette est ftp/nom d’utilisateur de déploiement.

Capture d’écran montrant le nom d’utilisateur du déploiement Git sur la page Vue d’ensemble d’une application.

Obtenir des informations d’identification de portée application

Les informations d’identification au niveau de l’application sont créées automatiquement lorsque l'application est créée. Le nom d’utilisateur de portée application FTP/S suit toujours le format app-name\$app-name. Le nom d’utilisateur dans le contexte de l'application Git locale utilise le format $app-name.

Remarque

Lorsque vous utilisez git remote add dans des interpréteurs de commandes qui utilisent le signe dollar pour l’interpolation de variables, comme Bash, vous devez utiliser \$ pour échapper à tout signe dollar dans le nom d’utilisateur ou le mot de passe pour éviter les erreurs d’authentification.

Vous pouvez obtenir vos informations d’identification d’étendue d’application à l’aide d’Azure CLI, d’Azure PowerShell ou du portail Azure.

Dans Azure CLI, obtenez les informations d’identification de portée application à l’aide de la commande az webapp deployment list-publishing-profiles. Exemple :

az webapp deployment list-publishing-profiles --resource-group myResourceGroup --name myApp

Pour le déploiement Git local, vous pouvez également utiliser la az webapp deployment list-publishing-credentials commande. L’exemple suivant retourne un URI distant Git qui contient les informations d’identification de portée application pour l’application déjà incorporée.

az webapp deployment list-publishing-credentials --resource-group myResourceGroup --name myApp --query scmUri

L’URI distant Git retourné n’a pas /<app-name>.git à la fin. Si vous utilisez l’URI pour ajouter un serveur distant, ajoutez-le /<app-name>.git à l’URI pour éviter une erreur 22 avec git-http-push.

Réinitialiser les informations d’identification

Vous pouvez utiliser Azure CLI, Azure PowerShell ou le portail Azure pour réinitialiser vos informations d’identification de déploiement d’étendue d’application et obtenir un nouveau mot de passe. Les noms d’utilisateurs de la portée de l’application conservent leurs valeurs générées automatiquement.

Dans Azure CLI et le portail Azure, vous pouvez également réinitialiser vos informations d’identification d’étendue utilisateur en en créant de nouvelles. Cette action affecte toutes les applications de votre compte qui utilisent les identifiants à portée utilisateur.

Lorsque vous réinitialisez vos informations d’identification de déploiement, toutes les intégrations externes et l’automatisation via le profil de publication arrêtent de fonctionner et doivent être reconfigurées avec les nouvelles valeurs.

Dans Azure CLI, réinitialisez le mot de passe à portée d'application à l’aide de la commande az resource invoke-action avec l’action newpassword.

az resource invoke-action --action newpassword --resource-group <group-name> --name <app-name> --resource-type Microsoft.Web/sites

Réinitialisez les informations d’identification de portée utilisateur en réexécutant la commande az webapp deployment user set pour créer des valeurs de nom d’utilisateur et de mot de passe.

az webapp deployment user set --user-name <new-username> --password <new-password>