Comment sécuriser vos API avec les schémas de sécurité OpenAPI

Découvrez les schémas de sécurité OpenAPI, leur fonctionnement et comment sécuriser vos API avec Apidog.

Louis Dupont

Louis Dupont

5 June 2025

Comment sécuriser vos API avec les schémas de sécurité OpenAPI

Si vous développez ou consommez des API, vous savez probablement à quel point il est important de les protéger contre les accès non autorisés et les utilisations abusives. Les API sont l'épine dorsale de nombreuses applications modernes, et elles doivent être sécurisées avec des mécanismes d'authentification et d'autorisation appropriés.

Mais comment décrire et documenter les exigences de sécurité de vos API ? Comment vous assurez-vous que les consommateurs de votre API savent comment accéder à vos API de manière sécurisée et correcte ? Comment éviter la confusion et l'incohérence entre les différentes API et les schémas de sécurité ?

C'est là que les schémas de sécurité OpenAPI entrent en jeu. OpenAPI est une norme largement utilisée pour décrire et documenter les API dans un format lisible par machine et convivial pour l'homme. Les schémas de sécurité OpenAPI font partie de la spécification OpenAPI qui vous permet de définir et de référencer les mécanismes de sécurité qui protègent vos API.

Dans cet article de blog, nous allons expliquer ce que sont les schémas de sécurité OpenAPI, comment ils fonctionnent et comment vous pouvez les utiliser pour sécuriser vos API. Nous vous montrerons également quelques exemples de schémas de sécurité OpenAPI et comment les utiliser avec Apidog, un outil puissant pour la conception, le test et la documentation des API.

button

Que sont les schémas de sécurité OpenAPI ?

Les schémas de sécurité OpenAPI sont un moyen de décrire les exigences de sécurité de vos API à l'aide de la spécification OpenAPI. Ils sont définis dans la section components/securitySchemes de votre document OpenAPI, et ils peuvent être référencés par le mot-clé security au niveau racine ou au niveau de l'opération de votre API.

Les schémas de sécurité OpenAPI peuvent décrire différents types de mécanismes de sécurité, tels que :

Chaque schéma de sécurité a une propriété type qui indique le type de mécanisme de sécurité, et d'autres propriétés qui dépendent du type. Par exemple, un schéma de sécurité de clé API a une propriété name qui spécifie le nom de l'en-tête, du paramètre de requête ou du cookie qui contient la clé API, et une propriété in qui spécifie l'emplacement de la clé API.

Voici un exemple de schéma de sécurité de clé API :

components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      name: X-API-Key
      in: header

Pour appliquer un schéma de sécurité à votre API ou à une opération spécifique, vous devez utiliser le mot-clé security et fournir un tableau d'objets de exigences de sécurité. Un objet de exigences de sécurité est une carte des noms de schémas de sécurité vers un tableau de noms de portée (pour OAuth 2.0 et OpenID Connect) ou un tableau vide (pour d'autres types).

Par exemple, pour appliquer le schéma de sécurité de clé API à l'ensemble de l'API, vous pouvez utiliser la syntaxe suivante :

security:
  - ApiKeyAuth: []

Pour appliquer le schéma de sécurité de clé API à une opération spécifique, vous pouvez utiliser la syntaxe suivante :

paths:
  /pets:
    get:
      security:
        - ApiKeyAuth: []

Vous pouvez également utiliser plusieurs schémas de sécurité pour votre API ou pour une opération spécifique, soit comme alternatives (OU logique) soit comme combinaisons (ET logique). Par exemple, pour exiger une clé API ou un jeton Bearer pour une opération spécifique, vous pouvez utiliser la syntaxe suivante :

paths:
  /pets:
    get:
      security:
        - ApiKeyAuth: []
        - BearerAuth: []

Pour exiger à la fois une clé API et un jeton Bearer pour une opération spécifique, vous pouvez utiliser la syntaxe suivante :

paths:
  /pets:
    get:
      security:
        - ApiKeyAuth: []
          BearerAuth: []

Pourquoi utiliser les schémas de sécurité OpenAPI ?

Les schémas de sécurité OpenAPI présentent plusieurs avantages pour les fournisseurs et les consommateurs d'API, tels que :

Comment utiliser les schémas de sécurité OpenAPI avec Apidog ?

Apidog est un outil puissant pour la conception, le test et la documentation des API. Il prend en charge la spécification OpenAPI et vous permet de créer et de modifier des documents OpenAPI de manière visuelle et intuitive. Il fournit également des fonctionnalités telles que les tests en direct, les serveurs simulés, la génération de code et la documentation interactive.

button

L'un des avantages de l'utilisation d'Apidog est qu'il peut détecter et appliquer automatiquement les schémas de sécurité que vous définissez dans votre document OpenAPI. Par exemple, si vous définissez un schéma de sécurité de clé API, Apidog vous invitera à saisir votre clé API et à l'envoyer avec vos requêtes. Si vous définissez un schéma de sécurité OAuth 2.0, Apidog vous guidera tout au long du flux d'autorisation et obtiendra et actualisera le jeton d'accès pour vous.

Pour utiliser les schémas de sécurité OpenAPI avec Apidog, vous devez suivre ces étapes :

Apidog affichera la réponse de votre API et vous montrera les détails de la requête et les paramètres de sécurité. Vous pouvez également afficher et modifier le document OpenAPI brut dans l'onglet Code, et générer une documentation interactive et des exemples de code dans les onglets Docs et Code.

Conclusion

Les schémas de sécurité OpenAPI sont une fonctionnalité utile de la spécification OpenAPI qui vous permet de décrire et de documenter les exigences de sécurité de vos API. Ils peuvent vous aider à communiquer les mécanismes de sécurité qui protègent vos API à vos consommateurs et développeurs d'API, et à permettre la génération d'une documentation interactive et d'exemples de code qui montrent comment accéder à vos API de manière sécurisée et correcte.

Ils peuvent également vous aider à intégrer vos API avec divers outils et plateformes qui prennent en charge la spécification OpenAPI, tels que Apidog, ce qui peut vous aider à concevoir, tester et documenter vos API plus facilement et plus efficacement.

button

Explore more

Comment utiliser Deepseek R1 en local avec Cursor

Comment utiliser Deepseek R1 en local avec Cursor

Apprenez à configurer DeepSeek R1 local avec Cursor IDE pour une aide au codage IA privée et économique.

4 June 2025

Comment exécuter Gemma 3n sur Android ?

Comment exécuter Gemma 3n sur Android ?

Apprenez à installer et exécuter Gemma 3n sur Android via Google AI Edge Gallery.

3 June 2025

Comment utiliser Claude Code avec GitHub Actions

Comment utiliser Claude Code avec GitHub Actions

Découvrez Claude Code avec GitHub Actions : revues de code, corrections de bugs, implémentation de fonctionnalités. Tutoriel pour développeurs.

29 May 2025

Pratiquez le Design-first d'API dans Apidog

Découvrez une manière plus simple de créer et utiliser des API