Guide de validation de concept : nFactor pour Citrix Gateway avec authentification OTP native

Introduction

La mise en œuvre de l’authentification multifactorielle est l’un des meilleurs moyens de vérifier l’identité et d’améliorer la sécurité. Natif (basé sur le temps) One Time Password (OTP) est un moyen pratique d’implémenter un autre facteur à l’aide d’applications d’authentification facilement disponibles. Il permet aux utilisateurs d’entrer des codes de validation de leur application d’authentification, dans un formulaire de passerelle, pour s’authentifier.

Citrix Gateway prend en charge l’OTP natif et peut fournir une authentification pour divers services, y compris les services Web, VPN et Citrix Virtual Apps and Desktops. Dans ce guide POC, nous démontrons son utilisation pour l’authentification dans un environnement Citrix Virtual Apps and Desktops.

Architecture conceptuelle

Inscription OTP natif

Authentification OTP native

Aperçu

Ce guide explique comment implémenter un environnement Proof of Concept à l’aide de l’authentification à deux facteurs avec Citrix Gateway. Il utilise LDAP pour valider les informations d’identification Active Directory comme premier facteur, et OTP natif comme second facteur.

Il émet des hypothèses sur l’installation terminée et la configuration des composants suivants :

  • Citrix Gateway installé, sous licence et configuré avec un serveur virtuel accessible en externe lié à un certificat générique
  • Citrix Gateway intégré à un environnement Citrix Virtual Apps and Desktops qui utilise LDAP pour l’authentification
  • Point de terminaison avec l’application Citrix Workspace installée
  • Application Authenticator prise en charge, prenant en charge l’OTP basé sur le temps, installée (y compris Microsoft Authenticator, Google Authenticator ou Citrix SSO)
  • Active Directory (AD) est disponible dans l’environnement

Reportez-vous à la Documentation Citrix pour obtenir la dernière version du produit et les conditions requises en matière de licence : Authentification OTP native

nFactor

Stratégies LDAP

Tout d’abord, nous créons deux politiques LDAP que nous référençons plus tard lorsque nous construisons notre flux NFactor.

Inscription OTP natif

Cette stratégie d’enregistrement LDAP est utilisée pour échanger et stocker la clé utilisée pour générer le code OTP basé sur le temps.

  1. Connectez-vous à l’interface utilisateur Citrix ADC
  2. Accédez à Sécurité > Trafic des applications AAA-> Stratégies > Authentification > Stratégies avancées > Stratégie
  3. Cliquez sur Add
  4. Entrez le nom polldap_notpmanage de la stratégie, puis modifiez le type d’action par LDAP.
  5. Cliquez Add sous Action
  6. Remplissez les champs suivants :
    • Nom - entrer actldap_notpmanage
    • Nom du serveur/adresse IP : sélectionnez un nom de domaine complet ou une adresse IP pour le ou les serveurs AD. Nous entrons 192.0.2.50
    • Désactivez Authentication ce paramètre ainsi que le secret OTP ci-dessous indiquent que la stratégie définira, plutôt que d’obtenir, les attributs d’objet
    • DN de base - entrez le chemin d’accès au conteneur utilisateur AD. Nous entrons DC=workspaces, DC=wwco, DC=net
    • Administrateur Bind DN - entrez le compte admin/service pour interroger AD pour authentifier les utilisateurs. Nous entrons workspacessrv@workspaces.wwco.net
    • Confirmer/Mot de passe administrateur - saisissez/confirmez le mot de passe du compte admin/service
    • Cliquez sur Tester la connectivité réseau pour garantir la connexion.
    • Attribut du nom d’ouverture de session du serveur - dans le deuxième champ sous ce champ, entrez userPrincipalName
    • OTP Secret - Enter userParameters Ceci est l’objet LDAP de l’utilisateur qui sera mis à jour avec la clé qui est utilisée avec le hachage pour générer le code OTP basé sur le temps
  7. Sélectionnez Créer OTP natif
  8. Entrez l’expression true, puis cliquez sur OK OTP natif

Authentification OTP native

Cette stratégie d’authentification LDAP est utilisée pour effectuer l’authentification du premier facteur.

  1. Accéder à Security > AAA-Application Traffic > Policies > Authentication > Advanced Policies > Policy
  2. Cliquez sur Add
  3. Entrez le nom polldap_notpauth de la stratégie, puis modifiez le type d’action par LDAP.
  4. Cliquez Add sous Action
  5. Remplissez les champs suivants :
    • Nom - entrer actldap_notpauth
    • Nom du serveur/adresse IP : sélectionnez un nom de domaine complet ou une adresse IP pour le ou les serveurs AD. Nous entrons 192.0.2.50
    • DN de base - entrez le chemin d’accès au conteneur utilisateur AD. Nous entrons DC=workspaces, DC=wwco, DC=net
    • Administrateur Bind DN - entrez le compte admin/service pour interroger AD pour authentifier les utilisateurs. Nous entrons workspacessrv@workspaces.wwco.net
    • Confirmer/Mot de passe administrateur - saisissez/confirmez le mot de passe du compte admin/service
    • Cliquez sur Tester la connectivité réseau pour garantir la connexion.
    • Attribut du nom d’ouverture de session du serveur - dans le deuxième champ sous ce champ, entrez userPrincipalName
  6. Sélectionnez Créer OTP natif
  7. Entrez l’expression true, puis cliquez sur OK OTP natif

Pour plus d’informations, voir Stratégies d’authentification LDAP

Schémas de connexion

Les schémas de connexion sont utilisés lorsque des données doivent être collectées pour le compte d’une stratégie.

LSchema OTP natif - Authentification unique

Ce schéma de connexion d’enregistrement correspond à la stratégie d’enregistrement LDAP.

  1. Accéder à Security > AAA-Application Traffic > Login Schema
  2. Sélectionnez l’ Profile onglet
  3. Cliquez Add sous Profil et nommez-le. prolschema_notpsingle
  4. Cliquez sur l’icône de crayon en regard de noschema
  5. Cliquez sur Login Schema, puis faites défiler vers le bas pour sélectionner SingleAuthManageOTP.xml, puis sélectionnez le bleu Select dans le coin droit.
  6. Cliquez sur Create OTP natif

LSchema OTP natif - Authentification double

Ce schéma de connexion d’enregistrement correspond à l’authentification à double facteur où l’utilisateur saisit à la fois son mot de passe et le code d’accès OTP.

  1. Sous l’ Profile onglet, cliquez Add à nouveau
  2. Entrez le nom pollschema_notpdual
  3. Cliquez Add sous Profil, et nommez-le prolschema_notpdual
  4. Cliquez sur l’icône de crayon en regard de noschema
  5. Cliquez sur Login Schema, puis faites défiler vers le bas pour sélectionner DualAuth.xml, puis sélectionnez le bleu Select dans le coin droit.
  6. Cliquez sur More
  7. Dans le champ, Password Credential Index entrez 1
  8. Cliquez sur Create OTP natif

Serveur AAA virtuel OTP natif - Flux de visualiseur

  1. Suivant accédez à Security > AAA - Application Traffic > nFactor Visualizer > nFactor Flows
  2. Cliquez sur Add
  3. Cliquez sur le + signe pour créer le facteur initial. Ce facteur ne prendra pas d’action, plutôt gérera la direction du trafic entrant vers les flux de facteurs d’enregistrement ou d’authentification.
  4. Entrez factor0-notp, puis cliquez sur Create OTP natif

Flux d’enregistrement

  1. Sélectionner Add Policy
  2. Sélectionner Add à côté de Select Policy
  3. Entrer nom polfactor0-notpmanage
  4. Définissez la Action Type valeur NO_AUTHN
  5. Coller HTTP.REQ.COOKIE.VALUE(“NSC_TASS”).EQ(“manageotp”) pour l’expression OU la créer avec Expression Builder OTP natif Vous pouvez éventuellement limiter l’enregistrement aux terminaux sur le réseau interne en ajoutant des critères d’adresse IP source tels que http.req.cookie.value("NSC_TASS").eq("manageotp") && client.IP.SRC.IN_SUBNET(10.0.0.0/8)
  6. Cliquez sur Create, suivi de Add OTP natif
  7. Sélectionnez le vert + à droite de la polfactor0-notpmanage stratégie que vous venez de créer
  8. Entrez factor1-notpmanage, puis cliquez sur Create OTP natif
  9. Dans la zone Nouveau facteur, sélectionnez Add Schema
  10. Sélectionnez prolschema_notpsingle, puis cliquez sur Ok
  11. Sélectionner Add Policy
  12. Dans la liste déroulante sous Select Policy Sélectionner polldap_notpauth, puis cliquez sur Add
  13. Sélectionnez le vert + à droite de la polldap_notpauth politique
  14. Entrez factor2-notpmanage, puis cliquez sur Create OTP natif
  15. Dans la zone Nouveau facteur, sélectionnez Add Policy
  16. Dans la liste déroulante sous Select Policy Sélectionner polldap_notpmanage, puis cliquez sur Add OTP natif

Flux d’authentification

  1. Maintenant, dans la boîte de facteur initial que nous avons créée factor0-notp, sélectionnez le bleu +
  2. Sélectionner Add à côté de Select Policy
  3. Entrer nom polfactor0-notpauth
  4. Définir Action Type la valeur NO_AUTHN
  5. Entrez true pour l’expression
  6. Cliquez sur Create, suivi de Add Noter que la priorité de la stratégie a augmenté à 110, ce qui signifie qu’elle ne sera exécutée que si la stratégie ci-dessus polfactor0-notpmanage à 100 n’est pas une correspondance. OTP natif
  7. Sélectionnez le vert + à droite de la polfactor0-notpauth stratégie que vous venez de créer
  8. Entrez factor1-notpauth, puis cliquez sur Create
  9. Dans la zone Nouveau facteur, sélectionnez Add Schema
  10. Sélectionnez prolschema_notpdual, puis cliquez sur Ok
  11. Sélectionner Add Policy
  12. Dans la liste déroulante sous Select Policy Sélectionner polldap_notpauth, puis cliquez sur Add
  13. Sélectionner Done OTP natif

Serveur AAA virtuel OTP natif

Ce serveur AAA virtuel est l’endroit où les stratégies et le schéma sont liés avec la priorité appropriée.

  1. Accédez à Gestion du trafic > SSL> Certificats > Tous les certificats pour vérifier que votre certificat de domaine est installé. Dans cet exemple POC, nous avons utilisé un certificat générique correspondant à notre domaine Active Directory. Voir Certificats SSL Citrix ADC pour plus d’informations.
  2. Ensuite, accédez à Security > AAA - Application Traffic > Virtual Servers, puis sélectionnez Ajouter
  3. Entrez les champs suivants :
    • Nom - une valeur unique. Nous entrons nativeotp_authvserver
    • Type d’adresse IP - Non Addressable
  4. Cliquez sur Ok
  5. Sélectionnez Aucun certificat de serveur, sélectionnez la flèche sous Select Server Certificate, sélectionnez le certificat de domaine, cliquez sur Sélectionner, Lier et Continuer
  6. Sous Advanced Authentication Policies, sélectionnez No Nfactor Flow
  7. Sélectionnez la flèche vers la droite sous Select nFactor Flow, sélectionnez factor0_notp, cliquez Select, cliquez sur Bind OTP natif
  8. Cliquez sur Continue, suivi de Done OTP natif

Politique de trafic

Maintenant, nous créons une stratégie de trafic pour relayer le mot de passe LDAP à StoreFront, au lieu du code d’accès OTP.

  1. Accédez à Citrix Gateway > Serveurs virtuels > Stratégies > Trafic
  2. Sélectionnez l’ Traffic Profiles onglet, puis cliquez sur Ajouter
  3. Entrez le nom notp_trafficprofile
  4. Sélectionner HTTP
  5. Dans l’expression de mot de passe SSO, entrez http.REQ.USER.ATTRIBUTE(1)
  6. Cliquez sur Créer OTP natif
  7. Cliquez maintenant sur l’onglet Stratégies de trafic
  8. Dans le champ Profil de demande, sélectionnez le profil de notp_trafficprofile trafic que vous venez de créer.
  9. Entrez le nom nOTP_TrafficPolicy
  10. Dans la zone Express, entrez true
  11. Cliquez sur Create OTP natif

Serveur virtuel de passerelle

Le serveur virtuel de passerelle est lié au serveur AAA virtuel OTP natif pour fournir l’authentification pour Citrix Virtual Apps and Desktops.

  1. Accéder à Citrix Gateway > Virtual Servers
  2. Sélectionnez votre passerelle actuelle, puis cliquez sur Edit
  3. Sélectionnez Profil d’authentification dans le panneau Paramètres avancés sur le côté droit
  4. Sélectionner Add
  5. Saisissez un nom de profil. Nous entrons nativeotp_authprofile
  6. Sous Stratégie, sélectionnez la flèche et sélectionnez le serveur AAA virtuel OTP natif nativeotp_authvserver
  7. Cliquez sur Create
  8. Sélectionnez Stratégies dans le panneau Paramètres avancés sur le côté droit
  9. Sélectionnez le + signe à ajouter
  10. Sous Choose PolicyTrafficSélectionner et sous Choose Type Sélectionner Request. La sélection Continue
  11. Cliquez sur la flèche droite notp_trafficpolicy, sélectionnez et sélectionnez OK
  12. Cliquez sur Done, puis enregistrez la configuration en cours OTP natif

Point de terminaison utilisateur

Nous testons maintenant l’OTP natif en nous authentifiant dans notre environnement Citrix Virtual Apps and Desktops.

Enregistrement avec l’application Citrix SSO

Tout d’abord, l’utilisateur enregistre son appareil pour l’OTP natif à l’aide de l’application Citrix SSO.

  1. Ouvrez un navigateur et accédez au nom de domaine complet géré par Citrix Gateway avec /manageotp ajouté à la fin du nom de domaine complet. Nous utilisons https://gateway.workspaces.wwco.net/manageotp
  2. Une fois que votre navigateur est redirigé vers un écran de connexion, entrez UPN utilisateur et mot de passe Inscription OTP natif
  3. Dans l’écran suivant, sélectionnez Ajouter un périphérique, entrez un nom. Nous utilisons iPhone7_nOTP Inscription OTP natif
  4. Sélectionnez Go, et un code QR s’affiche Inscription OTP natif
  5. Sur votre appareil mobile, ouvrez votre application Citrix SSO ou une autre application d’authentification telle que Microsoft ou Google (disponible en téléchargement depuis les magasins d’applications)
  6. Sélectionnez Ajouter un nouveau jeton
  7. Sélectionnez Scanner le code QR Inscription OTP natif
  8. Sélectionnez Aviser votre appareil photo sur le QR Code, et une fois qu’il est capturé, sélectionnez Ajouter Inscription OTP natif
  9. Sélectionnez Enregistrer pour stocker le jeton Inscription OTP natif
  10. Le jeton est maintenant actif et commence à afficher les codes OTP à intervalles de 30 secondes Inscription OTP natif
  11. Sélectionnez Terminé et vous voyez la confirmation que l’appareil a été ajouté avec succès Inscription OTP natif

Authentification, publication et lancement de Citrix Virtual Apps and Desktops

Ensuite, l’utilisateur entre son UserPrincipalName, son mot de passe et le code d’accès OTP à partir de l’application Citrix SSO pour accéder à ses applications virtuelles et bureaux.

  1. Ouvrez un navigateur et accédez au nom de domaine complet géré par Citrix Gateway. Nous utilisons https://gateway.workspaces.wwco.net
  2. Une fois votre navigateur redirigé vers un écran de connexion, entrez utilisateur UserPrincipalName et mot de passe
  3. Ouvrez l’application Citrix SSO, entrez le code OTP dans le champ de code secret pour l’entrée du iPhone7_nOTP périphérique Inscription OTP natif
  4. Vérifiez que les applications virtuelles des utilisateurs et les postes de travail sont énumérées et lancez une fois connecté Inscription OTP natif

Résolution des problèmes

Ici, nous examinons quelques zones de dépannage communes pour Native OTP.

Erreurs NTP

Lors de la connexion avec votre code OTP, la page peut poster un message vous conseillant de vérifier la synchronisation NTP. L’heure du Citrix ADC doit être synchronisée afin de générer le bon OTP basé sur l’heure. Si vous n’avez pas implémenté NTP, procédez comme suit :

Erreurs d’authentification

  • Cannot complete your request. - si ce message d’erreur se produit après une authentification réussie, il indique probablement une erreur en transmettant les informations d’identification de l’utilisateur à StoreFront. Vérifiez le schéma d’authentification double et les paramètres de stratégie de trafic. OTP natif
  • Try again or contact your help desk - ce message d’erreur indique souvent un échec de connexion LDAP. OTP natif Si vous avez vérifié que le mot de passe est correct, vérifiez que le mot de passe de liaison Administrateur a été défini. Il se peut que vous ayez une stratégie d’authentification LDAP existante et que vous avez créé la stratégie de gestion en la sélectionnant, puis sélectionnez ajouter. Cette étape permet de gagner du temps en remplissant les paramètres existants tels que le Base DN, et vous pouvez voir que le champ Mot de passe administrateur semble être renseigné, mais vous DEVEZ saisir à nouveau le mot de passe. OTP natif

Résumé

Avec Citrix Workspace et Citrix Gateway, les entreprises peuvent améliorer leur posture de sécurité en implémentant l’authentification multifacteur sans rendre l’expérience utilisateur complexe. Les utilisateurs peuvent accéder à leurs applications virtuelles Citrix Virtual Apps and Desktops, en entrant leur nom d’utilisateur de domaine et leur mot de passe, puis en confirmant simplement leur identité en saisissant un mot de passe unique à partir de leur application d’authentification enregistrée.

Références

Pour plus d’informations, reportez-vous à :

Authentification OTP native  : trouvez plus de détails sur l’implémentation Native OTP et les cas d’utilisation.

Guide de validation de concept : nFactor pour Citrix Gateway avec authentification OTP native