DIDOES ITEndpoint Engineering← Tous les articles

Technologie IT / Modern Workplace Lab

Enterprise App Management : exploiter le catalogue d’applications Intune

Enterprise App Catalog réduit le travail de packaging, mais ne transfère pas à Microsoft la décision d’autoriser une application ni la responsabilité de sa licence. Je l’intègre donc dans le même cycle de gouvernance que mes packages Win32 internes.

À propos des exemples

Je publie les diagnostics en niveau 1 et les exemples de remédiation au minimum en niveau 2. Ils restent pédagogiques, non testés et ne doivent pas être utilisés tels quels. Avant tout essai réel, adaptez-les au contexte, utilisez la simulation quand elle existe et validez le rollback sur un pilote représentatif.

01

L’essentiel

Enterprise App Catalog est une fonction d’Enterprise App Management, disponible via Intune Suite ou licence autonome. Il fournit des applications Win32 préemballées avec commandes, exigences et détections préparées et confirmées par Microsoft.

Les mises à jour disponibles ne remplacent pas automatiquement l’application déjà créée dans le tenant. L’administrateur crée la nouvelle version et organise une relation de supersedence ainsi que son déploiement.

Les SLO de publication donnent des objectifs, pas une garantie. Microsoft ne certifie pas la conformité métier ou la licence du logiciel ; l’organisation conserve l’approbation sécurité, juridique et financière.

Enterprise App Catalog est une fonction d’Enterprise App Management, disponible via Intune Suite ou licence autonome. Il fournit des applications Win32 préemballées avec commandes, exigences et détections préparées et confirmées par Microsoft.
02

Pourquoi cette technologie existe

Le catalogue contient des applications Microsoft et tierces au format Windows catalog app Win32. Le contenu est hébergé sur l’infrastructure Intune et utilise les endpoints manage.microsoft.com documentés.

Lors de l’ajout, Intune propose métadonnées, commandes d’installation et de désinstallation, exigences et règles de détection. Modifier ces valeurs peut rendre l’installation dangereuse ou non fonctionnelle ; toute adaptation est revue comme du code.

Je définis l’objectif opérationnel avant de choisir le profil ou l’outil. Cette discipline sépare le besoin de sécurité, l’expérience utilisateur, l’autorité de gestion et la preuve attendue. Elle évite aussi qu’un paramètre soit activé uniquement parce qu’il apparaît dans la console.

Je compare toujours l’intention cloud, l’applicabilité, l’état reçu par Windows et le résultat réellement observé. Une affectation réussie, un état vert ou une requête HTTP acceptée ne prouve pas à lui seul que tout le parcours fonctionne.

Pour expliquer « Enterprise App Management et catalogue Intune », je commence par le besoin auquel la technologie répond, puis je sépare le plan de contrôle, le transport, les composants locaux, les états persistés et les données de résultat. Cette lecture évite d’attribuer au portail une décision prise par Windows ou à l’agent une limitation du service cloud.

Je distingue les interfaces supportées des détails internes observables. Les journaux, tâches et clés de registre aident à comprendre le fonctionnement, mais ils ne deviennent pas automatiquement des contrats stables sur lesquels bâtir une automatisation durable.

Enfin, je relie la théorie au cycle réel : déclenchement, traitement, résultat, nouvelle évaluation et comportement en cas de dérive. L’objectif est de comprendre ce qui se passe, pas seulement de reproduire une configuration.

Je qualifie la nature de chaque état : intention envoyée, valeur effective, inventaire, conformité, télémétrie ou simple cache d’affichage. Ces données n’ont ni la même fraîcheur ni la même autorité. Un résultat cohérent suppose de connaître qui produit l’information, à quel moment, dans quel contexte et selon quel mécanisme elle revient au service.

Je replace aussi la technologie dans son environnement. Les identités, certificats, licences, services réseau, versions clientes et autres outils de gestion peuvent modifier son comportement sans appartenir directement à son moteur. Cette frontière permet de distinguer une limitation intrinsèque d’une dépendance absente ou d’un conflit d’architecture.

Quand une observation terrain complète la documentation, je la présente comme un indice et non comme une garantie de support. Les noms de tâches, fichiers, événements ou rythmes internes peuvent changer. Je m’appuie sur eux pour expliquer et diagnostiquer, tandis que les décisions de conception reposent sur les interfaces et comportements officiellement documentés.

  • À comprendre : comprendre l’architecture, les dépendances et les limites
  • À comprendre : mettre en œuvre un pilote mesurable et reproductible
  • À comprendre : construire un diagnostic et un rollback utilisables par l’exploitation
  • Périmètre étudié : Enterprise App Management, Enterprise App Catalog, Intune Suite, Win32 apps
  • Périmètre étudié : postes Windows gérés et services Microsoft officiellement documentés
  • Périmètre étudié : validation en laboratoire puis pilote représentatif avant généralisation
03

Architecture, composants et flux de données

Le catalogue contient des applications Microsoft et tierces au format Windows catalog app Win32. Le contenu est hébergé sur l’infrastructure Intune et utilise les endpoints manage.microsoft.com documentés.

Lors de l’ajout, Intune propose métadonnées, commandes d’installation et de désinstallation, exigences et règles de détection. Modifier ces valeurs peut rendre l’installation dangereuse ou non fonctionnelle ; toute adaptation est revue comme du code.

Une détection PowerShell est interprétée selon exit code, STDOUT et STDERR. Un exit code zéro avec une sortie STDOUT non vide indique la détection ; ce contrat doit être compris avant toute modification.

FLUXChaîne fonctionnelle — Enterprise App Management et catalogue Intune
  1. CatalogMicrosoft prépare contenu et métadonnées Win32.
  2. TenantL’admin crée et adapte l’objet application.
  3. IMETélécharge, détecte et installe le package.
  4. LifecycleReports, updates et supersedence sont gouvernés.

Chaque étape doit produire sa propre preuve. Un succès en amont ne garantit pas que les étapes suivantes ont terminé leur traitement.

04

Prérequis, compatibilité et limites de support

Je sépare les prérequis nécessaires à l’existence de la fonction de ceux qui ne concernent qu’un scénario d’administration. La présence d’une option dans une console ne prouve ni la prise en charge de la version cliente, ni l’éligibilité de la licence.

Les builds, éditions, rôles, dépendances réseau et contextes d’exécution doivent être confirmés avant d’interpréter un comportement. Les éléments internes observés mais non documentés comme interfaces publiques sont explicitement traités comme tels.

  • licence Enterprise App Management
  • processus d’approbation applicative
  • réseau Intune autorisé
  • IME opérationnelle
  • propriétaire et licence du logiciel
  • groupes de test
  • modèle supersedence et rollback
05

Cycle de fonctionnement, étape par étape

Cette séquence décrit ce que font les différents composants, depuis le déclenchement jusqu’au résultat. Elle sert de modèle mental : selon le scénario, certaines étapes peuvent être asynchrones ou exécutées dans un autre contexte.

Je distingue l’action demandée, son transport, son traitement local et son accusé de résultat. Cette distinction explique pourquoi deux écrans peuvent afficher temporairement des états différents sans qu’il y ait nécessairement une panne.

PROCÉDURECycle d’exécution observé
  1. 01Établir l’état initial
    Emplacement
    Portails Microsoft et poste témoin
    Commande / configuration
    Sélectionner l’application et vérifier l’éditeur.
    Résultat attendu
    Les versions, identités, affectations, autorités et écarts sont documentés.
    Vérification
    Comparer l’inventaire local, les portails et les sources techniques.
    Impact
    Lecture seule.
    Retour arrière
    Aucun.
  2. 02Configurer le pilote
    Emplacement
    Groupe, profil ou service pilote
    Commande / configuration
    Contrôler commandes, détection et exigences.
    Résultat attendu
    Une configuration unique et bornée est appliquée à une audience stable.
    Vérification
    Relire les inclusions, exclusions, filtres, licences et permissions.
    Impact
    Impact limité au pilote.
    Retour arrière
    Retirer l’affectation et restaurer l’état précédent.
  3. 03Observer le parcours complet
    Emplacement
    Rapports cloud et journaux locaux
    Commande / configuration
    Créer l’objet sans modification inutile.
    Résultat attendu
    Chaque couche produit une preuve datée et les écarts sont expliqués.
    Vérification
    Rejouer le scénario nominal et au moins un cas négatif.
    Impact
    Collecte de preuves minimisées.
    Retour arrière
    Aucun pour la collecte.
  4. 04Décider la vague suivante
    Emplacement
    Dossier de changement et runbook
    Commande / configuration
    Déployer sur appareils laboratoire.
    Résultat attendu
    Les critères GO sont atteints ou le changement reste explicitement en NO-GO.
    Vérification
    Contrôler les KPI, les incidents, le support et le rollback.
    Impact
    Extension contrôlée ou arrêt.
    Retour arrière
    Suspendre la vague et appliquer le runbook de retour arrière.

Le but est de comprendre la responsabilité de chaque composant et la preuve qu’il produit.

06

Fonctionnement détaillé et responsabilités

Le catalogue contient des applications Microsoft et tierces au format Windows catalog app Win32. Le contenu est hébergé sur l’infrastructure Intune et utilise les endpoints manage.microsoft.com documentés.

Lors de l’ajout, Intune propose métadonnées, commandes d’installation et de désinstallation, exigences et règles de détection. Modifier ces valeurs peut rendre l’installation dangereuse ou non fonctionnelle ; toute adaptation est revue comme du code.

Une détection PowerShell est interprétée selon exit code, STDOUT et STDERR. Un exit code zéro avec une sortie STDOUT non vide indique la détection ; ce contrat doit être compris avant toute modification.

  • licence Enterprise App Management
  • processus d’approbation applicative
  • réseau Intune autorisé
  • IME opérationnelle
07

Configuration, exploitation et cas limites

Le catalogue ne détecte pas l’usage réel en cours d’une application. La décision de retirer une version nécessite télémétrie métier, inventaire, propriétaire et validation utilisateur complémentaires.

Les mises à jour sont signalées dans Apps Enterprise App Catalog apps with updates. Elles ne s’installent pas seules : une nouvelle application est créée puis liée par supersedence selon le résultat attendu.

Les objectifs de service annoncent généralement un traitement rapide pour les mises à jour automatisables et plus long pour celles nécessitant un test manuel. Je prévois une solution pour les vulnérabilités dont l’urgence dépasse ce délai.

  • Tester install, uninstall et upgrade
  • Créer la supersedence pilote
  • Mesurer avant généralisation
08

Interpréter les résultats sans raccourci

Les applications peuvent participer à Autopilot ESP et Device Preparation. Je n’en fais une blocking app qu’après validation du temps de téléchargement, des redémarrages, de la détection et du comportement offline.

La licence commerciale reste à la charge de l’organisation. Le fait qu’un package apparaisse dans le catalogue ne donne aucun droit d’usage et ne prouve pas la conformité réglementaire.

Le cycle pilote compare package, signature éditeur, version, hash, commande, détection, installation, désinstallation et upgrade. Les rapports Managed Apps et journaux IME servent de preuve.

Je distingue une donnée de configuration, une donnée d’inventaire et une preuve d’exécution. La première décrit ce qui devrait arriver, la deuxième décrit un état observé à un instant donné et la troisième montre ce qu’un composant a réellement tenté. Leur horodatage et leur contexte doivent converger avant toute conclusion.

Je documente les états non applicable, pending, conflict, error et success séparément. Un poste absent d’un rapport n’est pas nécessairement sain ou en échec : il peut être hors ligne, non éligible, non ciblé, en retard de télémétrie ou exclu par la politique de collecte.

09

Pilote, généralisation et maintien en conditions opérationnelles

Le pilote couvre plusieurs modèles matériels, versions de Windows, profils réseau, populations utilisateur et exceptions métier. Je conserve une cohorte témoin afin de différencier l’effet du changement d’une évolution globale du service, d’une mise à jour applicative ou d’un incident réseau.

Les critères GO sont définis avant le début : couverture, taux de succès, délai de convergence, incidents, tickets support, régressions et temps de rollback. Une moyenne satisfaisante ne masque pas un sous-groupe en échec ; les résultats sont donc segmentés par version, modèle, site et mode de gestion.

Les cas négatifs sont testés volontairement : appareil hors ligne, licence absente, identité non éligible, règle non applicable, réseau filtré et retour arrière. Un design exploitable doit échouer de manière visible, sûre et compréhensible pour le support.

Après généralisation, je programme une revue des exceptions, des permissions, des versions de profil et des dépendances. Le service cloud et Windows évoluent ; une décision correcte aujourd’hui doit rester traçable et être revalidée lorsqu’un prérequis ou une interface change.

10

Interfaces d’observation, commandes et exemples

Les commandes illustrent les objets et états décrits dans l’article. Les exemples de diagnostic restent non testés, en niveau 1 et sans modification volontaire. Ils servent à comprendre les données disponibles, pas à industrialiser une collecte.

Une automatisation durable doit employer une API ou une interface officiellement supportée. Une clé de registre, un fichier ou une tâche interne peut évoluer avec Windows, l’agent ou le service.

POWERSHELLInventaire local avant adoption du catalogue — niveau 1
# Exemple pédagogique non testé — niveau 1
$ErrorActionPreference = 'Stop'
try {
  Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*','HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*' -ErrorAction SilentlyContinue |
    Where-Object DisplayName | Select-Object DisplayName,DisplayVersion,Publisher,UninstallString
} catch { Write-Error "Inventaire applicatif impossible : $($_.Exception.Message)"; exit 1 }

Comparer nom, version, architecture et éditeur avec l’application du catalogue. Les chaînes de désinstallation peuvent contenir des chemins internes.

11

Observabilité : où lire l’état réel

Je construis une chronologie unique avec l’heure de la demande, le check-in, l’événement local, la décision du composant et la remontée dans le portail. Je conserve UTC et heure locale, mais j’anonymise UPN, DeviceId, TenantId, noms internes, certificats, adresses et contenus métiers avant partage.

La collecte initiale reste en lecture seule. Je ne vide pas un cache, ne supprime pas une clé, ne réinitialise pas un agent et ne force pas un enrôlement avant d’avoir capturé les preuves. Ces actions changent l’état et peuvent rendre la cause première impossible à démontrer.

Les scripts publiés ici sont des exemples pédagogiques non testés de niveau 1. Toute remédiation réelle doit être au minimum de niveau 2, proposer une simulation, limiter sa cible, expliquer son impact et restaurer l’état précédent. Les opérations privilégiées ou à grande échelle exigent un niveau supérieur et une approbation formelle.

  • Sélectionner l’application et vérifier l’éditeur.
  • Contrôler commandes, détection et exigences.
  • Créer l’objet sans modification inutile.
  • Déployer sur appareils laboratoire.
  • Tester install, uninstall et upgrade
  • Créer la supersedence pilote
  • Mesurer avant généralisation
MATRICELecture structurée des preuves
CoucheQuestionPreuveDécision
CiblageLe poste devait-il recevoir la configuration ?Groupe, filtre, licence et affectationCorriger le ciblage avant le client
TransportLa demande a-t-elle atteint sa destination ?Check-in, événement, request-id ou téléchargementTraiter identité, réseau ou service
TraitementLe composant a-t-il évalué la demande ?Journal, état par paramètre ou résultat APICorriger la valeur ou le composant
RésultatL’objectif final est-il atteint ?Contrôle fonctionnel et rapport corréléValider ou maintenir NO-GO
12

Validation du modèle et cas d’usage

Je vérifie le modèle sur un appareil représentatif en reliant la configuration du service, l’état reçu, le traitement local et la donnée remontée. L’objectif n’est pas de certifier la production, mais de confirmer que l’explication décrit bien le comportement observé.

Un cas d’usage est retenu lorsque la technologie répond au besoin sans ajouter une autorité concurrente, une dépendance non maîtrisée ou un niveau d’opacité incompatible avec l’exploitation.

  • Sélectionner l’application et vérifier l’éditeur.
  • Contrôler commandes, détection et exigences.
  • Créer l’objet sans modification inutile.
  • Déployer sur appareils laboratoire.
  • Tester install, uninstall et upgrade
  • Créer la supersedence pilote
  • Mesurer avant généralisation
13

Limites, modes de panne et lecture des erreurs

Cette matrice relie les limites du modèle aux symptômes observables. Elle ne transforme pas une technologie en article de dépannage : elle montre où le fonctionnement normal peut diverger et quelles preuves permettent de comprendre cette divergence.

Une erreur isolée doit être replacée dans sa phase et son contexte. Je privilégie les résultats documentés du service et du client avant les détails d’implémentation susceptibles de changer.

MATRICEMatrice de diagnostic
SymptômeCause à confirmerPreuve recherchéeCorrection ciblée
Installation en échecCommande ou prérequisIME logs et exit codeComparer au package catalog
Détection fausseScript modifié ou output inattenduSTDOUT/exit codeRestaurer la règle validée
Update non appliquéeNouvelle app non crééeUpdates viewCréer et superseder
ESP trop longuePackage bloquant volumineuxTimeline ESPRetirer du blocking set
Licence absenteCatalogue confondu avec entitlementContrat éditeurSuspendre le déploiement

Une cause reste une hypothèse tant qu’elle n’est pas confirmée par une preuve locale ou une donnée de service corrélée.

14

Adoption progressive, réversibilité et vigilance

Pour introduire la technologie, je commence par un scénario borné, des appareils pilotes et des critères d’observation définis. L’adoption progresse uniquement si les dépendances, la supervision et les responsabilités de support sont comprises.

Le retour arrière dépend souvent de la propriété de la ressource et du cycle de synchronisation. Je le teste avant généralisation et je ne déduis jamais la réversibilité de la seule disparition d’un profil dans le portail.

  • Réversibilité : retirer l’affectation de la nouvelle version
  • Réversibilité : réactiver l’ancienne application si sa version reste supportée
  • Réversibilité : annuler la supersedence pilote et restaurer les commandes validées
  • Limite ou vigilance : catalogue ne vaut pas autorisation métier
  • Limite ou vigilance : mises à jour non automatiques
  • Limite ou vigilance : ne pas modifier les commandes sans revue
  • Limite ou vigilance : supersedence à tester séparément
R

Repères d’utilisation

Cette analyse propose une méthode opérationnelle et un cadre de décision. Avant toute application à grande échelle, vérifiez les versions, les licences et les comportements sur un environnement pilote représentatif de votre contexte.

Références techniques publiques

J’ai privilégié la documentation Microsoft pour les comportements contractuels. Les retours terrain complètent l’observation, sans remplacer la documentation de support.

Enterprise App ManagementEnterprise App CatalogIntune SuiteWin32 appsSupersedenceApplication lifecycle

Continuer la lecture

Modern Workplace LabOMA-DM et WinDC en double inscriptionEndpoint LabDiagnostic complet des applications Win32