Politique de couche 7

Une politique de couche 7 (L7) permet de classifier le trafic en faisant correspondre ses informations L7 avec des règles L7, puis en effectuant des actions spécifiques si ces règles correspondent.

  • Une politique est appliquée à un port d'application de front end (protocole).
  • Plusieurs politiques peuvent être appliquées au même protocole.

Puisque plusieurs politiques peuvent être appliquées à un protocole, une priorité est associée à chacune d'elles.

  • Les politiques ayant la priorité la plus faible sont évaluées en premier.
  • Si les règles associées à la politique ne correspondent pas au trafic, la politique suivante ayant la priorité la plus faible dans la liste des priorités est évaluée.

Si le trafic ne correspond à aucune des règles, il est redirigé vers un pool par défaut, qui est le pool ayant été configuré lorsque l'équilibreur de charge de base a été déployé.

Chaque politique est associée à une action qui s'exécute lorsque toutes les règles de la politique correspondent au trafic.

Les actions sont les suivantes :

  • Rejeter
  • Rediriger vers HTTPS
  • Rediriger vers une URL
  • Rediriger vers un pool

Les politiques de rejet (définies sur reject) sont évaluées en premier.

Si l'action est définie sur REDIRECT_HTTPS, le trafic HTTP est redirigé vers le port d'écoute HTTPS. Une seule configuration d'action de ce type est prise en charge par programme d'écoute. Cette action ne peut pas configurer des règles de couche 7 et vous devez la configurer en utilisant l'API. Vous pouvez configurer la politique de couche 7 (L7) à l'aide de l'action REDIRECT_HTTPS avec la méthode addL7Policies du service SoftLayer_Network_LBaaS_L7Policy. Un type de données redirectUrl fournit l'identifiant unique universel (UUID) de l'auditeur HTTPS pour la redirection HTTPS.

La politique de redirection vers HTTPS (Redirect to https) est évaluée après la politique de rejet (Reject). Si cette politique existe, toute politique existante de type Redirect to url et Redirect to pool ne s'applique pas. De plus, si des polices Redirect to https existent déjà, vous ne pouvez pas créer de nouvelles polices Redirect to url et Redirect to pool.

S'il n'existe aucune politique de redirection vers HTTPS, les politiques définies sur Redirect to url sont évaluées après les politiques définies sur Reject.

Enfin, les politiques définies sur Redirect to pool sont évaluées en dernier.

Au sein de chaque catégorie d'action, les politiques sont évaluées par ordre croissant de priorité (de la plus faible à la plus élevée). Il n'y a qu'une seule action REDIRECT_HTTPS autorisée par programme d'écoute, et elle est prioritaire sur toutes les autres politiques, à l'exception de REJECT. Par conséquent, le concept de "priorité" ne s'applique pas.

Propriétés de politique de couche 7

Propriétés de la couche 7
Propriété Description
Nom Nom de la stratégie. Chaque politique doit avoir un nom unique.
Action Action à exécuter lorsque les règles correspondent. Les actions sont REJECT, REDIRECT_HTTPS, REDIRECT_URL et REDIRECT_POOL. L'action REDIRECT_HTTPS est prise en charge par l'API uniquement.
Priorité Au sein de chaque catégorie d'action, les politiques sont évaluées par ordre croissant de priorité. Ce champ n'est pas applicable pour REDIRECT_HTTPS car une seule action de ce type est autorisée par programme d'écoute.
URL de redirection URL vers laquelle le trafic est redirigé, si l'action définie est REDIRECT_URL et l'identificateur unique universel (UUID) du programme d'écoute HTTPS vers lequel le trafic sera redirigé, si l'action définie est REDIRECT_HTTPS.
Redirect L7 Pool Pool de serveurs auquel le trafic est envoyé, si l'action définie est REDIRECT_POOL.
Protocole Port d'application de front end auquel la politique est appliquée.

Règle de couche 7

Les règles de couche 7 définissent une portion du trafic entrant qui doit correspondre à des valeurs spécifiques.

  • L'ajout de règles de couche 7 n'est pas autorisé pour une politique de couche 7 avec l'action REDIRECT_HTTPS.
  • Si le trafic entrant correspond à la valeur spécifiée pour une règle, celle-ci a pour résultat true.
  • Les règles de couche 7 sont toujours associées à une politique de couche 7. Plusieurs règles de couche 7 peuvent être associées à la même politique de couche 7.
  • Si plusieurs règles sont associées à une politique, chaque règle a pour résultat true ou false.
  • Si toutes les règles associées à une politique ont pour résultat true, l'action associée à la politique est appliquée à la demande. Dans le cas contraire, l'équilibreur de charge évaluera la politique suivante.

Les règles possèdent des types, qui indiquent la portion du trafic de couche 7 qui doit correspondre à la règle.

Règles de couche 7
Type Zone à extraire et à évaluer
HOST_NAME Partie nom d'hôte de l'URL (par exemple, api.my_company.com)
FILE_TYPE Fin de l'URL, représentant le type de fichier (par exemple, jpg)
HEADER Zone dans l'en-tête HTTP
COOKIE Cookie nommé dans l'en-tête HTTP
PATH Partie de l'URL située après le nom d'hôte (par exemple, /index.html)

Les règles comportent également un type de comparaison, qui indique comment elles doivent être évaluées.

Types de comparaison
Type de comparaison Type d'évaluation
REGEX Faire correspondre la zone extraite (par exemple, hostname) avec l'expression régulière fournie
STARTS_WITH Vérifier si la zone extraite commence par la chaîne fournie
ENDS_WITH Vérifier si la zone extraite se termine par la chaîne fournie
CONTAINS Vérifier si la zone extraite contient la chaîne fournie
EQUAL_TO Vérifier si la zone extraite est identique à la chaîne fournie

Toutes les règles ne prennent pas en charge tous les types de comparaison. Par exemple, si vous utilisez FILE_TYPE, il est préférable d'utiliser les types de comparaison REGEX et ENDS_WITH.

Propriétés de règle de couche 7

Propriétés de règle de couche 7
Propriété Description
Type Spécifie le type de règle. Les types de règle peuvent être HOST_NAME, FILE_TYPE, HEADER, COOKIE ou PATH.
Type de comparaison Les types de comparaison sont utilisés conjointement au type de règle, à la clé et à la valeur pour définir une règle et classifier le trafic. Les types de comparaison possibles sont REGEX, STARTS_WITH, ENDS_WITH, CONTAINS et EQUAL_TO.
Clé Clé de description pour les types de règle HEADER et COOKIE.
Valeur Pour les types de règle HEADER et COOKIE, la valeur est comparée à la clé.
Invert Si vous affectez la valeur 1 à cette propriété, la valeur de cette comparaison de règle L7 est true à chaque fois que la règle spécifiée n'a pas de correspondance.
Layer 7 Policy ID Identificateur unique de la politique à laquelle les règles sont associées.