Configurer une instance managée sur Azure App Service

Managed Instance sur Azure App Service est une option d’hébergement à portée de plan pour les applications web Windows nécessitant une personnalisation du système d’exploitation (OS), un réseau privé optionnel et une intégration sécurisée avec les services Azure.

  • Identité managée
  • Scripts de configuration (installation)
  • Montages de stockage
  • Clés de Registre
  • Accès RDP (Bureau à distance Protocol)

Important

Managed Instance est généralement disponible pour les applications web Windows dans certaines régions et est limité aux forfaits tarifaires Pv4 et PMV4. Microsoft ajoutera de nouvelles régions au fil du temps. Managed Instance ne prend pas en charge Linux ni les conteneurs.

Ajouter une identité managée (au plan App Service)

Les identités gérées au niveau du plan permettent l’authentification des opérations d’infrastructure qui se produisent au niveau de la plateforme, telles que les scripts de configuration (installation) accédant à stockage Azure lors du démarrage, et l’accès Key Vault pour les montages de stockage et les adaptateurs de clés de registre.

Les identités managées pour le plan App Service sont requises dans les scénarios suivants :

  • Pour accéder et récupérer en toute sécurité votre script de configuration à partir du stockage Azure.
  • Accédez aux coffres de clés afin de fournir des informations d’identification et des valeurs pour les montages de stockage et les adaptateurs de clés de Registre.

Consultez gérer les identités managées affectées par l’utilisateur pour créer une identité managée.

Pour ajouter une identité managée au plan Managed Instance :

  1. Accédez à votre instance managée dans le portail Azure.
  2. Sélectionnez Identité>Attribué par l'utilisateur.
  3. Sélectionnez + Ajouter.
  4. Sélectionnez l’abonnement et l’identité managée.
  5. Sélectionnez Ajouter pour ajouter l’identité au plan.

Ajouter des scripts de configuration (installation)

Les scripts de configuration (installation) ne sont pas obligatoires. Utilisez un script lorsque votre application nécessite l’installation de dépendances ou la configuration de fonctionnalités au niveau du système d’exploitation.

Les scripts de configuration (installation) s’exécutent au démarrage de l’instance pour appliquer la personnalisation persistante. Parmi les exemples, on trouve l’enregistrement du Component Object Model (COM), les installations Microsoft/Windows Installers (MSI), et l’activation des rôles/fonctionnalités Windows. Utilisez des scripts de configuration pour les modifications qui doivent persister à travers les redémarrages d’instance. Utilisez RDP pour le diagnostic, pas pour la configuration persistante.

Vous avez besoin des éléments suivants pour utiliser des scripts de configuration (installation) :

  • Identité managée affectée au plan App Service
  • Un compte de stockage avec un conteneur d’objets blob contenant le package (zip) de script de configuration (install).
  • Fichier zip unique dont la racine contient Install.ps1 (point d’entrée)
  • Storage Blob Data Reader rôle sur le compte de stockage, le conteneur ou le groupe de ressources

Pour ajouter un script de configuration :

  1. Accédez à votre plan App Service Managed Instance dans le portail Azure.

  2. SélectionnezParamètres généraux>.

  3. Dans la section Script de configuration , commencez par configurer votre script.

    Réglage Valeur
    Compte de stockage Sélectionner votre compte de stockage
    Conteneur Entrez le nom de votre conteneur
    Fichier zip Entrez le nom du fichier zip
    Valeur Vérifiez que cette valeur est correcte
  4. Sélectionnez Appliquer pour enregistrer les modifications.

Bonnes pratiques de script de configuration

  • Créer des scripts idempotents (vérifier avant de l’installation).
  • Protéger les opérations destructrices (éviter de modifier les répertoires système Windows protégés).
  • Échelonner les installations lourdes pour réduire la latence de démarrage.

Exemple de structure zip minimale :

Install.ps1
myInstallerfileNameGoesHere.msi
config.xml

Exemple de script de configuration :

# Install Components, for example Crystal Reports, Control Library, Database Driver
$ComponentInstaller = "myInstallerFileNameGoesHere.msi"
try {
    $Component = Join-Path $PSScriptRoot $ComponentInstaller
    Start-Process $Component -ArgumentList "/q" -Wait -ErrorAction Stop
} catch {
    Write-Error "Failed to install ${ComponentInstaller}: $_"
    exit 1
}

Configurer des montages de stockage

Les montages de stockage fournissent un stockage externe persistant, comme Azure Files, auquel votre application peut accéder. Utilisez des montages de stockage pour le code hérité nécessitant un accès partagé au système de fichiers. N'utilisez pas de montures de stockage pour des secrets ; utilisez Key Vault à la place. Le stockage local est temporaire, mais Azure Files et les montages UNC personnalisés persistent lors des redémarrages.

Vous avez besoin des éléments suivants pour configurer les montages de stockage :

  • Identité managée (pour l’accès Key Vault)
  • Key Vault secret (source de credentials)

Pour configurer des montages de stockage :

  1. Accédez à votre instance managée dans le portail Azure.
  2. Sélectionnez Configuration>Montages.
  3. Sélectionnez + Nouveau montage de stockage.

Fournissez les détails suivants pour configurer le montage de stockage :

Réglage Valeur
Nom Entrez un nom de montage
Type de stockage Fichiers Azure, personnalisés ou locaux (stockage temporaire)
Compte de stockage Sélectionner ou entrer un compte de stockage
Partage de fichiers Sélectionner un partage de fichiers
Valeur Sélectionner un coffre de clés
Secret Sélectionner le secret du coffre de clés
Monter une lettre de lecteur Sélectionner le chemin de la lettre de lecteur

Vous pouvez monter le stockage externe sur votre instance managée. Le stockage monté est persistant entre les redémarrages et accessible à partir du système de fichiers de votre application.

Configurer des montages de stockage avec Azure Files

Pour configurer un montage de stockage Azure Files :

  1. Créez un compte de stockage Azure et un partage Azure Files.
  2. Stockez des informations d’identification de connexion dans Key Vault en tant que secret. Contenu secret pris en charge : (ex : DefaultEndpointsProtocol=...;AccountName=...;AccountKey=...;EndpointSuffix=core.windows.net)
  3. Ajoutez le montage dans Managed Instance (portail Azure ou ARM/Bicep/Terraform).

Conseil / Astuce

Appliquez des autorisations au niveau du partage via Azure RBAC + listes de contrôle d’accès de partage pour renforcer la sécurité.

Configurer des montages de stockage avec un UNC personnalisé

Utilisez des points de montage pour les partages SMB hébergés ailleurs (sur site, machine virtuelle ou non-Microsoft). Vérifiez la connectivité réseau (intégration de réseau virtuel/ points de terminaison privés/pare-feu).

  1. Si des informations d’identification sont nécessaires, stockez-les dans un secret Key Vault au format : username=<user>,password=<password>
    • Évitez les comptes d’administrateur de domaine ; utilisez une identité de service à privilèges minimum.
  2. Ajoutez le montage à Managed Instance.

Configurer les clés de Registre

Certaines applications dépendent des valeurs lues à partir du Registre Windows. Avec un adaptateur de clé de Registre, vous pouvez créer des clés de Registre et utiliser des secrets à partir d’Azure Key Vault comme valeur.

Vous avez besoin des éléments suivants pour configurer les clés de Registre :

  • Identité managée (pour l’accès Key Vault)
  • Key Vault secret (source de credentials)

Pour configurer les clés de Registre :

  1. Accédez à Configuration>Clés de Registre.

  2. Sélectionnez + Ajouter.

    Réglage Valeur
    Chemin Entrez le chemin d’accès au Registre
    Vault Entrer un nom de coffre existant
    Secret Sélectionner ou entrer le secret du coffre de clés
    Type Chaîne ou DWORD
  3. Sélectionnez Ajouter pour ajouter la clé de Registre.

Caution

Soyez prudent lors de la modification des chemins critiques du Registre du système. Les modifications incorrectes peuvent affecter la stabilité de l’instance.

Configurer l’accès RDP (Bastion)

Démarrage rapide : Déployer Azure Bastion vous permet automatiquement de vous connecter en toute sécurité à vos instances de machine virtuelle via le protocole RDP (Bureau à distance Protocol). RDP via Azure Bastion est destiné au diagnostic et au dépannage. Utilisez des scripts de configuration pour les changements persistants.

Vous avez besoin des ressources suivantes pour l’accès Bastion/RDP :

  • Managed Instance doit être intégré au réseau virtuel
  • Hôte Azure Bastion sur le réseau virtuel cible
  • Le port 3389 doit être autorisé à partir du groupe de sécurité réseau (NSG) du sous-réseau Bastion vers le groupe de sécurité réseau du sous-réseau du plan App Service

Pour configurer Bastion :

  1. Accédez à Configuration>Bastion/RDP.
  2. Vérifiez que le réseau virtuel est connecté.
  3. Sélectionnez Autoriser le Bureau à distance (via Bastion).

Caution

N’appliquez pas les programmes d’installation manuels ou les modifications de configuration uniquement via RDP. Les modifications sont perdues lors du recyclage ou à cause d'un écart de configuration.

Forum Aux Questions (FAQ)

Quel système d’exploitation s’exécute sur Managed Instance sur Azure App Service ?

Windows Server 2022.

Puis-je activer d’autres rôles et fonctionnalités Windows ?

Oui, via un script de configuration. Cependant, vous ne pouvez pas configurer des fonctionnalités qui sont retirées d'une future version de Windows Server.

Managed Instance sur Azure App Service reçoit-il des mises à jour régulières de la plateforme et de la pile des applications ?

Oui, les instances reçoivent les mises à jour et la maintenance de la plateforme de routine. Le service met également régulièrement à jour les piles d’applications préinstallées. Vous êtes responsable de la maintenance de tous les composants que vous installez via des scripts de configuration.

Quels langages de programmation sont installés sur Managed Instance sur Azure App Service ?

Le service comprend Microsoft .NET Framework 3.5, 4.8 et Microsoft .NET 8.0. Si vous avez besoin d’autres temps d’exécution, installez-les en utilisant un script de configuration. Azure App Service ne maintient pas d'environnements d'exécution supplémentaires dans le cadre de la plateforme.

Quelles sont les limitations des scripts de configuration (installation) ?

Quelles sont les limitations des scripts de configuration (installation) ?

Les scripts de configuration (installation) peuvent installer des dépendances, activer des rôles et des fonctionnalités et personnaliser le système d’exploitation. Cependant, le service ne supporte pas les opérations destructrices (par exemple, la Windows\\System32suppression) car elles peuvent affecter la stabilité de l'instance.

À quel niveau d’autorisation un script de configuration (installation) est-il exécuté ?

Les scripts de configuration (installation) sont exécutés avec des autorisations d’administrateur pour autoriser l’installation et la configuration des composants au niveau du système.

Quelles autorisations de rôle un opérateur dispose-t-il lors de la connexion à une instance à l’aide de Bastion ?

Les opérateurs qui se connectent via Bastion disposent de privilèges d’administrateur pendant la session.

Comment résoudre les échecs avec mon script de configuration (installation) ou mon registre/adaptateurs de stockage ?

Les opérateurs se connectant via Bastion disposent de privilèges administrateur pendant la session. Vous pouvez trouver les journaux de l’adaptateur dans le répertoire racine de la machine, ou ils sont consignés dans les journaux de la plateforme App Service.

Vous trouverez les journaux de l’adaptateur à la racine du système. Sinon, ils sont consignés dans les journaux de la plateforme App Service.

Quelle est la mémoire adressable d’une instance de travail Managed Instance sur Azure App Service ?

La mémoire adressable d’une instance Managed Instance sur Azure App Service varie selon le plan tarifaire choisi. Le tableau suivant liste la mémoire adressable pour l’instance Managed Instance Worker.

Plan tarifaire Cœurs Mémoire (Mo)
P0v4 1 2 048
P1v4 2 5952
P2v4 4 13440
P3v4 8 28672
P1Mv4 2 13440
P2Mv4 4 28672
P3Mv4 8 60160
P4Mv4 16 121088
P5Mv4 32 246016

Quel service stockage Azure dois-je utiliser pour charger un script de configuration (installation) ?

Utilisez le service Blob Stockage Azure pour charger le script et les dépendances requises.

Existe-t-il une restriction sur le nommage et le format du script de configuration (installation) ?

Oui, le script doit être nommé Install.ps1. Seul PowerShell est pris en charge. Veillez à charger le script de configuration (installation) et les dépendances en tant que fichier .zip unique.

Existe-t-il une limite de taille pour les dépendances que je peux charger dans le fichier zip ?

Aucune limite de taille n’est appliquée. N’oubliez pas que la taille globale des dépendances a un impact sur le temps d’approvisionnement de l’instance.

L’ajout ou la modification de Managed Instance sur les adaptateurs de plan App Service redémarre-t-il les instances de plan ?

Oui, ajouter ou modifier des adaptateurs de plan Managed Instance (script de configuration, stockage ou registre) redémarre les instances sous-jacentes et affecte toutes les applications web déployées sur le forfait. Des redémarrages d’instance sont nécessaires pour appliquer des modifications de configuration.

Mon plan Managed Instance comporte plusieurs instances puis-je redémarrer une seule instance ?

Oui, accédez à Managed Instance et sélectionnez Instances dans le menu de gauche. Sélectionnez ensuite redémarrer en regard du nom de l’instance.

Mon plan Managed Instance sur App Service comporte plusieurs applications web puis-je redémarrer une seule application web ?

Oui, accédez à la page Vue d’ensemble de l’application, puis sélectionnez Redémarrer.

Puis-je affecter une identité managée à mon application web dans managed Instance sur le plan App Service ?

Oui, vous pouvez affecter une identité managée différente à une application web au sein de Managed Instance. Suivez les instructions relatives à l’identité managée

Existe-t-il une limitation du nombre d’adaptateurs que je peux créer pour Managed Instance sur le plan App Service ?

Y a-t-il une limitation au nombre d’adaptateurs que je peux créer pour le plan Managed Instance on App Service ?

Non, il n’existe aucune limite quant au nombre d’adaptateurs de stockage ou de registre. Vous ne pouvez créer qu’un seul adaptateur de script de configuration (installation) pour Managed Instance sur le plan App Service. Augmenter le nombre d’adaptateurs pourrait augmenter le temps de provisionnement des instances.