Le systÚme Active Directory Federation Services (AD FS) est un service de fédération d'identités qui permet de partager des informations d'authentification et d'autorisation entre différents systÚmes. Il permet de simplifier, de centraliser la gestion des différentes identités et donc de renforcer la sécurité de l'accÚs aux ressources informatiques.
Spécificités
L'AD FS facilite la gestion des identités et renforce la sécurité de l'accÚs aux ressources en permettant la fédération d'identités entre différents systÚmes. C'est un service permettant d'offrir :
- Un service SSO (Single Sign On) : une authentification unique pour accéder à plusieurs applications.
- L'authentification gérée avant l'accÚs à l'application : exclusivement gérés par le serveur ADFS par des créations de tickets uniques.
Il proposes, entre autre, des fonctionnalités assez intéressantes comme :
- Fourniture d'un service de fédération d'identités : permet de partager des informations d'authentification et d'autorisation entre différentes applications et systÚmes.
- Prise en charge de différents protocoles de sécurité tels que WS-Federation, SAML et l'OAuth afin garantir la confidentialité et l'intégrité des informations échangées.
- Intégration avec Active Directory, ce qui facilite la gestion des identités et la configuration de la sécurité pour les applications fédérées.
- Gestion des politiques d'accĂšs sur les attributs de l'utilisateur, tels que le groupe ou le rĂŽle, pour contrĂŽler l'accĂšs aux ressources.
- Prend en charge l'authentification multi-facteurs afin de renforcer la sécurité de l'accÚs aux ressources et rajouter ainsi un second facteur en plus du mot de passe de l'utilisateur.
- Gestion des certificats, utilisés pour la sécurité de la fédération d'identités et pour la signature des tokens d'authentification.
- Intégration avec des solutions tierces telles que des fournisseurs d'identités ou des applications SaaS, pour permettre la fédération d'identités avec des partenaires externes.
Principe de fonctionnement
Authentification en local
ADFS est concrÚtement un service à authentification unique. C'est à dire que l'utilisateur souhaite se connecter à une application Web (son portail OWA Exchange par exemple). De ce fait l'utilisateur sera redirigé sur la page d'authentification d'ADFS permettant ainsi à l'utilisateur de se connecter. Nous allons décrire dans les détails le principe de fonctionne d'une authentification avec ADFS en local.
Dans le cadre d'une authentification locale, voici le processus de fonctionnement :
- L'utilisateur souhaite accĂ©der Ă une application Web sur le serveur WEB en effectuant une requĂȘte WEB.
- Le serveur Web effectue une redirection Web vers le serveur ADFS car il n'est pas authentifié.
- Le client demande une authentification ADFS en contactant directement le serveur ADFS dans le réseau local.
- Sur le serveur ADFS, ce dernier fait appel au contrÎleur de domaine Active Directory afin de vérifier l'identité de l'utilisateur. Il vérifie ainsi les identifiants d'authentifications.
- Si l'authentification a réussie, un nouveau ticket unique SAML est créé pour cette connexion uniquement.
- Le client présente le ticket qu'il a obtenu depuis le serveur ADFS au serveur WEB.
- Le serveur Web vérifie le ticket en amont avec le serveur ADFS.
- L'utilisateur est à présent authentifié, il est redirigé vers l'application ou le site Web.
Authentification depuis l'extérieur
Dans le cadre d'une authentification externe (sur Internet), il est nécessaire d'ajouter un serveur supplémentaire, dédié pour le rÎle ADFS WAP (Web Application Proxy), afin de suivre les bonnes pratiques de sécurité.
Si jamais votre serveur ADFS est placĂ© en DMZ et qu'il soit compromis, c'est tout le rĂ©seau avec les contrĂŽleurs de domaine qui est en danger ! Nous savons bien que les contrĂŽleurs de domaines Active Directory sont des points trĂšs critiques dans une entreprise et qu'ils doivent ĂȘtre placĂ©s dans un rĂ©seau dĂ©diĂ© avec des contrĂŽles d'accĂšs avec un pare-feu + un VLAN.
Les serveurs proxies ADFS (Proxy ADFS) seront positionnés dans la DMZ publique (zone des machines accessibles depuis Internet).
Il s'agit en effet du mĂȘme processus mais cette fois ci notre infrastructure est un peu plus complexe et est organisĂ©e diffĂ©remment avec une DMZ publique et privĂ©e et des pares-feux afin de sĂ©parer chaque zone :
Le principe de fonctionnement pour une authentification externe respecte l'organisation suivante :
- L'utilisateur souhaite accĂ©der Ă une application Web sur le serveur WEB en effectuant une requĂȘte WEB.
- Le serveur Web effectue une redirection Web vers le serveur ADFS car il n'est pas authentifié.
- Le client demande une authentification ADFS en contactant directement le serveur WAP (Web Application Proxy) situé dans le réseau de la DMZ publique.
- Le serveur WAP transfÚre la demande au serveur ADFS situé dans la DMZ privée.
- L'ADFS fait appel au contrÎleur de domaine Active Directory afin de vérifier l'identité de l'utilisateur. Il vérifie ainsi les identifiants d'authentifications.
- Si l'authentification a réussie, un nouveau ticket unique SAML est créé pour cette connexion uniquement et est transmit au WAP.
- Le WAP transmet le ticket SAML Ă©mis par l'ADFS au client.
- Le client présente le ticket SAML qu'il a obtenu au serveur WEB.
- Le serveur Web vérifie le ticket en amont avec le serveur ADFS.
- L'utilisateur est à présent authentifié, il est redirigé vers l'application ou le site Web.
Prérequis
Afin de suivre dans les meilleures conditions la formation ADFS, quelques prérequis sont nécessaires :
- Au minimum un serveur de domaine Active Directory (rÎle ADDS) configuré (voir : Configurer un contrÎleur de domaine avec Windows Server 2022).
- Une machine Windows Server pour le rĂŽle ADFS.
- Une machine Windows Server pour le "Web Application Proxy" de l'ADFS (positionné dans une DMZ privée).
- Une machine Windows cliente afin d'effectuer les différents tests.
Maintenant que le fonctionnement ADFS vous a éclairé (du moins je l'espÚre ), nous allons voir par la suite l'installation, la configuration et l'accÚs à une application par le biais de l'authentification SSO proposée par ADFS !