ADC

Lier des stratégies à l’aide d’une stratégie avancée

Après avoir défini une stratégie, la stratégie peut être invoquée en liant la stratégie à un point de liaison et en spécifiant un niveau de priorité. Vous pouvez lier la stratégie à un seul point de liaison. Un point de liaison peut être global (s’applique à tous les serveurs virtuels configurés) ou un point de liaison peut être un serveur virtuel spécifique (soit un serveur virtuel d’équilibrage de charge ou de changement de contenu).

L’ordre dans lequel les stratégies sont évaluées détermine l’ordre dans lequel elles sont appliquées. Les fonctionnalités ADC évaluent généralement différentes banques politiques dans un ordre particulier. Cependant, d’autres caractéristiques peuvent parfois influer sur l’ordre d’évaluation. Au sein d’une banque de stratégies, l’ordre d’évaluation dépend des valeurs de paramètres configurées dans les stratégies. La plupart des fonctionnalités appliquent toutes les actions associées à une stratégie si le résultat évalué correspond aux données en cours de traitement.

Remarque :

La fonctionnalité de mise en cache intégrée fait exception.

Différences spécifiques aux entités dans les liaisons de stratégies

Vous pouvez lier des stratégies à des points de liaison globaux (ou des banques) intégrés, à des serveurs virtuels spécifiques ou à des étiquettes de stratégie.

Toutefois, les fonctionnalités de Citrix ADC diffèrent par le type de liaisons disponibles. Le tableau suivant récapitule les liaisons de stratégies dans les fonctionnalités Citrix ADC qui utilisent des stratégies.

Nom de la fonction Serveurs virtuels configurés dans la fonctionnalité Stratégies configurées dans la fonctionnalité Points de liaison configurés pour les stratégies Utilisation des stratégies dans la fonctionnalité
DNS aucun Stratégies DNS Global Pour déterminer comment effectuer la résolution DNS pour les requêtes.
Changement de contenu (Remarque : cette fonctionnalité peut prendre en charge les stratégies classiques ou avancées, mais pas les deux.) Commutation de contenu (CS) Stratégies de changement de contenu Serveur virtuel de commutation de contenu ou de redirection de cache ; étiquette de stratégie Déterminer quel serveur ou groupe de serveurs est responsable de la diffusion des réponses, en fonction des caractéristiques d’une demande entrante. Les caractéristiques de la demande incluent le type de périphérique, la langue, les cookies, la méthode HTTP, le type de contenu et le serveur de cache associé.
Mise en cache intégrée aucun Stratégies de mise en cache Remplacement global, valeur globale par défaut, étiquette de stratégie, équilibrage de charge, commutation de contenu ou serveur virtuel de déchargement SSL Pour déterminer si les réponses HTTP peuvent être stockées dans le cache intégré de l’appliance Citrix ADC et les servir à partir de ce dernier.
Répondeur aucun Politiques des répondeurs Remplacement global, valeur globale par défaut, étiquette de stratégie, équilibrage de charge, commutation de contenu ou serveur virtuel de déchargement SSL Pour configurer le comportement de la fonction Responder.
Réécrire aucun Stratégies de réécriture Remplacement global, valeur globale par défaut, étiquette de stratégie, équilibrage de charge, commutation de contenu ou serveur virtuel de déchargement SSL Pour identifier les données HTTP que vous souhaitez modifier avant de les servir. Les stratégies fournissent des règles pour la modification des données. Par exemple, vous pouvez modifier les données HTTP pour rediriger une demande vers un serveur sélectionné en fonction de l’adresse de la demande entrante, ou pour masquer les informations du serveur dans une réponse à des fins de sécurité.
Fonction Transformation d’URL dans la fonction Réécriture aucun Politiques de transformation Remplacer globalement, Valeur par défaut globale, Étiquette de stratégie Pour identifier les URL dans les transactions HTTP et les fichiers texte afin d’évaluer si une URL doit être modifiée.
Citrix Gateway (fonctions VPN sans client uniquement) Serveur VPN Stratégies d’accès sans client VPN Global, serveur VPN Pour déterminer comment Citrix Gateway effectue l’authentification, l’autorisation, l’audit et d’autres fonctions, et pour définir des règles de réécriture pour l’accès Web général à l’aide de Citrix Gateway.

Lier les points et l’ordre d’évaluation

Pour qu’une stratégie prenne effet, vous devez vous assurer que la stratégie est appelée à un moment donné pendant le traitement. Pour ce faire, vous associez la stratégie à un point de liaison. La collection de stratégies liées à un point de liaison est connue sous le nom de banque de stratégies.

Voici les points de liaison évalués par Citrix ADC, répertoriés dans l’ordre typique d’évaluation au sein d’une banque de stratégies.

  1. Remplacer le moment de la demande. Lorsqu’une demande passe par une fonctionnalité, Citrix ADC évalue d’abord les stratégies de remplacement de la fonction au moment de la demande.
  2. Serveur virtuel d’équilibrage de charge au moment de la demande. Si l’évaluation des stratégies ne peut pas être terminée après l’évaluation de toutes les stratégies de remplacement au moment de la demande, Citrix ADC traite les stratégies de temps de demande pour les serveurs virtuels d’équilibrage de charge.
  3. Serveur virtuel de commutation de contenu au moment de la demande. Si l’évaluation des stratégies ne peut pas être effectuée après l’évaluation de toutes les stratégies de temps de demande pour les serveurs virtuels d’équilibrage de charge, Citrix ADC traite les stratégies de temps de demande pour les serveurs virtuels de commutation de contenu.
  4. Valeur par défaut au moment de la demande. Si l’évaluation des stratégies ne peut pas être terminée après l’évaluation de toutes les stratégies spécifiques au serveur virtuel au moment de la demande, Citrix ADC traite les stratégies avancées au moment de la demande.
  5. Remplacer le temps de réponse. Au moment de réponse, Citrix ADC commence par des stratégies liées au point de liaison de remplacement du temps de réponse.
  6. Serveur virtuel d’équilibrage de charge en temps de réponse. Si l’évaluation des stratégies ne peut pas être terminée après l’évaluation de toutes les stratégies de remplacement du temps de réponse, Citrix ADC traite les stratégies de temps de réponse pour les serveurs virtuels d’équilibrage de charge.
  7. Serveur virtuel de commutation de contenu en temps de réponse. Si l’évaluation des stratégies ne peut pas être terminée après que toutes les stratégies ont été évaluées pour les serveurs virtuels d’équilibrage de charge, Citrix ADC traite les stratégies de temps de réponse des serveurs virtuels de commutation de contenu.
  8. Défaut du temps de réponse. Si l’évaluation des stratégies ne peut pas être terminée après l’évaluation de toutes les stratégies spécifiques au serveur virtuel en temps de réponse, Citrix ADC traite les stratégies Advanced en temps de réponse.

Évaluation des stratégies pour toutes les fonctionnalités

En plus d’évaluer les stratégies au sein d’une fonctionnalité, si vous liez des stratégies à un serveur virtuel de commutation de contenu, il est important que ces stratégies soient évaluées avant d’autres stratégies. La liaison d’une stratégie à un serveur virtuel de commutation de contenu produit un résultat différent dans les versions 9.0.x de Citrix ADC et ultérieures à ceux des versions 8.x. Dans Citrix ADC 9.0 et les versions ultérieures, l’évaluation se déroule comme suit :

  • Les stratégies de changement de contenu sont évaluées avant d’autres stratégies. Si une stratégie de changement de contenu est évaluée à TRUE, le serveur virtuel d’équilibrage de charge cible est sélectionné.
  • Si toutes les stratégies de changement de contenu sont évaluées à FALSE, le serveur virtuel d’équilibrage de charge par défaut sous le VIP de commutation de contenu est sélectionné.

Une fois qu’un serveur virtuel d’équilibrage de charge cible est sélectionné par le processus de changement de contenu, les stratégies sont évaluées dans l’ordre suivant :

  1. Stratégies liées au point de liaison global de remplacement.
  2. Stratégies liées au serveur virtuel d’équilibrage de charge par défaut.
  3. Stratégies liées au serveur virtuel de commutation de contenu cible.
  4. Stratégies liées au point de liaison global par défaut.

Pour vous assurer que les stratégies sont évaluées dans l’ordre prévu, suivez ces directives :

  • Assurez-vous que le serveur virtuel d’équilibrage de charge par défaut n’est pas directement accessible depuis l’extérieur. Par exemple, l’adresse IP du serveur virtuel peut être 0.0.0.0.
  • Pour éviter d’exposer des données internes sur le serveur virtuel par défaut d’équilibrage de charge, configurez une stratégie pour répondre avec l’état « 503 Service Indisponible » et liez-la au serveur virtuel d’équilibrage de charge par défaut.

Entrées dans une banque de polices

Chaque entrée dans une banque de politiques dispose, au minimum, d’une politique et d’un niveau de priorité. Vous pouvez également configurer des entrées qui modifient l’ordre d’évaluation basé sur les priorités, et vous pouvez configurer des entrées qui appelent des banques de stratégies externes. La banque de stratégies est le groupe de stratégies qui sont liées à un point de liaison particulier et qui peuvent être évaluées pour un certain trafic. Si certaines stratégies sont liées à LB vServer d’un type de protocole HTTP, LB vserver est une banque de stratégies. De plus, les stratégies liées à cette banque de stratégies peuvent être évaluées pour le trafic HTTP. Si certaines stratégies de réécriture sont tenues de réécrire globalement au point de liaison DNS_REQ_OVERRIDE, le bindpoit DNS_REQ_OVERRIDE sera une banque de stratégies dans laquelle certaines stratégies sont liées.

Puisque, dans l’étiquette de stratégie, nous pouvons lier un certain nombre de stratégies, donc l’étiquette de stratégie est également une banque de stratégies.

Les banques politiques sont différenciées en fonction des protocoles, des conditions et des priorités. Supposons que vous ayez un serveur virtuel de 2 LB. L’un est de type HTTP et l’autre est de type DNS. De plus, différentes stratégies sont liées à ces serveurs virtuels. Par conséquent, les deux serveurs virtuels sont des banques de stratégies, mais les stratégies liées à l’une des banques de stratégies sont évaluées pour le trafic HTTP. Les stratégies liées à une autre banque de stratégies sont évaluées pour le trafic DNS. Pour chaque évaluation de stratégie, une règle est évaluée. Pour NOPOLICY également, une règle true est évaluée. Si un utilisateur souhaite appeler une étiquette de stratégie pour tout le trafic, il peut utiliser NOPOLICY comme règle true.

Le tableau suivant résume chaque entrée d’une banque de stratégies.

Nom de la stratégie Priority Aller à l’expression Type d’appel Banque de politiques à appeler
Le nom de la stratégie, ou une stratégie « factice ». Un entier. Facultatif. S’il n’est pas configuré, ADC prend la valeur GoToPriorityExpression par défaut. Il identifie la prochaine stratégie à évaluer si la stratégie actuelle est évaluée à vrai ou met fin à toute autre évaluation. Facultatif. Indique qu’une banque de stratégies externe est appelée. Le champ limite les choix à une étiquette de stratégie globale ou à un serveur virtuel. Facultatif. Utilisé avec le type d’appel. Il s’agit de l’étiquette d’une banque de stratégies ou d’un nom de serveur virtuel. Le Citrix ADC revient à la banque actuelle après avoir traité la banque externe.

Si la stratégie est évaluée à TRUE, Citrix ADC stocke l’action associée à la stratégie. Ajoutez l’évaluation de la stratégie suivante en fonction de la valeur du gotoPriorityExpression champ. Si la stratégie est évaluée à FALSE, Citrix ADC évalue la stratégie suivante. Si la stratégie n’est ni TRUE ni FALSE, Citrix ADC utilise l’action Undef (non définie) associée. Le type d’appel désigne un type de banque de stratégies. La valeur peut être l’une des suivantes :

  • Request Vserver : appelle les stratégies de temps de demande associées à un serveur virtuel.
  • Response Vserver : invoque des stratégies de temps de réponse associées à un serveur virtuel.
  • Étiquette de stratégie : appelle une autre banque de stratégies, identifiée par l’étiquette de stratégie de la banque. Valeurs du champ GoToPriorityExpression :
  • Aller à NEXT - Accédez à la politique avec la priorité supérieure suivante
  • Goto END - Fin de l’évaluation
  • Goto # - Expression qui produit le numéro de priorité de la prochaine stratégie à évaluer. Le Goto ne peut aller de l’avant que dans une banque de police.
  • Aller à USE_INVOCATION_RESULT — Applicable si cette stratégie appelle une autre étiquette de stratégie. Si le dernier goto dans l’étiquette de stratégie invoquée a la valeur END, l’évaluation s’arrête. Si le dernier goto est autre chose que END, l’étiquette de stratégie actuelle exécute un NEXT. Si vous omettez l’expression Goto, c’est la même chose que de spécifier END. Exemple de banque de stratégies qui utilise l’expression Goto :
Nom de la stratégie Priority Aller à Invocation Banque de politiques à appeler
Politique de certificat client 100 300 Aucune Aucune
Stratégie de sous-réseau 200 Suivant Aucune Aucune
PAS DE POLITIQUE 300 UTILISER LE RÉSULTAT DE L’APPEL Serveur de demandes My_Request_VServeur
PAS DE POLITIQUE 350 UTILISER LE RÉSULTAT DE L’APPEL Étiquette de stratégie My_Policy_Label
Politique sur les heures de travail 400 FIN Aucune Aucune

Ordre d’évaluation au sein d’une banque de polices

Au sein d’une banque de stratégies, l’ordre d’évaluation dépend des paramètres suivants :

  • Une priorité.

    La quantité minimale d’informations sur l’ordre d’évaluation est le niveau de priorité numérique. Plus le nombre est bas, plus la priorité est élevée.

  • Une expression Goto.

    Si elle est fournie, l’expression Goto indique la stratégie suivante à évaluer, généralement au sein de la même banque de stratégies. Les expressions Goto ne peuvent avancer que dans une banque. Pour empêcher le bouclage, une configuration de banque de stratégies n’est pas valide si un relevé Goto pointe vers l’arrière dans la banque.

  • Invocation d’autres banques politiques.

    Toute entrée peut invoquer une banque de stratégies externe. Citrix ADC fournit une entité intégrée nommée NOPOLICY qui ne possède pas de règle. Vous pouvez ajouter une entrée NOPOLICY dans une banque de stratégies lorsque vous souhaitez appeler une autre banque de stratégies, mais vous ne souhaitez pas traiter d’autres règles avant l’appel. Vous pouvez avoir plusieurs entrées NOPOLICY dans plusieurs banques de stratégies.

Les valeurs d’une expression Goto sont les suivantes :

  • SUIVANT.

    Ce mot-clé sélectionne la stratégie avec le niveau de priorité supérieur suivant dans la banque de stratégies actuelle.

  • Un entier.

    Si vous fournissez un entier, il doit correspondre au niveau de priorité d’une autre stratégie de la banque de stratégies actuelle.

  • FIN.

    Le mot-clé arrête l’évaluation après le traitement de la stratégie actuelle, et aucune autre stratégie dans cette banque n’est traitée.

  • Vierge.

    Si l’expression Goto est vide, c’est la même chose que de spécifier END.

  • Expression numérique.

    Il s’agit d’une expression de stratégie avancée qui se résout en numéro de priorité pour une autre stratégie de la banque actuelle.

  • USE_INVOCATION_RESULT.

    Cette phrase ne peut être utilisée que si vous appelez une banque de stratégies externe. La saisie de la phrase entraîne Citrix ADC à exécuter l’une des actions suivantes :

    • Si le Goto final de la banque de stratégies invoquée a une valeur END ou est vide, le résultat de l’appel est END et l’évaluation s’arrête.
    • Si l’expression Goto finale dans la banque de stratégies appelée est autre chose que END, Citrix ADC effectue un NEXT.

Le tableau suivant illustre une banque de stratégies qui utilise des relevés Goto et des appels de banque de stratégies.

Nom de la stratégie Priority Aller à Invocation Banque de politiques à appeler ——– —- —- —-          
ClientCertificatePolicy (règle : la demande contient-elle un certificat client ?) 100 300 Aucun Aucun                    
SubnetPolicy (règle : le client provient-il d’un sous-réseau privé ?) 200 SUIVANT Aucun Aucune NOPOLICY 300 UTILISER LE RÉSULTAT DE L’INVOCATION Demander un serveur virtuel my_Request_vServer NOPOLICY 350 UTILISER LE RÉSULTAT DE L’INVOCATION Étiquette de stratégie My_Policy_Label
WorkingHoursPolicy (règle : est-ce que c’est heures de travail ?) 400 FIN Aucun Aucun                    

Tableau 3. Exemple de banque de politiques qui utilise Gotos et des appels bancaires externes

Comment se termine l’évaluation des politiques

L’évaluation d’une banque de stratégies prend fin lorsque l’appliance Citrix ADC exécute l’une des étapes suivantes :

  • Si une évaluation de stratégie est « TRUE », elle invoque une banque de stratégies externe et la valeur de son relevé Goto est « USE_INVOCATION_RESULT », et si une autre stratégie de la banque de stratégies externe évalue également « TRUE » et que la valeur de l’instruction Goto est « END », puis après le retour de l’extérieur , aucune autre politique ne sera évaluée.

  • Une banque de stratégies externe est appelée, son évaluation renvoie un END et l’instruction Goto utilise une valeur USE_INVOCATION_RESULT ou END. L’évaluation se poursuit avec la prochaine banque de politiques pour cette fonctionnalité. Par exemple, si la banque actuelle est la banque de remplacement au moment de la demande, Citrix ADC évalue ensuite les banques de stratégies de temps de demande pour les serveurs virtuels.

  • Citrix ADC a parcouru toutes les banques de stratégies de cette fonctionnalité, mais n’a pas trouvé de END.

S’il s’agit de la dernière entrée à être évaluée dans cette banque de stratégies, Citrix ADC passe à la fonction suivante.

Comment les fonctionnalités utilisent les actions après l’évaluation des stratégies

Après avoir évalué toutes les stratégies pertinentes pour un point de données particulier (par exemple, une requête HTTP), Citrix ADC stocke toutes les actions associées à une stratégie correspondant aux données.

Pour la plupart des fonctionnalités, toutes les actions des stratégies correspondantes sont appliquées à un paquet de trafic lorsqu’il quitte Citrix ADC. La fonctionnalité de mise en cache intégrée n’applique qu’une seule action : CACHE ou NOCACHE. Cette action est associée à la stratégie ayant la valeur de priorité la plus faible dans la banque de stratégies « priorité la plus élevée » (par exemple, les stratégies de remplacement au moment de la demande sont appliquées avant les stratégies spécifiques au serveur virtuel).