Cas d’utilisation : Contrôle d’accès et authentification
Dans les zones à haute sécurité, il est obligatoire d’authentifier l’utilisateur de manière externe avant qu’une ressource soit accessible par les clients. Sur l’appliance Citrix ADC, vous pouvez utiliser des légendes HTTP pour authentifier l’utilisateur de manière externe en évaluant les informations d’identification fournies. Dans cet exemple, l’hypothèse est que le client envoie le nom d’utilisateur et le mot de passe via les en-têtes HTTP dans la requête. Cependant, les mêmes informations peuvent être récupérées à partir de l’URL ou du corps HTTP.
Pour implémenter cette configuration, vous devez effectuer les tâches suivantes :
- Activez la fonctionnalité de répondeur sur l’appliance Citrix ADC.
- Créez une légende HTTP sur l’appliance et configurez-la avec des détails sur le serveur externe et les autres paramètres requis.
- Configurez une stratégie de répondeur pour analyser la réponse, puis liez la stratégie globalement.
- Créez un agent de légende sur le serveur distant.
Activation du répondeur
La fonction de répondeur doit être activée avant d’être utilisée sur l’appliance Citrix ADC.
Pour activer le répondeur à l’aide de l’utilitaire de configuration
- Assurez-vous que la licence de répondeur est installée.
- Dans l’utilitaire de configuration, développez AppExpert, cliquez avec le bouton droit sur Répondeur, puis cliquez surActiver la fonctionnalité Répondeur.
Création d’une légende HTTP sur l’appliance Citrix ADC
Creez一legende HTTP, HTTP-Callout -3, avec les paramètres indiqués dans le tableau suivant. Pour plus d’informations sur la création d’une légende HTTP, consultezConfiguration d’une légende HTTP.
为多u 1. Paramètres et valeurs pour HTTP-callout-3
Paramètre | Valeur | Nom |
---|---|---|
Nom | Policy-Responder-3 |
Paramètre
Valeur
Nom
HTTP-Callout-3
Serveur pour recevoir une demande de légende:
Adresse IP
10.103.9.95
Port
80
Demande d’envoi au serveur:
方法
GET
Expression de l’hôte
10.102.3.95
Expression de la tige d’URL
« /cgi-bin/authenticate.pl »
En-têtes:
Nom
Demander
Expression de valeur
Demande de légende
Paramètres:
Nom
Nom d’utilisateur
Expression de valeur
HTTP.REQ.HEADER (« Nom d’utilisateur ») .VALUE (0)
Nom
Mot de passe
Expression de valeur
HTTP.REQ.HEADER (« Mot de passe ») .VALUE (0)
Réponse du serveur:
Type de retour
TEXTE
Expression pour extraire des données de la réponse
HTTP.RES.BODY (100)
Création d’une stratégie de répondeur pour analyser la réponse
Créez une stratégie de répondeur, Policy-Responder-3, qui vérifie la réponse du serveur de légendes et réinitialise la connexion si l’adresse IP source a été répertoriée sur la liste noire. Créez la stratégie avec les paramètres indiqués dans le tableau suivant. Bien que vous puissiez créer une stratégie de répondeur dans le sous-nœud Stratégies, puis la lier globalement à l’aide du Gestionnaire de stratégies de répondeur, cette démonstration utilise le Gestionnaire de stratégies de répondeur pour créer la stratégie de répondeur et lier la stratégie globalement.
为多u 2. Paramètres et valeurs pour Policy-Responder-3
Paramètre | Valeur |
---|---|
Nom | Policy-Responder-3 |
Action | RESET |
Résultat indéfini - Action | -Action globale à résultat indéfini- |
Expression. | “HTTP.REQ.HEADER(\“Request\”).EQ(\“Callout Request\”).NOT && SYS.HTTP_CALLOUT(HTTP-Callout-3).CONTAINS(\“Authentication Failed\”)” |
Pour créer une stratégie de répondeur et la lier globalement à l’aide de l’utilitaire de configuration
- Accédez àAppExpert>Répondeur.
- Dans le volet d’informations, sousGestionnaire de stratégies, cliquez surGestionnaire de stratégies de répondeur.
- Dans la boîte de dialogueGestionnaire de stratégies de répondeur, cliquez surRemplacer global.
- Cliquez surInsérer une stratégie, puis, dans la colonneNom de la stratégie, cliquez surNouvelle stratégie.
Dans la boîte de dialogueCréer une stratégie de répondeur, procédez comme suit :
- 在以前,tapez Policy-Responder-3。
- Dans Action, sélectionnezRÉINITIALISER.
- Dans Action de résultat indéfini, sélectionnez Action globale de résultat indéfini.
- Dans la zone de texte Expression, tapez :
"HTTP.REQ.HEADER("Request").EQ("Callout Request").NOT && SYS.HTTP_CALLOUT(HTTP-Callout-3).CONTAINS("Authentication Failed")"
- Cliquez surCréer, puis surFermer.
- Cliquez surAppliquer les modifications, puis cliquez surFermer.
Création d’un agent de légende HTTP sur le serveur distant
Vous devez maintenant créer un agent de légende HTTP sur le serveur de légende distant. L’agent de légende HTTP reçoit les demandes de légende de l’appliance Citrix ADC et répond de manière appropriée. L’agent de légende est un script différent pour chaque déploiement et doit être écrit en tenant compte des spécifications du serveur, telles que le type de base de données et le langage de script pris en charge.
Voici un exemple de pseudo-code de l’agent de légende qui vérifie si le nom d’utilisateur et le mot de passe fournis sont valides. L’agent peut être implémenté dans n’importe quel langage de programmation de votre choix. Le pseudo-code doit être utilisé uniquement comme guide pour le développement de l’agent de légende. Vous pouvez intégrer des fonctionnalités supplémentaires dans le programme.
Pour vérifier le nom d’utilisateur et le mot de passe fournis à l’aide d’un pseudo-code
- Acceptez le nom d’utilisateur et le mot de passe fournis dans la demande et formatez-les de manière appropriée.
- Connectez-vous à la base de données qui contient tous les noms d’utilisateur et mots de passe valides.
- Verifiez莱斯信息d 'identificationfournies par rapport à votre base de données.
- Formater la réponse comme requis par la légende HTTP.
- Envoyez la réponse à l’appliance Citrix ADC.