Glossaire

Que sont les Application Passwords dans WordPress ?

20 mai 2026

Les Application Passwords sont des identifiants de 24 caractères introduits dans WordPress 5.6 (décembre 2020) qui permettent aux applications externes de s'authentifier sur la REST API et XML RPC de WordPress sans exposer le mot de passe principal de l'utilisateur. Chaque Application Password est liée à un seul utilisateur et à une application nommée, peut être révoquée individuellement depuis le profil utilisateur et est envoyée via HTTPS par HTTP Basic Authentication. Elles remplacent l'ancien pattern peu sûr consistant à stocker le mot de passe principal de WordPress dans des applications tierces et sont aujourd'hui la manière recommandée d'intégrer WordPress avec des apps mobiles, des scripts de déploiement, des frontends headless, des outils de sauvegarde et des agents IA.

Pourquoi WordPress a introduit les Application Passwords ?

Avant WordPress 5.6, toute intégration REST API ou XML RPC avec accès en écriture devait utiliser le mot de passe principal du compte (Basic Auth) ou s'appuyer sur des plugins tiers comme JWT Auth ou OAuth. Le mot de passe principal donnait un contrôle complet, y compris l'éditeur de thèmes et de plugins, et une fuite signifiait une prise totale du compte. Les Application Passwords résolvent ce problème via des identifiants par application, révocables instantanément sans changer le mot de passe utilisateur ni casser les autres intégrations.

Comment fonctionnent les Application Passwords ?

Un utilisateur connecté ouvre Utilisateurs » Profil, descend à la section "Mots de passe d'application", saisit un nom comme "App iPhone" ou "Script de sauvegarde" et clique Ajouter un nouveau mot de passe d'application. WordPress génère un token de 24 caractères affiché une seule fois au format xxxx xxxx xxxx xxxx xxxx xxxx. Le token est stocké haché dans wp_usermeta sous la clé _application_passwords et utilisé avec le login en HTTP Basic Auth :

curl -u utilisateur:xxxxxxxxxxxxxxxxxxxxxxxx \
     https://example.com/wp-json/wp/v2/posts

Ou via JavaScript fetch :

const token = btoa('utilisateur:xxxxxxxxxxxxxxxxxxxxxxxx');
fetch('https://example.com/wp-json/wp/v2/posts', {
  headers: { 'Authorization': 'Basic ' + token }
});

Cas d'usage typiques

  • Apps mobiles comme l'app officielle WordPress iOS et Android.
  • Frontends headless Next.js, Astro, SvelteKit, Nuxt.
  • Scripts CI/CD publiant des articles, mettant à jour des menus, purgeant le cache.
  • Outils de sauvegarde et migration comme UpdraftPlus Remote, ManageWP, MainWP.
  • Workflows de contenu IA avec Zapier, Make, n8n ou un agent GPT.
  • Synchro WooCommerce avec un ERP ou un PIM.

Créer une Application Password étape par étape

  1. Se connecter avec l'utilisateur cible. Créer un utilisateur dédié avec le rôle minimum si possible.
  2. Aller à Utilisateurs » Profil ou Utilisateurs » Tous » Modifier.
  3. Descendre à Mots de passe d'application.
  4. Saisir un nom parlant, ex. Zapier Production ou Serveur backup eu01.
  5. Cliquer Ajouter un nouveau mot de passe d'application.
  6. Copier immédiatement le token de 24 caractères.
  7. Le coller dans l'application externe avec le nom d'utilisateur WordPress.

Révoquer et auditer les Application Passwords

Sur le même écran, chaque Application Password indique la date de création et la dernière utilisation. Révoquer invalide un token précis, Révoquer tous les mots de passe d'application les invalide tous. Effet immédiat. Vérifier trimestriellement la date "Dernière utilisation".

Les Application Passwords sont elles sécurisées ?

Oui, sur HTTPS. Chaque token a environ 144 bits d'entropie, est stocké haché avec phpass et ne circule que dans l'en tête Authorization. Points d'attention :

  • HTTPS obligatoire. WordPress refuse les Application Passwords sur HTTP en clair par défaut.
  • Pas de scopes ni d'expiration. Le token hérite des droits de l'utilisateur.
  • Désactivées par certains plugins de hardening (iThemes/Solid Security).

Différence avec OAuth, JWT ou API Keys

MéthodeIntégré à WordPressRévocable par appScopesExpiration
Mot de passe principal (Basic Auth)OuiNonTotalNon
Application PasswordOui (5.6+)OuiHérite du rôleNon
JWT Auth (plugin)NonExpiration seulementHérite du rôleOui
OAuth 2.0 (plugin)NonOuiOuiOui (refresh)
WooCommerce REST API KeysWooCommerceOuiLecture/ÉcritureNon

Désactiver entièrement les Application Passwords

add_filter( 'wp_is_application_passwords_available', '__return_false' );

Ou par utilisateur :

add_filter( 'wp_is_application_passwords_available_for_user', function ( $available, $user ) {
    if ( user_can( $user, 'manage_options' ) ) {
        return false;
    }
    return $available;
}, 10, 2 );

Ce que vérifie InspectWP

InspectWP signale la disponibilité de la REST API WordPress et marque l'endpoint /wp-json/wp/v2/users s'il expose des données utilisateurs sans authentification. Les Application Passwords elles mêmes n'apparaissent pas dans le HTML.

Vérifiez votre site WordPress dès maintenant

InspectWP analyse votre site WordPress pour détecter les problèmes de sécurité, de SEO, de conformité RGPD et de performance — gratuitement.

Analyser votre site gratuitement