Citrix ADC

Configurer l’extraction de groupe basée sur l’ID de messagerie (ou nom d’utilisateur) au premier facteur pour décider du flux d’authentification du facteur suivant

Pensez à une organisation qui comprend les trois départements suivants (groupes) : Employé, Partenaire et Fournisseur. L’appliance Citrix ADC peut être configurée pour extraire le groupe d’utilisateurs en fonction de l’ID de messagerie ou du nom d’utilisateur AD fourni par l’utilisateur dans le formulaire d’ouverture de session du premier facteur. Sur la base du groupe auquel appartient un utilisateur, Citrix ADC présente une méthode d’authentification (LDAP, SAML, OAuth, etc.), comme illustré dans le tableau suivant à titre d’exemple.

Nom du groupe Facteur
Employé Auth unique (nom d’utilisateur/mot de passe)
Partenaire OAuth (redirige vers un autre fournisseur d’identité)
Fournisseur SAML (redirige vers différents IdP)

Le diagramme suivant montre une interaction de haut niveau entre un utilisateur et l’appliance Citrix ADC pour le cas d’utilisation mentionné précédemment.

Email-1

  1. L’utilisateur se connecte à Citrix Workspace et est redirigé vers un serveur virtuel d’authentification.
  2. Citrix ADC présente un formulaire d’ouverture de session permettant de saisir un identifiant e-mail (ou un nom d’utilisateur).

    Email-2

  3. L’utilisateur saisit l’ID e-mail (ou le nom d’utilisateur).
  4. Citrix ADC présente un formulaire d’ouverture de session basé sur le groupe extrait à l’aide de l’identifiant de messagerie fourni (ou du nom d’utilisateur).

Configurer l’extraction de groupe basée sur l’ID d’e-mail (ou nom d’utilisateur) au premier facteur pour décider de l’authentification du facteur suivant à l’aide de l’interface de ligne de commande

Conditions préalables

Un serveur virtuel d’équilibrage de charge est configuré avec l’authentification activée.

Configuration du serveur virtuel d’authentification pour l’extraction de groupe basée sur les e-mails

Remarque

Vous pouvez modifier le schéma OnlyUsername.xml pour créer un schéma de connexion personnalisé (EmailOnlyLSchema) dans ce cas.

Créer une stratégie de schéma de connexion à l’aide d’un schéma de connexion par e-mail créé à l’étape précédente et relier le serveur virtuel d’authentification

add authentication loginSchema lschema_only_email -authenticationSchema "/nsconfig/loginschema/only_email.xml"

add authentication loginSchemaPolicy lschema_only_email_pol -rule true -action lschema_only_email

bind authentication vserver abs_sp_auth_vs -policy lschema_only_email_pol -priority 100 -gotoPriorityExpression END

Création d’une stratégie d’authentification LDAP pour l’extraction de groupe

Remarque :

LDAPLoginName est « mail » pour la connexion basée sur un identifiant de messagerie, tandis que -LDAPLoginName est « SamAccountName » pour la connexion basée sur un nom d’utilisateur.

add authentication ldapAction aaa_local_grp_extraction -serverIP 90.1.187.40 -ldapBase "OU=ABSOU,dc=aaa,dc=local" -ldapBindDn administrator@aaa.local -ldapBindDnPassword xxxx -ldapLoginName mail -groupAttrName memberOf -subAttributeName CN -secType TLS -authentication DISABLED

add authentication Policy aaa_local_grp_extraction_pol -rule true -action aaa_local_grp_extraction

Configuration de stratégie basée sur un groupe extraite

Créer un facteur suivant pour les groupes d’employés, de partenaires et de fournisseurs à l’aide d’étiquettes de stratégie

add authentication loginSchema lschema_noschema -authenticationSchema noschema
add authentication policylabel plabel_noauth_Employee_Partner_Vendor -loginSchema lschema_noschema
add authentication Policy noauth_Employee_pol -rule "AAA.USER.IS_MEMBER_OF("Employee")" -action NO_AUTHN
add authentication Policy noauth_Partner_pol -rule "AAA.USER.IS_MEMBER_OF("Partner")" -action NO_AUTHN
add authentication Policy noauth_Vendor_pol -rule "AAA.USER.IS_MEMBER_OF("Vendor")" -action NO_AUTHN

Créer un seul facteur de stratégie d’authentification (LDAP est utilisé comme exemple pour cette configuration)

add authentication loginSchema lschema_singleauth_Employee -authenticationSchema "/nsconfig/loginschema/LoginSchema/SingleAuth.xml"

add authentication policylabel plabel_singleauth_Employee -loginSchema lschema_singleauth_Employee

add authentication ldapAction aaa_local_pwd_act -serverIP 90.196.17.40 -ldapBase "OU=ABSOU,dc=aaa,dc=local" -ldapBindDn administrator@aaa.local -ldapBindDnPassword xxxx -ldapLoginName samAccountName -groupAttrName memberOf -subAttributeName CN -secType TLS -ssoNameAttribute userPrincipalName -passwdChange ENABLED -nestedGroupExtraction ON -maxNestingLevel 7 -groupNameIdentifier sAMAccountName -groupSearchAttribute memberOf -groupSearchSubAttribute CN -defaultAuthenticationGroup ldapDefaultAuthGroup -Attribute1 userPrincipalName -Attribute2 mail

add authentication Policy aaa_local_pwd_pol -rule true -action aaa_local_pwd_act

bind authentication policylabel plabel_singleauth_Employee -policyName aaa_local_pwd_pol -priority 100 -gotoPriorityExpression NEXT

Créer une stratégie OAuth pour la redirection vers l’IdP OAuth

add authentication policylabel plabel_oauth_Partner -loginSchema

add authentication OAuthAction oauth_sp_act -authorizationEndpoint "https://absauthidp.aaa.local/oauth/idp/login?response_type=code&scope=openid&client_id=netscaler" -tokenEndpoint "https://absauthidp.aaa.local/oauth/idp/token" -clientID netscaler -clientSecret 1e1155e92ad926dea4fa05a46e1dfa7e10063ad6fe2086394e9e435b19b28a5e -encrypted -encryptmethod ENCMTHD_3 -kek -suffix 2021_02_18_11_22 -CertEndpoint "https://absauthidp.aaa.local/oauth/idp/certs" -audience absauthidp.aaa.

add authentication Policy oauth_sp_pol -rule true -action

bind authentication policylabel plabel_oauth_Partner -policyName oauth_sp_pol -priority 100 -gotoPriorityExpression NEXT

Créer une stratégie SAML pour la redirection vers l’IdP SAML

add authentication policylabel plabel_saml_Vendor -loginSchema lschema_noschema

add authentication samlAction saml_sp_act -samlIdPCertName server_certkey -samlSigningCertName server_certkey -samlRedirectUrl "https://absauthidp.aaa.local/saml/login" -samlUserField nameid -samlIssuerName "https://abssamlissuer.aaa.local"

add authentication Policy saml_sp_pol -rule true -action

bind authentication policylabel plabel_saml_Vendor -policyName saml_sp_pol -priority 100 -gotoPriorityExpression NEXT

Lier les trois facteurs de politique à Plabel_Noauth_Employee_Partner_Vendor

bind authentication policylabel plabel_noauth_Employee_Partner_Vendor -policyName noauth_Employee_pol -priority 100 -gotoPriorityExpression NEXT -nextFactor plabel_singleauth_Employee

bind authentication policylabel plabel_noauth_Employee_Partner_Vendor -policyName noauth_Partner_pol -priority 110 -gotoPriorityExpression NEXT -nextFactor

bind authentication policylabel plabel_noauth_Employee_Partner_Vendor -policyName noauth_Vendor_pol -priority 120 -gotoPriorityExpression NEXT -nextFactor plabel_saml_Vendor

Lier une étiquette de stratégie basée sur un groupe comme NextFactor pour la stratégie d’authentification d’extraction de groupe

bind authentication vserver abs_sp_auth_vs -policy aaa_local_grp_extraction_pol -priority 100 -nextFactor plabel_noauth_Employee_Partner_Vendor -gotoPriorityExpression NEXT

Configurer l’extraction de groupe basée sur l’ID d’e-mail (ou nom d’utilisateur) au premier facteur pour décider de l’authentification du facteur suivant à l’aide de nFactor Visualizer

  1. Accédez à Sécurité > Trafic des applications AAA > nFactor Visualizer > nFactor Flow, puis cliquez sur Ajouter.
  2. Cliquez sur + pour ajouter le flux nFactor.

  3. Ajoutez un facteur d’extraction de groupe avec la stratégie d’extraction de groupe LDAP à l’aide d’ EmailOnlyLoginSchema. Le nom que vous entrez est le nom du flux nFactor. Cliquez sur Créer.

    E-mail-3

  4. Cliquez sur Ajouter un schéma sur le bloc nFactor. Pour créer un schéma de connexion personnalisé (EmailOnlyLSchema dans ce cas), vous pouvez modifier le schéma OnlyUsername.xml intégré.

    E-mail-4

  5. Créez un schéma de connexion d’authentification à l’aide du fichier de schéma de connexion créé.

    E-mail-5

  6. Choisissez un schéma de connexion dans la liste Schéma de connexion d’authentification et cliquez sur OK.

    E-mail-6

  7. Créez un serveur LDAP pour l’extraction de groupe avec l’authentification désactivée pour la création de stratégies d’authentification. Pour plus d’informations sur la création d’une authentification LDAP, reportez-vous à la section Configuration de l’authentification LDAP.

    E-mail-7

  8. Cliquez sur Autres paramètres pour spécifier les valeurs suivantes pour le serveur LDAP. Nom de connexion LDAP — mail ; Attribut de groupe - MemberOf ; Nom du sous-attribut - cn.

    Email-8

  9. Cliquez sur Ajouter une stratégie, puis sur Ajouter pour créer une stratégie d’authentification d’extraction de groupe.

    E-mail-9

  10. Cliquez sur le signe + vert sur le bloc EmailBasedGroupExtraction pour créer des blocs de décision pour les facteurs suivants.

    E-mail 10

  11. Sur l’écran Facteur suivant à la connexion, sélectionnez Créer un bloc de décision, entrez un nom pour le bloc de décision, puis cliquez sur Créer.

    E-mail-11

  12. Créez une stratégie d’authentification pour chaque groupe de destination pour les blocs de décision respectifs. Par exemple, le facteur d’authentification basé sur un groupe pour AD Group « Employé ».

    E-mail-12

  13. Le diagramme suivant illustre le flux NFactor une fois que tous les blocs de décision ont été créés.

    E-mail-13

  14. Une fois tous les blocs de décision créés, liez tous les blocs de décision basés sur un groupe aux facteurs d’authentification respectifs. Par exemple, le groupe d’employés peut comporter un facteur d’authentification par nom d’utilisateur et mot de passe.

    E-mail-14

  15. Choisissez le schéma de connexion dans le menu déroulant Schéma de connexion d’authentification et cliquez sur Ajouter.

    E-mail-15

  16. Choisissez la stratégie d’authentification, puis cliquez sur Ajouter.

    E-mail-16

  17. Une fois que tous les blocs de décision basés sur un groupe sont configurés avec des stratégies d’authentification comme facteurs, le flux nFactor ressemble au diagramme suivant.

    E-mail-17

  18. Cliquez sur Lier au serveur d’authentification, puis sur Créer.

    E-mail-18

  19. Sélectionnez le serveur virtuel d’authentification et cliquez sur nFactor Flow.

    E-mail-19

  20. Choisissez le flux nFactor sous le champ Select nfactor Flow, puis cliquez sur Ajouter.

    E-mail-20

  21. Liez ce flux au serveur virtuel d’authentification, d’autorisation et d’audit.

    E-mail-21

Déliez le facteur N

  1. Sélectionnez le flux nFactor, puis cliquez sur Afficher les liaisons.
  2. Sélectionnez le serveur virtuel d’authentification et cliquez sur Délier.