Méthode d'authentification JWT pour API REST WordPress
Marché
L'authentification JWT pour les API REST est une méthode simple pour sécuriser les points de terminaison des API REST de WordPress. Au lieu de transmettre les identifiants à chaque requête, l'authentification JWT utilise un jeton sécurisé pour vérifier l'identité de l'utilisateur. Ainsi, seuls les utilisateurs ou applications autorisés peuvent accéder aux points de terminaison protégés des API REST. Le jeton JWT est généré à partir des identifiants de l'utilisateur WordPress et est hautement chiffré, ce qui garantit une sécurité renforcée sans compromettre l'accès.
Authentification de l'API REST pour WordPress

L'extension d'authentification REST API pour WordPress protège vos API REST contre les accès non autorisés. Elle propose plusieurs méthodes d'authentification : authentification de base, authentification par clé API, OAuth 2.0 et authentification JWT.
En savoir plusQu'est-ce que l'authentification JWT pour WordPress ?
L'authentification JWT pour les API REST est une méthode simple pour sécuriser les points de terminaison des API REST de WordPress. Au lieu de transmettre les identifiants à chaque requête, l'authentification JWT utilise un jeton sécurisé pour vérifier l'identité de l'utilisateur. Ainsi, seuls les utilisateurs ou applications autorisés peuvent accéder aux points de terminaison protégés des API REST. Le jeton JWT est généré à partir des identifiants de l'utilisateur WordPress et est hautement chiffré, ce qui garantit une sécurité renforcée sans compromettre l'accès.
Configuration requise : Téléchargement et installation
- Connectez-vous à votre site WordPress en tant qu'administrateur.
- Depuis le tableau de bord WordPress, allez dans Extensions, puis cliquez sur Ajouter.
- Rechercher un Authentification API REST pour WP.
- Cliquez sur « Installer maintenant » pour ajouter l'extension à votre site.
- Après l'installation, cliquez sur Activer pour commencer à utiliser le plugin.
Comment sécuriser les API REST avec l'authentification JWT pour WordPress en utilisant la méthode d'authentification basée sur les jetons JWT ?
Si vous développez une application mobile ou web et avez besoin d'un contrôle d'accès aux API REST pour WordPress, l'authentification JWT pour API REST offre une solution sécurisée. Grâce à l'authentification JWT pour WordPress, vous pouvez définir des niveaux d'accès permettant aux utilisateurs disposant de droits spécifiques de créer ou de mettre à jour du contenu, tandis que les autres sont limités à la simple consultation des données.
- L'utilisation de Authentification basée sur un jeton JWTLes points de terminaison de l'API REST sont protégés par des jetons d'accès JWT générés à partir d'identifiants utilisateur WordPress valides. En incluant le jeton JWT dans l'en-tête Authorization, votre application peut accéder en toute sécurité aux ressources protégées ou effectuer des actions basées sur les rôles. Authentification JWT pour les API REST.
- Ces jetons sont sécurisés par des algorithmes de chiffrement tels que HSA ou RSA et expirent automatiquement après une période définie, renforçant ainsi la sécurité globale. Chaque jeton contient des informations utilisateur WordPress qui peuvent être décodées à l'aide d'une clé secrète ou d'un certificat, ce qui rend l'authentification JWT idéale pour la synchronisation des utilisateurs ou la création de comptes sur plusieurs systèmes.
- Jetons d'actualisation JWT pour WordPress Permettez aux utilisateurs de renouveler leur session en toute sécurité sans avoir à se reconnecter. L'authentification par jeton JWT, combinée à l'authentification JWT pour WordPress, garantit un accès API sécurisé et une communication fluide et efficace entre votre application et WordPress.
- Sécurisez les API REST avec l'authentification JWT pour WordPress

1. Une requête API REST pour WordPress est initiée avec les identifiants et paramètres requis afin de générer un jeton JWT via l'authentification JWT. Le jeton émis est sécurisé par une authentification basée sur le jeton JWT et chiffré à l'aide d'algorithmes standard tels que HS256 ou RSA pour garantir une protection renforcée des données.
2. Pour les requêtes suivantes, l'appel à l'API REST permettant de récupérer des données ou d'effectuer des actions inclut le jeton JWT dans l' en-tête Authorization, sous forme de jeton Bearer . Grâce à l'authentification JWT pour l'API REST, l'extension valide le jeton avant de traiter la requête. Si le jeton est valide, l'accès à la ressource demandée est autorisé ; dans le cas contraire, une réponse d'erreur est renvoyée. Dans ce processus, l'extension d'authentification JWT pour WordPress gère à la fois la création et la vérification des jetons, garantissant ainsi la sécurité de chaque requête API.
Cas d'utilisation associé :
- Comment effectuer des requêtes authentifiées JWT vers les points de terminaison de l'API REST pour WordPress ?
- Authentification des API REST pour WooCommerce/WordPress à l'aide de JWT (JSON Web Token).
Lisez les cas d’utilisation pour les méthodes d’authentification de l’API REST suivantes :
Comment configurer la méthode d'authentification JWT pour une API REST ?
- Gratuit
- Ici, vous devrez effectuer deux appels API :
I : Obtenez le jeton JWT
- Pour obtenir le jeton JWT, vous devez effectuer un appel d'API REST au point de terminaison du jeton comme ci-dessous :
Request:POST https://<domain-name>/wp-json/api/v1/token
Body:username = <wordpress username>
password = <wordpress password>
Sample curl Request Format-
curl -d "username=<wordpress_username>&password=<wordpress_password>"
-X POST http://<wp_base_url>/wp-json/api/v1/token
Ce point de terminaison d'API est également appelé API d'authentification utilisateur ou point de terminaison d'API de connexion pour WordPress. Si nous envoyons une requête à ce point de terminaison avec les identifiants de l'utilisateur WordPress et si ces identifiants sont valides, une réponse positive contenant un jeton JWT sera renvoyée ; sinon, une réponse d'erreur sera affichée.
II : Envoyer une requête API
- Une fois que vous avez obtenu le jeton JWT, vous pouvez l'utiliser pour demander l'accès aux API REST de WordPress, comme indiqué ci-dessous :
Request: GET https://<domain-name>/wp-json/wp/v2/posts
Header: Authorization : Bearer <JWT token>
Sample curl Request Format-
curl -H "Authorization:Bearer <jwt_token >"
-X GET http://<wp_base_url>/wp-json/wp/v2/posts
- NOTE: Le jeton ci-dessus est valable une heure par défaut et peut être personnalisé. Une fois expiré, il peut être généré à nouveau.
- Jetez un coup d'œil au documentation développeur pour plus de détails.
- Jetez un coup d'œil au Réponse d'erreur pour créer une API avec le jeton JWT.
Félicitations ! Vous avez configuré avec succès la méthode d’authentification JWT pour les appels d’API REST à l’aide de la méthode d’authentification d’API REST miniOrange pour WordPress.
Exemples de code dans les langages de programmation
- DEMANDE DE RESSOURCES
- DEMANDE DE JETON
Échantillons de facteur :
- Cliquez sur le Échantillons de facteur onglet dans le plugin.
- A Fichier JSON sera automatiquement téléchargé.
- Importez le fichier téléchargé Fichier JSON dans l'application Postman comme indiqué ci-dessous.
- Une fois que vous avez importé le fichier json, cliquez sur la requête API REST sous le Collections comme indiqué dans la dernière figure. Remplacez le avec votre domaine Wordpress dans le http://<wp_base_url>/wp-json/wp/v2/posts et remplacer le avec le nom d'utilisateur WordPress et avec le mot de passe WordPress dans les paramètres du corps.
- Exemple
- NOTE: Copiez le jeton JWT obtenu à partir de la réponse. Il sera utilisé dans les requêtes d'API de ressources pour l'authentification.
- Une fois que vous avez importé le fichier json, cliquez sur la requête API REST sous le Collections comme indiqué dans la dernière figure. Remplacez le avec votre domaine Wordpress dans le http://<wp_base_url>/wp-json/wp/v2/posts et remplacer le avec le jeton jwt copié à partir de la réponse obtenue après la demande de jeton.
- Exemple
Suivez les étapes ci-dessous pour effectuer une requête API REST à l'aide de Postman :
a) Requête d'API REST pour obtenir le jeton JWT
b) Requête API REST pour obtenir la ressource réelle
Fonction description
1. Restriction de l'API REST basée sur les rôles :
Cette fonctionnalité restreint l'accès à l'API REST de WordPress en fonction des rôles des utilisateurs . Vous pouvez autoriser certains rôles à accéder à certaines ressources de l'API REST. Lors d'une requête API REST, le rôle de l'utilisateur est vérifié et l'accès est accordé uniquement si ce rôle figure sur la liste blanche.
Comment configurer la restriction de l'API REST basée sur les rôles dans WordPress ?
- Accédez à l’onglet Paramètres avancés du plugin.
- Dans la section Restriction basée sur les rôles, tous les rôles sont autorisés à accéder aux API par défaut.
- Cochez la case en regard des rôles dont vous souhaitez restreindre l’accès aux API.
- Dans la capture d'écran ci-dessus, la case à cocher « rôle d'abonné » est activée. Ainsi, lorsqu'un utilisateur ayant le rôle d'abonné effectue une requête API, il ne sera pas autorisé à accéder à la ressource demandée.
Remarque : La fonctionnalité de restriction basée sur les rôles est valable pour l’authentification de base (nom d’utilisateur : mot de passe), la méthode JWT et OAuth 2.0 (octroi par mot de passe).
2. En-tête personnalisé :
La fonctionnalité d'en-tête personnalisé vous permet d'utiliser un en-tête personnalisé à la place de l'en-tête « Authorization » par défaut. Cela renforce la sécurité, car l'API REST n'acceptera que les requêtes comportant l'en-tête personnalisé que vous avez défini. Toute tentative d'envoi d'une requête avec l'en-tête « Authorization » par défaut sera refusée.
Comment configurer un en-tête personnalisé pour l'authentification de l'API REST pour WordPress ?
- Accédez à l’onglet Paramètres avancés du plugin.
- Dans la section En-tête personnalisé, saisissez le nom de votre en-tête préféré dans la zone de texte.
- Enregistrez les modifications pour appliquer le nouvel en-tête personnalisé aux requêtes API.
3. Excluez les API REST :
La fonctionnalité « Exclure les API REST » permet d'autoriser l'accès à certains points de terminaison d'API REST sans authentification . Ces API exclues deviennent publiques et accessibles sans nécessiter de jeton ni de connexion.
Comment configurer l'API REST exclue dans l'authentification JWT ?
- Accédez à l’onglet Paramètres avancés du plugin.
- Dans la section Exclure les API REST, saisissez vos points de terminaison d’API au format requis.
- Les API saisies seront exclues de l’authentification et disponibles pour l’accès public.
- Exemple : Supposons que vous souhaitiez exclure l’API REST « » /wp-json/wp/v2/posts' alors vous devez saisir '/wp/v2/posts' dans la zone de texte.
4. Expiration du jeton personnalisé :
La fonctionnalité d'expiration du jeton personnalisé fonctionne avec JWT et OAuth 2.0 méthodes d'authentification, vous permettant de définir
délais d'expiration personnalisés pour les jetons utilisés pour accéder aux points de terminaison de l'API REST de WordPress. Une fois le délai configuré écoulé, le jeton devient automatiquement invalide. invalide, améliorant la sécurité et vous donnant le contrôle sur la durée d'accès.
Comment définir l'expiration du jeton personnalisé dans l'authentification JWT ?
- Accédez à l’onglet Paramètres avancés du plugin.
- Ouvrez la section Configuration d’expiration du jeton.
- Ajustez le délai d'expiration du jeton d'accès (par défaut : 60 minutes).
- (Pour OAuth 2.0) Ajustez le délai d'expiration du jeton d'actualisation (par défaut : 14 jours).
- Enregistrez les modifications pour appliquer vos paramètres d’expiration de jeton personnalisés.
5. Validation de signature pour les jetons basés sur JWT :
La fonction de validation de signature signe en toute sécurité Jetons JWT pour protéger l'authentification de l'API REST pour WordPress. Chaque signature de jeton ne peut être validée qu'à l'aide de secret client ou certificat, en veillant à ce que la signature reste
privé et sécurisé et ne peut être consulté ou modifié par des utilisateurs non autorisés.
Comment configurer la validation de signature JWT à l'aide de HS256 ou RS256 ?
Le plugin prend en charge deux algorithmes de signature pour les jetons JWT : HS256 et RS256 . Vous pouvez sélectionner l’algorithme de votre choix dans le menu déroulant. Pour finaliser la validation de la signature, ajoutez votre clé secrète ou votre certificat client , qui sert à signer le jeton JWT de manière sécurisée et à garantir son authenticité.
6. Jeton d'actualisation
Un jeton d'actualisation est un jeton à longue durée de vie permettant d'obtenir un nouveau jeton d'accès sans que l'utilisateur ait à se reconnecter. Cette fonctionnalité est essentielle pour maintenir la session d'un utilisateur lorsque le jeton d'accès expire. Les jetons d'accès ont généralement une durée de vie courte (de 15 minutes à 1 heure) pour des raisons de sécurité, tandis que les jetons d'actualisation sont conçus pour durer plus longtemps (plusieurs jours, semaines, voire mois).
7. Révoquer le jeton
Révoquer un jeton signifie l'invalider avant son expiration. Cette fonctionnalité est cruciale pour la sécurité , notamment dans des cas comme :
- Un utilisateur se déconnecte de sa session.
- Un utilisateur change son mot de passe.
- Un jeton est compromis (volé ou divulgué).
- Les administrateurs souhaitent forcer une déconnexion ou invalider les jetons pour certains utilisateurs (par exemple, après une faille de sécurité).
Questions fréquentes
Comment JWT assure-t-il la sécurité de l’authentification ?
JWT garantit la sécurité grâce à une authentification par jeton JWT qui vérifie chaque requête sans nécessiter l'envoi répété d'identifiants et de mots de passe. Dans le cadre de l'authentification JWT pour les API REST, le jeton est signé numériquement (HS256) ou avec une clé privée (RSA), ce qui le rend inaltérable. Les jetons expirent après une durée déterminée, limitant ainsi les risques en cas de divulgation. L'authentification JWT constitue donc une méthode sécurisée pour protéger les points de terminaison d'API REST de WordPress.
Où dois-je ajouter le jeton JWT dans ma demande d'API ?
Vous devez ajouter le jeton dans les en-têtes de la requête en utilisant l'en-tête Authorization comme jeton Bearer. Il s'agit de l'approche standard pour l'authentification JWT des API REST et elle est essentielle à l'authentification par jeton JWT. Par exemple :
Authorization: Bearer YOUR_JWT_TOKEN
Que se passe-t-il si mon jeton JWT expire ? Comment le renouveler ?
Lorsque le jeton d'accès expire, l'API renvoie une erreur d'autorisation (généralement 401). Avec l'authentification JWT pour WordPress, vous pouvez utiliser un jeton d'actualisation (jeton d'actualisation JWT) pour demander un nouveau jeton d'accès sans avoir à vous reconnecter. Ce mécanisme constitue un avantage majeur de l'authentification par jeton JWT : il garantit la sécurité des sessions et une expérience utilisateur optimale pour les API REST.
Le plugin prend-il en charge les algorithmes HS256 et RSA pour la génération de jetons ?
Oui. Le plugin prend en charge la signature de jetons via HS256 et RSA, selon la configuration. HS256 utilise un secret partagé, tandis que RSA utilise une paire de clés publique/privée. Cette flexibilité renforce l'authentification par jeton JWT et répond aux différentes exigences de sécurité pour l'authentification JWT des API REST.
Comment puis-je tester si l'authentification JWT fonctionne correctement sur mon site WordPress ?
Vous pouvez tester l'authentification JWT pour WordPress en deux étapes simples :
- Générer un jeton : Utilisez le point de terminaison de jeton du plugin avec des identifiants WordPress valides et vérifiez que vous recevez bien un jeton JWT. curl -d" username=
& mot de passe = " -X POST http:// /wp-json/api/v1/token - Appeler un point de terminaison d'API REST protégé : Envoyer une requête à un point de terminaison protégé avec :
Authorization: Bearer YOUR_JWT_TOKEN
Articles Relatifs
Merci pour votre réponse. Nous reviendrons vers vous bientôt.
Quelque chose s'est mal passé. Veuillez soumettre à nouveau votre requête
Nous vous contacterons dans les plus brefs délais !
Besoin d'aide?
Envoyez-nous un e-mail à apisupport@xecurify.com pour obtenir rapidement des conseils (par e-mail ou en réunion) sur vos besoins et notre équipe vous aidera à sélectionner la solution/le forfait le mieux adapté à vos exigences.
