ADC

Validation des spécifications d’API

La spécification API garantit un transfert de données fluide entre les systèmes via une API (interface de programmation d’applications). Il garantit que les données échangées suivent une structure ou un format prédéfini, améliorant ainsi la fiabilité et la sécurité globales du système.

Une spécification d’API définit le point de terminaison, le schéma et les paramètres. La validation du schéma est un processus qui vous permet de vérifier si le trafic entrant respecte le schéma que vous avez fourni dans la spécification de l’API. En associant une spécification d’API à un profil Web App Firewall, vous pouvez spécifier le trafic entrant autorisé et celui qui est bloqué ou enregistré. La validation du trafic entrant par rapport aux spécifications de l’API importée permet de garantir la sécurité et la conformité du trafic réseau.

Il existe plusieurs types d’API couramment utilisés dans le développement de logiciels. Ces types déterminent la manière dont les données sont structurées et échangées entre les différents systèmes logiciels. NetScaler prend en charge les types d’API suivants :

  • Transfert représentatif par l’État (REST)
  • Appel de procédure à distance Google (gRPC)

Les spécifications d’API définissent la conception d’une API, y compris les points finaux, les méthodes, les paramètres et les formats de données. Ces spécifications garantissent la cohérence, l’interopérabilité et la facilité d’utilisation lors du développement et de l’utilisation d’API. NetScaler prend en charge les formats de spécification suivants :

  • API ouverte (anciennement connue sous le nom de Swagger)
  • ProtoBuf (tampons de protocole)

Remarque : Vous pouvez importer, ajouter, mettre à jour et supprimer des fichiers de spécification d’API à l’aide de l’interface graphique ou de la CLI. Pour plus d’informations, consultez la section Importations.

Attribuer une spécification d’API à un profil à l’aide de la CLI

Configurez un profil Web App Firewall avec un fichier de spécification d’API pour valider le trafic. Vous pouvez configurer une action utilisée lorsque la validation échoue à l’aide du paramètre RestAction (pour les API REST) ou gRPCaction (pour les API gRPC).

À l’invite de commandes, tapez : set appfw profile <Profile Name> -apispec <API spec entity name>

-  Profile name - The name of the profile.
-  API spec entity name - The name of the entity that is created from the uploaded API specification.

Attribuer une spécification d’API à un profil à l’aide de l’interface graphique

  1. Accédez àSécurité > NetScaler Web App Firewall Profils et cliquez sur Ajouter.
  2. Sélectionnez le fichier requis pour un schéma de spécifications d’API et cliquez sur OK

Attribuer une spécification d’API à un profil existant à l’aide de l’interface graphique

  1. Accédez à Sécurité > NetScaler Web App Firewall> Profils
  2. Sélectionnez un profil défini par l’utilisateur et cliquez sur Modifier.
  3. Sur la page de profil deNetScaler Web App Firewall, cliquez sur l’icône Modifier.
  4. Sélectionnez le fichier requis pour un schéma de spécifications d’API et cliquez sur OK.

Configurer la validation du schéma des API REST et gRPC à l’aide de la CLI

À l’invite de commandes, tapez :

set appfw profile <profile name> -restAction [block log   none  stats]
set appfw profile <profile name> -grpcAction [block log   none  stats]
<!--NeedCopy-->

Configurer la validation du schéma des API REST et gRPC à l’aide de l’interface graphique

Pour configurer ou modifier la validation du schéma des API REST et gRPC :

  1. Accédez à Sécurité > NetScaler Web App Firewall > Profils**.
  2. Sélectionnez un profil défini par l’utilisateur et cliquez sur Modifier.
  3. Sur la page de profil deNetScaler Web App Firewall, dans la section Paramètresavancés, cliquezsur Contrôles de sécurité.
  4. Dans la section Contrôles de sécurité, sélectionnez Validation du schéma de l’API REST ou Validation du schéma de l’API gRPC et cliquez sur Paramètres d’action.
  5. Sur la page Actions, définissez le paramètre Action. Vous pouvez sélectionner ou désactiver l’option.
  6. Cliquez sur OK.

Remarque :

Désélectionnez l’option URL de démarrage avant de configurer le contrôle de sécurité pour la validation du schéma d’API.

Configurer une règle de relaxation pour la validation du schéma d’API à l’aide de la CLI

Configurez une règle de relaxation pour éviter que certains trafics ne soient validés par rapport au schéma spécifié dans la spécification d’API liée au profil Web App Firewall.

Pour configurer la règle de relaxation pour la validation du schéma de l’API REST, à l’invite de commande, tapez :

bind appfw profile <profile name> -restValidation <REST relaxation pattern> -ruleAction <Log|None>

  • Modèle de relaxation REST : modèle d’URL auquel la relaxation est appliquée. Les modèles peuvent inclure des variables ainsi que des définitions génériques, comme décrit dans proto of Google APIs Lien actuel : https://github.com/googleapis/googleapis/blob/master/google/api/http.proto

    L’URL spécifiée ne doit pas nécessairement faire partie de la spécification de l’API.

    Remarque : Le préfixe du modèle doit avoir une méthode HTTP (c’est-à-dire GET, PUT, POST, DELETE, PATCH) suivis de deux points (:). Exemple :

    • GET: /v1/ {name=messages/*} - Autorise les URL à trois segments commençant par /v1/messages et la méthode est GET.
    • PATCH: /v1/messages/ {message_id=**} - Autorise tout ce qui possède le préfixe /v1/messages et la méthode est PATCH.
    • POST: /v1/lists/** - Autorise tout ce qui possède le préfixe /v1/lists et la méthode est POST.
    • ://engineering/**- Autorise n’importe quelle URL contenant le deuxième segment en tant qu’ingénierie, quelle que soit la méthode.
  • Log or None : spécifie si des journaux sont générés pour le trafic contourné correspondant à la règle. Lorsque l’action est configurée pour être enregistrée, les URL assouplies et les règles correspondantes sont enregistrées dans les journaux du système. Lorsque l’action est configurée pour être enregistrée, les URL assouplies et la règle correspondante sont enregistrées dans les journaux du système.

Pour configurer la règle de relaxation pour la validation du schéma de l’API gRPC, à l’invite de commande, tapez :

bind appfw profile <profile name> -grpcValidation <gRPC pattern> -ruleAction <Log|None>

  • Schéma gRPC : schéma des paramètres gRPC pour lesquels la relaxation est appliquée. La méthode gRPC spécifiée ne doit pas nécessairement faire partie de la spécification de l’API.

    Exemple :

    • Citrix.api.doc.addbook : autorise le RPC AddBook dans le package citrix.api.doc.
    • test.api.** - Autorise tous les RPC dans des packages, en commençant par test.api.
    • *.ingénierie.** - Autorise tous les RPC dont le deuxième segment du nom du package est l’ingénierie.
  • Journal Aucun : spécifie si des journaux sont générés pour le trafic contourné correspondant à la règle.

Configurer une règle de relaxation pour la validation du schéma d’API à l’aide de l’interface graphique

Validation du schéma d’API REST

  1. Accédez à Sécurité > NetScaler Web App Firewall > Profils.
  2. Sélectionnez un profil défini par l’utilisateur et cliquez sur Modifier.
  3. Sur la page de profil deNetScaler Web App Firewall, dans la section Paramètresavancés, cliquez sur Règlede relaxation.
  4. Sélectionnez la validation du schéma de l’API REST et cliquez sur Modifier.
  5. Sur la page Règles de relaxation de la validation du schéma de l’API REST, cliquez sur Ajouter.
  6. Sur la page Règle de relaxation de la validation du schéma de l’API REST, spécifiez les informations suivantes :

    1. Activé : sélectionnez l’option permettant d’activer la règle de relaxation.
    2. Modèle d’URL Rest : entrez le modèle d’URL auquel la relaxation est appliquée.
    3. Action de relaxation de l’URL REST : sélectionnez une action.
    4. Commentaires : description de l’expression.
    5. ID de ressource : identifiant unique permettant d’identifier la ressource.
    6. Cliquez sur Créer. La règle de relaxation de validation de schéma d’API REST récemment ajoutée est répertoriée sur la page Règles de relaxation de validation de schéma d’API REST.

Validation du schéma de l’API gRPC

  1. Accédez à Sécurité > NetScaler Web App Firewall > Profils.
  2. Sur la page Profils, sélectionnez un profil et cliquez sur Modifier.
  3. Sur la page de profil deNetScaler Web App Firewall, dans la section Paramètresavancés, cliquez sur Règlede relaxation.
  4. Sélectionnez la validation du schéma de l’API gRPC et cliquez sur Modifier.
  5. Sur la page Règles de relaxation de la validation du schéma de l’API gRPC, cliquez sur Ajouter.
  6. Sur la page Règle de relaxation de la validation du schéma de l’API gRPC, spécifiez les informations suivantes :
    1. Activé : sélectionnez l’option permettant d’activer la règle de relaxation.
    2. Modèle de méthode gRPC - Entrez le modèle de méthode gRPC pour lequel la relaxation est appliquée
    3. Action de relaxation de l’URL REST : sélectionnez l’une des actions.
    4. Commentaires : description de l’expression.
    5. ID de ressource : identifiant unique permettant d’identifier la ressource.
    6. Cliquez sur Créer. La règle de relaxation de validation du schéma de l’API gRPC récemment ajoutée est répertoriée sur la page Règles de relaxation de la validation du schéma de l’API gRPC.