Configurer F5 BIG-IP Access Policy Manager pour l’authentification unique par formulaire
Découvrez comment configurer BIG-IP Access Policy Manager (APM) de F5 et Microsoft Entra ID pour un accès hybride sécurisé aux applications basées sur un formulaire. Les services publiés par BIG-IP pour l’authentification unique (SSO) Microsoft Entra ID ont des avantages :
- Gouvernance Confiance Zéro améliorée via une pré-authentification Microsoft Entra et un accès conditionnel
- Consultez Qu’est-ce que l’accès conditionnel ?
- Consultez Sécurité Confiance Zéro
- Authentification unique complète entre Microsoft Entra ID et les services publiés par BIG-IP
- Identités managées et accès à partir d’un seul plan de contrôle
- Consultez le centre d’administration Microsoft Entra
En savoir plus :
- Intégrer F5 BIG-IP avec Microsoft Entra ID
- Activer l’authentification unique pour une application d’entreprise
Description du scénario
Pour ce scénario, il existe une application héritée interne configurée pour l’authentification par formulaire (FBA). Dans l’idéal, Microsoft Entra ID gère l’accès aux applications, car l’héritage ne dispose d’aucun protocole d’authentification moderne. La modernisation demande du temps et des efforts, et introduit un risque de temps d’arrêt. Au lieu de cela, vous pouvez déployer BIG-IP entre l’Internet public et l’application interne. Cette configuration limite l’accès entrant à l’application.
Avec BIG-IP devant l’application, vous pouvez superposer le service avec la pré-authentification Microsoft Entra et l’authentification unique basée sur l’en-tête. La superposition améliore la posture de sécurité des applications.
Architecture du scénario
La solution SHA utilise les composants suivants :
- Application : service publié par BIG-IP et protégé par SHA.
- L’application valide les informations d’identification de l’utilisateur par rapport à Active Directory
- Utilisez n’importe quel annuaire, y compris les services AD LDS (Active Directory Lightweight Directory Services), open source, et ainsi de suite
- Microsoft Entra ID : fournisseur d’identité (IdP) SAML (Security Assertion Markup Language) qui vérifie les informations d’identification utilisateur, l’accès conditionnel et l’authentification unique dans BIG-IP.
- Avec l’authentification unique, Microsoft Entra ID fournit des attributs à BIG-IP, y compris des identifiants utilisateur
- BIG-IP : proxy inverse et fournisseur de services SAML pour l’application.
- BIG-IP délègue l’authentification au fournisseur d’identité SAML, puis effectue l’authentification unique basée sur l’en-tête auprès de l’application back-end
- L’authentification unique utilise les informations d’identification de l’utilisateur mises en cache auprès d’autres applications à authentification par formulaire
SHA prend en charge les flux lancés par le fournisseur de services et le fournisseur d’identité. Le diagramme suivant montre le flux lancé par le fournisseur de services.
- L’utilisateur se connecte au point de terminaison d’application (BIG-IP).
- La stratégie d’accès APM BIG-IP redirige l’utilisateur vers Microsoft Entra ID (Fournisseur d’identité SAML).
- Microsoft Entra pré-authentifie l'utilisateur et applique les stratégies d'accès conditionnel appliquées.
- L’utilisateur est redirigé vers BIG-IP (SP SAML), et l’authentification unique s’effectue à l’aide du jeton SAML émis.
- BIG-IP invite l’utilisateur à entrer un mot de passe d’application et stocke celui-ci dans le cache.
- BIG-IP envoie une requête à l’application, et reçoit un formulaire de connexion.
- Le script APM renseigne le nom d’utilisateur et le mot de passe, puis soumet le formulaire.
- Le serveur web sert la charge utile de l’application et l’envoie au client.
Prérequis
Vous avez besoin des composants suivants :
- Un abonnement Azure
- Si vous n’en avez pas déjà un, procurez-vous un compte Azure gratuit.
- Un des rôles suivants : Administrateur d’application cloud ou Administrateur d’application
- Un BIG-IP, ou déployez BIG-IP Virtual Edition (VE) dans Azure
- L’une des licences F5 BIG-IP suivantes :
- F5 BIG-IP® Best bundle
- Licence autonome F5 BIG-IP Access Policy Manager™ (APM)
- Licence de composant additionnel F5 BIG-IP Access Policy Manager™ (APM) sur une instance de BIG-IP F5 BIG-IP® Local Traffic Manager™ (LTM)
- Essai de 90 jours des fonctionnalités complètes de BIG-IP Consultez Free Trials
- Identités utilisateur synchronisées à partir d’un répertoire local vers Microsoft Entra ID
- Un certificat SSL pour publier des services sur HTTPS, ou utilisez les certificats par défaut lors des tests
- Consultez Profil SSL
- Une application existante avec authentification par formulaire, ou configurez une application IIS FBA à des fins de test
- Consultez Authentification par formulaire
Configuration de BIG-IP
La configuration décrite dans cet article est une implémentation SHA flexible : création manuelle d’objets de configuration BIG-IP. Adoptez cette approche pour les scénarios non couverts par les modèles Guided Configuration.
Notes
Remplacez les exemples de chaînes ou de valeurs par ceux de votre environnement.
Inscrire F5 BIG-IP dans Microsoft Entra ID
Conseil
Les étapes décrites dans cet article peuvent varier légèrement en fonction du portail de départ.
L’inscription BIG-IP est la première étape de l’authentification unique entre les entités. L’application que vous créez à partir du modèle de galerie F5 BIG-IP est la partie de confiance représentant le SP SAML pour l’application publiée BIG-IP.
- Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.
- Accédez à Identité>Applications>Applications d’entreprise>Toutes les applications.
- Dans le volet Toutes les applications, sélectionnez Nouvelle application.
- Le volet Parcourir la Galerie Microsoft Entra s’ouvre.
- Des vignettes s’affichent pour les plateformes cloud, les applications locales et les applications recommandées. Les icônes Applications recommandées indiquent la prise en charge de l’authentification unique fédérée et du provisionnement.
- Dans la galerie Azure, recherchez F5.
- Sélectionnez Intégration Microsoft Entra ID de F5 BIG-IP APM.
- Entrez un Nom utilisé par la nouvelle application pour reconnaître l’instance de l’application.
- Sélectionnez Ajouter.
- Sélectionnez Create (Créer).
Activer l’authentification unique pour F5 BIG-IP
Configurez l’inscription de BIG-IP pour satisfaire les jetons SAML demandés par BIG-IP APM.
- Dans le menu de gauche, dans la section Gérer, sélectionnez Authentification unique.
- Le volet Authentification unique s’affiche.
- Dans la page Sélectionner une méthode d’authentification unique, sélectionnez SAML.
- Sélectionnez Non, j’enregistrerai plus tard.
- Dans le volet Configurer l’authentification unique avec SAML, sélectionnez l’icône en forme de crayon.
- Pour Identificateur, remplacez la valeur par l’URL de l’application publiée BIG-IP.
- Pour URL de réponse, remplacez la valeur, mais conservez le chemin du point de terminaison de SP SAML de l’application. Avec cette configuration, le flux SAML fonctionne en mode lancé par l’IdP. Microsoft Entra ID émet une assertion SAML, puis l’utilisateur est redirigé vers le point de terminaison BIG-IP.
- Pour le mode lancé par le fournisseur de services, pour URL de connexion, entrez l’URL de l’application.
- Pour URL de déconnexion, entrez le point de terminaison Single Logout (SLO) de BIG-IP APM précédé de l’en-tête de l’hôte du service. Ainsi, les sessions utilisateur BIG-IP APM se termineront lorsqu’elles se déconnecteront de Microsoft Entra ID.
Notes
À compter de Traffic Management Operating System (TMOS) v16, le point de terminaison SLO SAML est /saml/sp/profile/redirect/slo
.
- Sélectionnez Enregistrer.
- Fermez le volet de configuration SAML.
- Ignorez l’invite de test de l’authentification unique.
- Notez les propriétés de la section Attributs utilisateur et revendications. Microsoft Entra ID envoie les propriétés pour l’authentification BIG-IP APM et l’authentification unique à l’application principale.
- Dans le volet Certificat de signature SAML, sélectionnez Télécharger.
- Le fichier XML des métadonnées de fédération est enregistré sur votre ordinateur.
Remarque
Les certificats de signature SAML Microsoft Entra ont une durée de vie de trois ans.
En savoir plus : Tutoriel : Gérer les certificats pour l’authentification unique fédérée
Affecter des utilisateurs et des groupes
Microsoft Entra ID émet des jetons pour les utilisateurs auxquels l’accès à une application a été accordé. Pour accorder à des utilisateurs et des groupes spécifiques l’accès à l’application :
- Dans le volet Vue d’ensemble de l’application F5 BIG-IP, sélectionnez Attribuer des utilisateurs et des groupes.
- Sélectionnez + Ajouter un utilisateur/groupe.
- Sélectionnez les utilisateurs et les groupes souhaités.
- Sélectionnez Attribuer.
Configuration BIG-IP avancée
Utilisez les instructions suivantes pour configurer BIG-IP.
Configurer les paramètres du fournisseur de services SAML
Les paramètres de SP SAML définissent les propriétés du fournisseur de services SAML qu’APM utilise pour superposer la préauthentification SAML à l’application héritée. Pour les configurer :
Sélectionnez Access>Federation>SAML Service Provider.
Sélectionnez Local SP Services.
Sélectionnez Créer.
Dans le volet Create New SAML SP Service, pour Name et Entity ID, entrez le nom et l’ID d’entité définis.
Notes
Les valeurs SP Name Settings sont requises si l’ID d’entité ne correspond pas à la partie nom d’hôte de l’URL publiée. Ou bien, les valeurs sont requises si l’ID d’entité n’est pas au format d’URL standard basé sur le nom d’hôte.
Si l’ID d’entité est
urn:myvacation:contosoonline
, entrez le schéma externe et le nom d’hôte de l’application.
Configurer un connecteur IdP externe
Un connecteur de fournisseur d’identité SAML définit les paramètres pour que l’APM BIG-IP fasse confiance à Microsoft Entra ID en tant que fournisseur d’identité SAML. Les paramètres connectent le fournisseur de services SAML à un IdP SAML, qui établit l’approbation de fédération entre l’APM et Microsoft Entra ID.
Pour configurer le connecteur :
Sélectionnez le nouvel objet fournisseur de services SAML.
Sélectionnez Bind/UnbBind IdP Connectors.
Dans la liste Create New IdP Connector, sélectionnez From Metadata.
Dans le volet Create New SAML IdP Connector, recherchez le fichier XML de métadonnées de fédération que vous avez téléchargé.
Entrez un nom de fournisseur d’identité (Identity Provider Name) pour l’objet APM qui représente l’IdP SAML externe. Par exemple, MyVacation_EntraID.
Sélectionnez Add New Row.
Sélectionnez le nouveau SAML IdP Connector.
Sélectionnez Mettre à jour.
Sélectionnez OK.
Configurer l’authentification unique par formulaire
Créez un objet d’authentification unique APM pour l’authentification unique FBA auprès des applications back-end.
Effectuez l’authentification unique FBA en mode lancé par le client ou en mode lancé par BIG-IP. Les deux méthodes émulent une connexion d’utilisateur en injectant des informations d’identification dans les balises de nom d’utilisateur et de mot de passe. Le formulaire est envoyé. Les utilisateurs fournissent un mot de passe pour accéder à une application FBA. Le mot de passe est mis en cache et réutilisé pour d’autres applications FBA.
Sélectionnez Access>Single Sign-on.
Sélectionnez Forms Based.
Sélectionnez Create (Créer).
Pour Name, entrez un nom descriptif. Par exemple, Contoso\FBA\sso.
Pour Use SSO Template, sélectionnez None.
Pour Username Source, entrez la source du nom d’utilisateur pour prérenseigner le formulaire de collecte de mot de passe. La valeur par défaut
session.sso.token.last.username
fonctionne bien, car elle comporte l’UPN (nom d’utilisateur principal) Microsoft Entra ID de l’utilisateur connecté.Pour Password Source, conservez la valeur par défaut
session.sso.token.last.password
, la variable APM utilisée par BIG-IP pour mettre en cache les mots de passe utilisateur.Pour Start URI, entrez l’URI d’ouverture de session de l’application FBA. Si l’URI de requête correspond à cette valeur d’URI, l’authentification par formulaire APM exécute l’authentification unique.
Laissez le champ Form Action vide. Ainsi, l’URL de requête originale est utilisée pour l’authentification unique.
Pour Form Parameter for Username, entrez l’élément du champ de nom d’utilisateur du formulaire de connexion. Utilisez les outils de développement de navigateur pour déterminer l’élément.
Pour Form Parameter for Password, entrez l’élément du champ de mot de passe du formulaire de connexion. Utilisez les outils de développement de navigateur pour déterminer l’élément.
Pour en savoir plus, accédez à techdocs.f5.com et consultez Manual Chapter: Single sign-on methods.
Configurer un profil d’accès
Un profil d’accès lie les éléments APM qui gèrent l’accès aux serveurs virtuels BIG-IP, notamment les stratégies d’accès, la configuration SSO et les paramètres de l’interface utilisateur.
Sélectionnez Access>Profiles / Policies.
Sélectionnez Access Profiles (Per-Session Policies).
Sélectionnez Create (Créer).
Saisissez un Nom.
Pour Profile Type, sélectionnez All.
Pour SSO Configuration, sélectionnez l’objet de configuration de l’authentification unique FBA que vous avez créé.
Pour Accepted Language, sélectionnez au moins une langue.
Dans la colonne Per-Session Policy, pour le profil, sélectionnez Edit.
L’éditeur de stratégie visuelle APM démarre.
Sous fallback, sélectionnez le signe +.
- Dans la fenêtre contextuelle, sélectionnez Authentication.
- Sélectionnez SAML Auth.
- Sélectionnez Ajouter un élément.
- Sur le fournisseur de services d’authentification SAML, remplacez le Nom par Microsoft Entra authentification.
- Dans la liste déroulante AAA Server, entrez l’objet fournisseur de services SAML que vous avez créé.
- Dans la branche Successful, sélectionnez le signe +.
- Dans la fenêtre contextuelle, sélectionnez Authentication.
- Sélectionnez Logon Page.
- Sélectionnez Ajouter un élément.
- Pour username, dans la colonne Read Only, sélectionnez Yes.
Pour fallback dans la page de connexion, sélectionnez le signe +. Cette action ajoute un objet de mappage d’informations d’identification SSO.
Dans la fenêtre contextuelle, sélectionnez l’onglet Assignment.
Sélectionnez SSO Credential Mapping.
Sélectionnez Ajouter un élément.
Dans Variable Assign: SSO Credential Mapping, conservez les paramètres par défaut.
Sélectionnez Enregistrer.
Dans la zone Deny supérieure, sélectionnez le lien.
La branche Successful passe à Allow.
Sélectionnez Enregistrer.
(Facultatif) Configurer des mappages d’attributs
Vous pouvez ajouter une configuration LogonID_Mapping. La liste des sessions actives BIG-IP mentionne alors l’UPN de l’utilisateur connecté, et non un numéro de session. Utilisez ces informations pour analyser les journaux ou résoudre les problèmes.
Pour la branche SAML Auth Successful, sélectionnez le signe +.
Dans la fenêtre contextuelle, sélectionnez Assignment.
Sélectionnez Variable Assign.
Sélectionnez Ajouter un élément.
Sous l’onglet Properties, entrez un nom (Name). Par exemple, LogonID_Mapping.
Sous Variable Assign, sélectionnez Add new entry.
Sélectionnez change.
Pour Custom Variable, utilisez
session.logon.last.username
.Pour Session Variable, utilisez
session.saml.last.identity
.Sélectionnez Finished.
Sélectionnez Enregistrer.
Sélectionnez Apply Access Policy (Appliquer la stratégie d’accès).
Fermez l’onglet Visual Policy Editor.
Configurer un pool principal
Pour permettre à BIG-IP de transférer le trafic client correctement, créez un objet de nœud BIG-IP qui représente le serveur back-end qui héberge votre application. Ensuite, placez ce nœud dans un pool de serveurs BIG-IP.
Sélectionnez Local Traffic>Pools.
Sélectionnez Pool List.
Sélectionnez Create (Créer).
Entrez un nom (Name) pour un objet de pool de serveurs. Par exemple, MyApps_VMs.
Pour Node Name, entrez un nom d’affichage du serveur. Ce serveur héberge l’application web back-end.
Pour Address, entrez l’adresse IP de l’hôte du serveur d’applications.
Pour Service Port, entrez le port HTTP/S sur lequel l’application écoute.
Notes
Les moniteurs d’intégrité nécessitent une configuration qui n’est pas abordée dans cet article. Accédez à support.f5.com et consultez l’article K13397: Overview of HTTP health monitor request formatting for the BIG-IP DNS system.
Configurer un serveur virtuel
Un serveur virtuel est un objet de plan de données BIG-IP représenté par une adresse IP virtuelle. Le serveur écoute les requêtes du client adressées à l’application. Tout trafic reçu est traité et évalué par rapport au profil d’accès APM associé au serveur virtuel. Le trafic est dirigé conformément à la stratégie.
Pour configurer un serveur virtuel :
Sélectionnez Local Traffic>Virtual Servers.
Sélectionnez Virtual Server List.
Sélectionnez Create (Créer).
Saisissez un Nom.
Pour Destination Address/Mask, sélectionnez Host et entrez une adresse IPv4 ou IPv6. L’adresse reçoit le trafic client pour l’application back-end publiée.
Pour Service Port, sélectionnez Port, entrez 443, puis HTTPS.
Pour HTTP Profile (Client), sélectionnez http.
Pour SSL Profile (Client), sélectionnez le profil que vous avez créé, ou conservez la valeur par défaut à des fins de test. Cette option permet à un serveur virtuel TLS (Transport Layer Security) de publier des services via HTTPS.
Pour Source Address Translation, sélectionnez Auto Map.
Sous Access Policy, dans la zone Access Profile, entrez le nom que vous avez créé. Cette action lie le profil de pré-authentification SAML de Microsoft Entra et la stratégie d’authentification unique FBA des en-têtes au serveur virtuel.
- Sous Resources, pour Default Pool, sélectionnez les objets de pool de back-ends que vous avez créés.
- Sélectionnez Finished.
Configurer les paramètres de gestion de session
Les paramètres de gestion des sessions BIG-IP définissent les conditions d’arrêt et de continuation des sessions. Créez une stratégie dans cette zone.
- Accédez à Access Policies.
- Sélectionnez Access Profiles.
- Sélectionnez Access Profile.
- Dans la liste, sélectionnez votre application.
Si vous avez défini une valeur d’URI Single Logout dans Microsoft Entra ID, une déconnexion lancée par le fournisseur d’identité à partir de MyApps met fin à la session entre le client et BIG-IP APM. Le fichier XML de métadonnées de fédération d’application importé fournit à APM le point de terminaison SAML Microsoft Entra pour la déconnexion lancée par le fournisseur de services. Veillez à ce qu’APM réponde correctement à une déconnexion de l’utilisateur.
S’il n’existe pas de portail web BIG-IP, les utilisateurs ne peuvent pas demander à APM de se déconnecter. Si l’utilisateur se déconnecte de l’application, BIG-IP n’en a pas connaissance. La session d’application peut être rétablie via l’authentification unique. Pour la déconnexion lancée par le fournisseur de services, veillez à ce que les sessions se terminent de manière sécurisée.
Vous pouvez ajouter une fonction SLO au bouton de déconnexion de votre application. Cette fonction redirige le client vers le point de terminaison de déconnexion SAML de Microsoft Entra. Pour localiser le point de terminaison de déconnexion SAML, accédez à Inscriptions des applications > Point de terminaison.
Si vous ne pouvez pas modifier l’application, faites en sorte que BIG-IP écoute l’appel de déconnexion d’application et déclenche SLO.
En savoir plus :
- K42052145 : Configuration de l’arrêt automatique de session (déconnexion) en fonction d’un nom de fichier référencé par un URI
- K12056 : Vue d’ensemble de l’option Inclure l’URI de déconnexion
Application publiée
Votre application est publiée et accessible avec SHA avec l’URL de l’application ou les portails Microsoft.
L’application s’affiche en tant que ressource cible dans Accès conditionnel. En savoir plus : Créer une stratégie d’accès conditionnel.
Pour améliorer la sécurité, bloquez l’accès direct à l’application en forçant l’adoption d’un chemin par le biais de BIG-IP.
Test
Avec un navigateur, connectez-vous à l’URL externe de l’application ou, dans MyApps, sélectionnez l’icône de l’application.
Authentifiez-vous auprès de Microsoft Entra ID.
Vous êtes redirigé vers le point de terminaison BIG-IP pour l’application.
L’invite de mot de passe s’affiche.
APM préremplit le nom d’utilisateur avec l’UPN de Microsoft Entra ID. Le nom d’utilisateur est en lecture seule pour la cohérence de session. Masquez ce champ, si nécessaire.
Les informations sont envoyées.
Vous êtes connecté à l’application.
Résolution des problèmes
Lors de la résolution des problèmes, tenez compte des informations suivantes :
BIG-IP effectue l’authentification unique FBA lors de l’analyse du formulaire de connexion à l’URI
- BIG-IP recherche les étiquettes d’élément de nom d’utilisateur et de mot de passe à partir de votre configuration
Vérifiez que les étiquettes d’éléments sont cohérentes, sinon l’authentification unique échouera
Les formulaires complexes générés dynamiquement peuvent nécessiter une analyse avec les outils de développement afin de comprendre le formulaire de connexion
Le lancement par le client est préférable pour les pages de connexion avec plusieurs formulaires
- Vous pouvez spécifier le nom du formulaire et personnaliser la logique du gestionnaire de formulaires JavaScript
Les méthodes d’authentification unique FBA optimisent l’expérience utilisateur et la sécurité en masquant les interactions de formulaire :
- Vous pouvez vérifier si les informations d’identification sont injectées
- En mode lancement par le client, désactivez l’inscription automatique de formulaire dans votre profil d’authentification unique
- Utilisez les outils de développement pour désactiver les deux propriétés de style qui empêchent l’affichage de la page de connexion
Augmenter la verbosité du journal
Les journaux BIG-IP contiennent des informations permettant d’isoler les problèmes d’authentification et d’authentification unique. Augmentez le niveau de détail du journal :
- Accédez à Access Policy>Overview.
- Sélectionnez Event Logs.
- Sélectionnez Paramètres.
- Sélectionnez la ligne de votre application publiée.
- Sélectionnez Modifier.
- Sélectionnez Access System Logs.
- Dans la liste de l’authentification unique, sélectionnez Debug.
- Sélectionnez OK.
- Reproduisez le problème.
- Passez en revue les journaux.
Rétablissez les paramètres, sinon il y a des données excessives.
Message d’erreur BIG-IP
Si une erreur BIG-IP apparaît après la pré-authentification Microsoft Entra, le problème peut être lié à l’authentification unique Microsoft Entra ID et BIG-IP.
- Accédez à Access>Overview.
- Sélectionnez Access reports.
- Exécutez le rapport pour la dernière heure.
- Passez en revue les journaux à la recherche d’éventuels indices.
Utilisez le lien View session variables pour votre session afin de déterminer si APM reçoit les revendications Microsoft Entra attendues.
Aucun message d’erreur BIG-IP
Si aucun message d’erreur BIG-IP n’apparaît, le problème peut être lié à la requête back-end ou à l’authentification unique entre BIG-IP et l’application.
- Sélectionnez Access Policy>Overview.
- Sélectionnez Active Sessions.
- Sélectionnez le lien de session active.
Utilisez le lien View Variables à cet endroit pour vous aider à déterminer la cause racine, en particulier si APM ne parvient pas à obtenir l’identifiant utilisateur et le mot de passe.
Pour en savoir plus, accédez à techdocs.f5.com et consultez Manual Chapter: Session Variables.