Intégration d’Azure AD au Service d’authentification fédérée
Introduction
Ce document décrit comment intégrer un environnement Citrix avec la fonctionnalité Azure AD de Windows 10.
Windows 10 a introduit Azure AD, qui est un nouveau modèle de jonction de domaine dans lequel les ordinateurs portables itinérants peuvent être joints à un domaine d’entreprise via Internet à des fins de gestion et d’authentification unique.
L’exemple de déploiement dans ce document décrit un système dans lequel l’informatique fournit aux nouveaux utilisateurs une adresse de messagerie d’entreprise et un code d’inscription pour leurs ordinateurs portables Windows 10 personnels. Les utilisateurs accèdent à ce code via Système > À propos de > Connecter à Azure AD dans le volet Paramètres.
Une fois que l’ordinateur portable est inscrit, le navigateur Web Microsoft Edge se connecte automatiquement aux sites Web de l’entreprise et aux applications publiées Citrix via la page Web d’applications Azure SAAS, avec d’autres applications Azure telles que Microsoft Office 365.
Architecture
Cette architecture réplique un réseau d’entreprise traditionnel dans Azure, tout en intégrant des technologies de cloud modernes telles que Azure AD et Office 365. Les utilisateurs sont considérés comme des travailleurs distants, et la notion d’intranet n’a pas lieu.
Le modèle peut être appliqué aux entreprises disposant déjà de systèmes locaux, car le service de synchronisation Azure AD Connect peut établir un lien à Azure via Internet.
Les connexions sécurisées et l’authentification unique, qui sont traditionnellement derrière un pare-feu sur le LAN et l’authentification NTLM/ Kerberos, sont remplacées dans cette architecture par des connexions TLS à Azure et SAML. Des nouveaux services sont créés à mesure que des applications Azure sont jointes à Azure AD. Les applications existantes qui nécessitent Active Directory (telles qu’une base de données SQL Server) peuvent être exécutées à l’aide d’une VM de serveur Active Directory standard dans la partie IAAS du Azure Cloud Service.
Lorsqu’un utilisateur lance une application traditionnelle, elle est accessible à l’aide des applications publiées XenApp et XenDesktop. Les différents types d’applications sont compilés via la page Applications Azure de l’utilisateur, à l’aide des fonctionnalités d’authentification unique de Microsoft Edge. Microsoft fournit également des applications Android et iOS qui peuvent énumérer et lancer des applications Azure.
Créer une zone DNS
Azure AD requiert que l’administrateur ait enregistré une adresse DNS publique et qu’il contrôle la zone de délégation pour le suffixe de nom de domaine. Pour ce faire, l’administrateur peut utiliser la fonctionnalité de zone DNS d’Azure.
Cet exemple utilise le nom de zone DNS « citrixsamldemo.net. »
La console affiche les noms des serveurs de noms DNS Azure. Ces derniers doivent être référencés dans les entrées NS du bureau d’enregistrement DNS pour la zone (par exemple, citrixsamldemo.net. NS n1-01.azure-dns.com)
Lors de l’ajout de références aux VM exécutées dans Azure, il est plus facile d’utiliser un pointeur CNAME vers l’enregistrement DNS géré par Azure pour la VM. Si l’adresse IP de la VM change, vous n’aurez pas besoin de mettre à jour manuellement le fichier de la zone DNS.
Les suffixes des adresses DNS internes et externes correspondront pour ce déploiement. Le domaine est citrixsamldemo.net, et utilise un split DNS (10.0.0.* en interne).
Ajoutez une entrée « fs.citrixsamldemo.net » qui fait référence au serveur proxy d’application Web. Il s’agit du service de fédération pour cette zone.
Créer un service de cloud
Cet exemple configure un environnement Citrix comprenant un environnement Active Directory avec un serveur ADFS exécuté dans Azure. Un service de cloud appelé « citrixsamldemo » est créé.
Créer des machines virtuelles Windows
Créez cinq VM Windows exécutées dans le service de cloud :
- Contrôleur de domaine (domaincontrol)
- Serveur ADFS Azure Connect (adfs)
- Proxy d’accès Web ADFS (proxy d’application Web, non joint à un domaine)
- Citrix XenDesktop Delivery Controller (ddc)
- les Agents Virtual Desktop Citrix (VDA) ;
Contrôleur de domaine
- Ajoutez les rôles Serveur DNS et Services de domaine Active Directory pour créer un déploiement Active Directory standard (dans cet exemple, citrixsamldemo. net). Une fois la promotion de domaine terminée, ajoutez le rôle Services de certification Active Directory.
- Créez un compte d’utilisateur normal pour le test (par exemple, George@citrixsamldemo.net).
- Étant donné que ce serveur exécutera le DNS interne, tous les serveurs doivent faire référence à ce serveur pour la résolution DNS. Cette opération peut être effectuée au travers de la page des paramètres Azure DNS. (Pour de plus amples informations, consultez la section Annexe dans ce document).
Contrôleur ADFS et serveur proxy d’application Web
- Joignez le serveur ADFS au domaine citrixsamldemo. Le serveur proxy d’application Web doit rester dans un groupe de travail isolé, vous devez donc enregistrer une adresse DNS manuellement avec le DNS AD.
- Exécutez l’applet de commande Enable-PSRemoting –Force sur ces serveurs afin d’autoriser l’accès à distance PowerShell via les pare-feu depuis l’outil Azure AD Connect.
Delivery Controller et VDA XenDesktop
- Installez XenApp ou XenDesktop Delivery Controller et le VDA sur les deux autres serveurs Windows joints à citrixsamldemo.
Configurer un DNS interne
Une fois le contrôleur de domaine installé, configurez le serveur DNS afin de gérer l’affichage interne de citrixsamldemo.net, et d’agir en tant que redirecteur vers un serveur DNS externe (par exemple : 8.8.8.8).
Ajoutez un enregistrement statique pour :
- wap.citrixsamldemo.net [la VM du proxy d’application Web ne sera pas jointe au domaine]
- fs.citrixsamldemo.net [adresse du serveur de fédération interne]
- enterpriseregistration.citrixsaml.net [identique à fs.citrixsamldemo.net]
Toutes les VM exécutées dans Azure doivent être configurées pour utiliser uniquement ce serveur DNS. Vous pouvez effectuer cette opération à l’aide de l’interface réseau.
Par défaut, l’adresse IP interne (10.0.0.9) est attribuée de manière dynamique. Vous pouvez utiliser le paramètre d’adresses IP pour attribuer l’adresse IP de manière permanente. Ceci doit être effectué pour le serveur proxy d’application Web et le contrôleur de domaine.
Configurer une adresse DNS externe
Lorsqu’une VM est en cours d’exécution, Azure gère son propre serveur de zone DNS qui pointe vers l’adresse IP publique attribuée à la VM. Il est utile d’activer cette fonctionnalité car Azure attribue par défaut des adresses IP au démarrage de chaque VM.
Cet exemple attribue l’adresse DNS domaincontrol-citrixsamldemo.westeurope.cloudapp.azure.com au contrôleur de domaine.
Notez que lorsque la configuration distante est terminée, seuls le proxy d’application Web et les VM NetScaler doivent disposer d’adresses IP publiques. (Lors de la configuration, l’adresse IP publique est utilisée pour accéder à distance à l’environnement).
Configurer des groupes de sécurité
Le cloud Azure gère les règles de pare-feu pour l’accès TCP/UDP aux VM à partir d’Internet à l’aide de groupes de sécurité. Par défaut, toutes les VM autorisent l’accès RDP. Les serveurs NetScaler et proxy d’application Web doivent également autoriser TLS sur le port 443.
Créer un certificat d’ADFS
Activez le modèle de certificat Serveur Web sur l’autorité de certification Microsoft (CA). Ceci permet la création d’un certificat avec des adresses DNS personnalisées qui peuvent être exportées (y compris la clé privée) sur un fichier pfx. Vous devez installer ce certificat sur les serveurs ADFS et proxy d’applications Web, par conséquent le fichier pfx est l’option préférée.
Émettez un certificat de serveur Web avec les noms de sujets suivants :
- Commonname:
- adfs.citrixsamldemo.net [nom d’ordinateur]
- SubjectAltname:
- *.citrixsamldemo.net [nom de zone]
- fs.citrixsamldemo. net [entrée dans le DNS]
- enterpriseregistration.citrixsamldemo.net
Exportez le certificat sur un fichier pfx, y compris une clé privée protégée par mot de passe.
Configurer Azure AD
Cette section décrit en détail la création d’une nouvelle instance Azure AD et la création d’identités utilisateur qui peuvent être utilisées pour joindre Windows 10 à Azure AD.
Créer un nouveau répertoire
Ouvrez une session sur le portail Azure et créez un nouveau répertoire.
Une fois le répertoire créé, une page de résumé apparaît.
Créer un utilisateur administrateur global (AzureAdmin)
Créez un administrateur global dans Azure (dans cet exemple, AzureAdmin@citrixsamldemo.onmicrosoft.com) et ouvrez une session avec le nouveau compte pour définir un mot de passe.
Enregistrer votre domaine avec Azure AD
Par défaut, les utilisateurs sont identifiés avec une adresse e-mail au format : <user.name>@<company>.onmicrosoft.com.
Bien que cela fonctionne sans configuration supplémentaire, une adresse e-mail au format standard est préférable, de préférence une qui correspond au compte de messagerie de l’utilisateur final :
L’action Ajouter un domaine configure une redirection de votre domaine d’entreprise réel. Cet exemple utilise citrixsamldemo.net.
Si vous configurez ADFS pour l’authentification unique, activez la case à cocher.
Installer Azure AD Connect
L’étape 2 de l’interface de configuration d’Azure AD redirige l’utilisateur vers la page de téléchargement Microsoft d’Azure AD Connect. Installez ce composant sur la VM ADFS. Utilisez Installation personnalisée, plutôt que Configuration rapide afin que les options ADFS soient disponibles.
Sélectionnez l’option d’authentification unique Fédération avec AD FS.
Connectez-vous à Azure avec le compte administrateur que vous avez créé précédemment.
Sélectionnez la forêt AD interne.
Synchronisez tous les anciens objets Active Directory avec Azure AD.
Si la structure de répertoire est simple, les noms d’utilisateur sont suffisamment uniques pour identifier un utilisateur qui ouvre une session.
Acceptez les options de filtrage par défaut, ou limitez les utilisateurs et machines à un ensemble de groupes particulier.
Si vous le souhaitez, vous pouvez synchroniser les mots de passe Azure AD avec Active Directory. Ceci n’est généralement pas nécessaire pour l’authentification ADFS.
Sélectionnez le fichier .pfx de certificat à utiliser dans ADFS, en spécifiant fs.citrixsamldemo.net en tant que nom DNS.
Lorsque vous êtes invité à sélectionner un serveur proxy, entrez l’adresse du serveur wap.citrixsamldemo.net. Vous devrez peut-être exécuter l’applet de commande Enable-PSRemoting –Force en tant qu’administrateur sur le serveur proxy d’application Web, de façon à ce que Azure AD Connect puisse le configurer.
Remarque : si cette étape échoue en raison de problèmes de confiance avec PowerShell à distance, essayez de joindre le serveur proxy d’application Web au domaine.
Pour les étapes restantes de l’assistant, utilisez les mots de passe de l’administrateur et créez un compte de service pour ADFS. Azure AD Connect vous invitera alors à valider l’appartenance de la zone DNS.
Ajoutez les enregistrements TXT et MX aux enregistrements d’adresses DNS dans Azure.
Cliquez sur Vérifier dans la console de gestion Azure.
Remarque : si cette étape échoue, vous pouvez vérifier le domaine avant d’exécuter Azure AD Connect.
Lorsque l’installation est terminée, l’adresse externe fs.citrixsamldemo.net est contactée sur le port 443.
Activer Azure AD Join (Jonction à un domaine Azure AD)
Lorsqu’un utilisateur entre une adresse e-mail afin que Windows 10 puisse réaliser la jonction Azure AD, le suffixe DNS est utilisé pour construire un enregistrement DNS CNAME qui doit pointer vers ADFS : enterpriseregistration.<suffixeupn>.
Dans cet exemple, il s’agit de fs.citrixsamldemo.net.
Si vous n’utilisez pas d’autorité de certification publique, assurez-vous que le certificat racine ADFS est installé sur l’ordinateur Windows 10 de façon à ce que Windows fasse confiance au serveur ADFS. Effectuez une jonction de domaine Azure AD à l’aide du compte utilisateur standard généré précédemment.
Veuillez noter que le nom UPN doit correspondre au nom UPN reconnu par le contrôleur de domaine ADFS.
Vérifiez que la jonction Azure AD a réussi en redémarrant la machine et en ouvrant une session à l’aide de l’adresse e-mail de l’utilisateur. Une fois connecté, lancez Microsoft Edge et connectez-vous à https://myapps.microsoft.com. Le site Web doit utiliser l’authentification unique automatiquement.
Installer XenApp ou XenDesktop
Vous pouvez installer le Delivery Controller et des machines virtuelles VDA dans Azure directement depuis l’ISO XenApp ou XenDesktop de la manière habituelle.
Dans cet exemple, StoreFront est installé sur le même serveur que le Delivery Controller. Le VDA est installé en tant que travailleur RDS Windows 2012 R2 autonome, sans intégration avec Machine Creation Services (mais cela peut être configuré). Vérifiez que l’utilisateur George@citrixsamldemo.net peut s’authentifier avec un mot de passe avant de continuer.
Exécutez l’applet de commande Set-BrokerSite –TrustRequestsSentToTheXmlServicePort $true sur le Controller pour permettre à StoreFront de s’authentifier sans les informations d’identification de l’utilisateur.
Installer le Service d’authentification fédérée
Installez le composant Service d’authentification fédérée (FAS) sur le serveur ADFS et configurez une règle pour faire en sorte que le Controller agisse en tant que StoreFront approuvé.
Configurer StoreFront
Demandez un certificat d’ordinateur pour le Delivery Controller, et configurez IIS et StoreFront pour utiliser HTTPS en définissant une liaison IIS pour le port 443 et en modifiant l’adresse de base de StoreFront sur https:.
Configurez StoreFront pour utiliser le serveur (FAS) (utilisez le script PowerShell dans l’article Service d’authentification fédérée) et effectuez des tests en interne dans Azure, en vous assurant que l’ouverture de session utilise le FAS en vérifiant l’observateur d’événements sur le serveur FAS.
Configurer StoreFront pour utiliser NetScaler
À l’aide de l’interface Gérer les méthodes d’authentification de la console de gestion StoreFront, configurez StoreFront de manière à ce qu’il utilise NetScaler pour l’authentification.
Pour intégrer les options d’authentification NetScaler, configurez une STA (Secure Ticket Authority) et configurez l’adresse NetScaler Gateway.
Configurer une nouvelle application Azure AD pour le Single Sign-On sur StoreFront
Cette section utilise les fonctionnalités d’authentification unique d’Azure AD SAML 2.0, qui requièrent un abonnement Azure Active Directory Premium. Dans l’outil de gestion Azure AD, sélectionnez Nouvelle application et Ajouter une application à partir de la galerie.
Sélectionnez PERSONNALISER > Ajouter une application non répertoriée que mon organisation utilise pour créer une nouvelle application personnalisée pour vos utilisateurs.
Configurer une icône
Créez une image de 215 x 215 pixels et chargez-la sur la page CONFIGURER pour l’utiliser comme icône pour l’application.
Configurer l’authentification SAML
Retournez sur la page de tableau de bord de l’application et sélectionnez Configurer l’authentification unique.
Ce déploiement utilise l’authentification SAML 2.0, qui correspond à Authentification unique avec Microsoft Azure AD.
L’identificateur peut être une chaîne arbitraire (doit correspondre à la configuration fournie à NetScaler) ; dans cet exemple, l’URL de réponse est /cgi/samlauth sur le serveur NetScaler.
La page suivante contient des informations qui sont utilisées pour configurer NetScaler en tant que partie de confiance pour Azure AD.
Téléchargez le certificat de signature approuvé base 64 et copiez les URL de connexion et de déconnexion. Collez ces dernières dans les écrans de configuration de NetScaler qui suivent.
Attribuer l’application aux utilisateurs
La dernière étape consiste à activer l’application afin qu’elle apparaisse sur la page de contrôle “myapps.microsoft.com” des utilisateurs. Cette opération est réalisée sur la page UTILISATEURS ET GROUPES. Attribuez l’accès aux comptes d’utilisateurs de domaine synchronisés par Azure AD Connect. D’autres comptes peuvent également être utilisés, mais ils doivent être explicitement mappés car ils ne sont pas conformes au format <utilisateur>@<domaine>.
Page MyApps
Lorsque l’application a été configurée, elle s’affiche dans les listes d’applications Azure des utilisateurs lorsqu’ils visitent https://myapps.microsoft.com.
Lorsqu’il est joint à Azure AD, Windows Azure 10 prend en charge l’authentification unique aux applications Azure pour l’utilisateur qui ouvre une session. Le fait de cliquer sur l’icône dirige le navigateur vers la page Web SAML cgi/samlauth qui a été configurée précédemment.
URL d’authentification unique
Retournez à l’application dans le tableau de bord Azure AD. Une adresse URL d’authentification unique est maintenant disponible pour l’application. Cette adresse URL est utilisée pour fournir des liens de navigateur Web ou pour créer des raccourcis du menu Démarrer qui dirigent les utilisateurs directement dans StoreFront.
Collez cette adresse URL dans un navigateur Web pour vous assurer que vous êtes redirigé par Azure AD sur la page Web NetScaler cgi/samlauth configurée précédemment. Ceci fonctionne uniquement pour les utilisateurs qui ont été attribués, et fournira l’authentification unique uniquement aux sessions Windows 10 jointes à Azure AD. (Les autres utilisateurs seront invités à entrer des informations d’identification Azure AD).
Installer et configurer NetScaler Gateway
Pour accéder à distance au déploiement, cet exemple utilise une VM distincte exécutant NetScaler. Cela peut être acheté sur le Azure Store. Cet exemple utilise la version « BYOL » (avec apport de sa propre licence) de NetScaler 11.0.
Ouvrez une session sur la VM NetScaler en pointant un navigateur Web sur l’adresse IP interne et en entrant les informations d’identification spécifiées lorsque l’utilisateur s’est authentifié. Notez que vous devez modifier le mot de passe de l’utilisateur nsroot dans la VM Azure AD.
Ajoutez des licences en sélectionnant redémarrer après l’ajout de chaque fichier de licences, puis pointez la résolution DNS vers le contrôleur de domaine Microsoft.
Exécuter l’assistant d’installation XenApp et XenDesktop
Cet exemple démarre en configurant une intégration StoreFront simple sans SAML. Une fois que le déploiement est opérationnel, il ajoute une stratégie d’ouverture de session SAML.
Sélectionnez les paramètres NetScaler StoreFront standard. À des fins d’utilisation dans Microsoft Azure, cet exemple configure le port 4433, plutôt que le port 443. Vous pouvez également transférer le port ou remapper le site Web d’administration de NetScaler.
À des fins de simplicité, l’exemple charge un certificat de serveur existant et la clé privée stockée dans un fichier.
Configurer le contrôleur de domaine pour la gestion de comptes AD
Le contrôleur de domaine sera utilisé pour la résolution de compte, il convient donc d’ajouter son adresse IP dans la méthode d’authentification principale. Notez les formats attendus dans chaque champ de la boîte de dialogue.
Configurer l’adresse de StoreFront
Dans cet exemple, StoreFront a été configuré avec HTTPS, vous devez donc sélectionner les options du protocole SSL.
Vérifier le déploiement NetScaler
Connectez-vous à NetScaler et vérifiez le succès de l’authentification et du lancement avec le nom d’utilisateur et mot de passe.
Activer la prise en charge de l’authentification SAML NetScaler
L’utilisation de SAML avec StoreFront est similaire à l’utilisation de SAML avec d’autres sites Web. Ajoutez une nouvelle stratégie SAML avec une expression NS_TRUE.
Configurez le nouveau serveur IdP SAML à l’aide des informations obtenues précédemment depuis Azure AD.
Vérifier le système de bout en bout
Ouvrez une session sur un bureau Windows 10 joint à Azure AD à l’aide d’un compte enregistré dans Azure AD. Lancez Microsoft Edge et connectez-vous à : https://myapps.microsoft.com.
Le navigateur Web devrait afficher les applications Azure AD de l’utilisateur.
Vérifiez qu’un clic sur l’icône vous redirige vers un serveur StoreFront authentifié.
De même, vérifiez que les connexions directes utilisant l’URL d’authentification unique et qu’une connexion directe au site NetScaler vous redirigent vers Microsoft Azure et vice versa.
Enfin, vérifiez que les machines non jointes à Azure AD fonctionnent également avec les mêmes URL (bien qu’une authentification unique explicite à Azure AD sera utilisée pour la première connexion).
Annexe
Plusieurs options standard doivent être configurées lors de la création d’une VM dans Azure.
Fournir une adresse IP publique et une adresse DNS
Azure attribue à toutes les VM une adresse IP sur le sous-réseau interne (10.*.*.* dans cet exemple). Par défaut, une adresse IP publique est également fournie et cette dernière peut être référencée par un nom DNS mis à jour de manière dynamique.
Dans Configuration, sélectionnez Public IP address/DNS name label. Choisissez une adresse DNS publique pour la VM. Elle peut être utilisée pour les références CNAME dans d’autres fichiers de zone DNS, pour s’assurer que tous les enregistrements DNS pointent toujours vers la VM, même si l’adresse IP est réallouée.
Configurer des règles de pare-feu (groupe de sécurité)
Chaque VM dans un cloud contient un ensemble de règles de pare-feu appliquées automatiquement, connues sous le nom de groupe de sécurité. Le groupe de sécurité contrôle le trafic transféré depuis l’adresse publique vers l’adresse IP privée. Par défaut, Azure permet à RDP d’être transféré à toutes les VM. Les serveurs NetScaler et ADFS doivent également transférer le trafic TLS (443).
Ouvrez Network Interfaces pour une VM et cliquez sur Network Security Group. Configurez l’option Inbound security rules pour autoriser le trafic réseau approprié.
Informations connexes
- L’article Service d’authentification fédérée est le document de référence principal pour obtenir des informations sur l’installation et la configuration du FAS.
- Les déploiements FAS courants sont décrits dans l’article Vue d’ensemble des architectures du Service d’authentification fédérée.
- Des informations pratiques sont disponibles dans l’article Configuration et gestion du Service d’authentification fédérée.
Dans cet article
- Introduction
- Architecture
- Créer une zone DNS
- Créer un service de cloud
- Créer des machines virtuelles Windows
- Configurer un DNS interne
- Configurer une adresse DNS externe
- Configurer des groupes de sécurité
- Créer un certificat d’ADFS
- Configurer Azure AD
- Activer Azure AD Join (Jonction à un domaine Azure AD)
- Installer XenApp ou XenDesktop
- Configurer une nouvelle application Azure AD pour le Single Sign-On sur StoreFront
- Installer et configurer NetScaler Gateway
- Configurer l’adresse de StoreFront
- Activer la prise en charge de l’authentification SAML NetScaler
- Vérifier le système de bout en bout
- Annexe
- Informations connexes