WordPress statique · Authentification
Authentification d’un site WordPress statique simplifiée : déploiement avec le modèle AWS SAR
Un frontend WordPress statique supprime l’environnement d’exécution PHP des requêtes publiques, mais également la connexion WordPress native du site livré. Les portails, téléchargements et routes membres protégés nécessitent donc un modèle d’identité et d’accès en périphérie conçu pour une diffusion statique.
Mise à jour importante
Ce mode de déploiement a été remplacé
Le modèle AWS Serverless Application Repository (SAR) décrit dans cet article n’est plus disponible. WP Suite utilise désormais Deployment Access, avec des modèles CloudFormation couvrant l’infrastructure backend requise par tous les plugins WP Suite.
Prochainement : un nouveau guide présentera le workflow Deployment Access actualisé et la solution étendue.
Le modèle
Authentifier avec Cognito, autoriser la diffusion avec CloudFront.
Gatey connecte l’utilisateur
Le navigateur s’authentifie auprès d’un Amazon Cognito User Pool via l’expérience Gatey intégrée aux pages générées par WordPress.
Un signataire émet des cookies
Une API protégée vérifie l’utilisateur authentifié et renvoie des cookies signés CloudFront dont le chemin et la durée de vie sont limités.
CloudFront protège le contenu
Les comportements CloudFront et un groupe de clés approuvé imposent le contrôle d’accès avant la diffusion des objets statiques protégés depuis S3.
01 · Pourquoi
Pourquoi la publication statique nécessite-t-elle une autre architecture de connexion ?
Une fois WordPress exporté sous forme de fichiers statiques, le chemin public ne comporte plus de session PHP ni de requête vers la base de données WordPress. Le site peut toujours afficher du JavaScript interactif, mais le système d’authentification WordPress natif n’est plus présent en périphérie.
La solution de remplacement doit protéger le chemin de diffusion du contenu lui-même, et pas seulement masquer des liens dans le navigateur. Les cookies signés CloudFront conviennent lorsqu’un utilisateur authentifié doit accéder à plusieurs fichiers ou routes protégés sous la même distribution.
- Ne vous fiez pas aux règles de visibilité côté client pour contrôler l’accès.
- Protégez l’origine afin que les visiteurs ne puissent pas contourner CloudFront et lire directement les objets S3.
- Limitez les stratégies de cookies au domaine, au chemin et à la durée de vie nécessaires.
On obtient ainsi un site statique qui reste mis en cache et diffusé mondialement, tandis que certains contenus demeurent protégés par une stratégie de périphérie applicable. Pour une présentation complète du problème, découvrez comment ajouter une connexion à WordPress statique sans réintroduire les sessions PHP et comment conserver des fonctions dynamiques après la publication statique.
WordPress statique et dynamique
| Fonctionnalité | WP dynamique (PHP/MySQL) | WP statique (S3 + CloudFront) |
|---|---|---|
| Vitesse | Rendu côté serveur, dépend de PHP/DB | Mis en cache en périphérie du CDN, ultrarapide |
| Sécurité | Le cœur et les plugins augmentent la surface d’attaque | Surface minimale (fichiers statiques) |
| Évolutivité | Limitée par les ressources du serveur | Pratiquement illimitée avec CloudFront |
| Authentification | Connexion WordPress intégrée | SAR + Gatey (cookies signés) |
| Maintenance | Correctifs et sauvegardes de base de données | Synchronisation des fichiers et invalidation du cache |
02 · Composants
Que fournit la pile Static Site Guardian ?
Le modèle de déploiement combine une origine S3, un comportement de distribution CloudFront, une clé publique CloudFront et un groupe de clés, ainsi que des points de terminaison API Gateway et Lambda qui émettent et effacent les cookies signés après l’authentification.
Des ressources complémentaires peuvent stocker le matériel de signature en toute sécurité, connecter un domaine personnalisé et un certificat, appliquer des protections WAF et exposer des sorties utilisables par Gatey ou la configuration WordPress.
- Origine S3 privée et diffusion CloudFront.
- Points de terminaison d’émission de cookies et de déconnexion avec autorisation propre à chaque route.
- Clés, journaux, domaines et coûts des services AWS détenus par le client.
Les ressources exactes dépendent des paramètres de déploiement sélectionnés, mais le contrôle d’accès reste extérieur aux fichiers HTML exportés. Pour approfondir la frontière de diffusion, consultez l’architecture des cookies signés CloudFront.

03 · Intégration
Comment Gatey relie-t-il la connexion aux routes statiques protégées ?
Gatey gère le parcours de compte Cognito dans le navigateur. Après une connexion réussie, le frontend appelle le point de terminaison d’émission de cookies configuré avec le contexte authentifié requis. La réponse définit des cookies signés pour le domaine CloudFront, puis le visiteur peut demander normalement la route protégée.
La déconnexion doit effacer à la fois la session de l’application et les cookies CloudFront. Les destinations de redirection doivent être explicites afin que les requêtes expirées ou non autorisées ramènent le visiteur vers un parcours de connexion utile plutôt que vers une erreur générique de diffusion.
- Alignez le rappel Cognito, le domaine du site et le domaine des cookies.
- Testez la connexion, l’accès direct à une URL protégée, l’expiration et la déconnexion.
- Évitez les portées de cookies couvrant des sites ou chemins sans rapport.
L’utilisateur suit un parcours de compte normal, tandis que CloudFront continue d’imposer la décision de diffusion.

04 · Exploitation
Que faut-il tester après le déploiement ?
Un déploiement CloudFormation réussi n’est qu’un début. Publiez les fichiers statiques dans le préfixe S3 attendu, invalidez les chemins CloudFront concernés et vérifiez que les routes publiques restent accessibles tandis que les routes protégées refusent les requêtes anonymes.
Testez ensuite plusieurs utilisateurs, l’expiration des cookies, les modes de confidentialité du navigateur, les domaines personnalisés, le comportement CORS de l’API de signature, la rotation des clés, les journaux, les alarmes et les procédures de restauration. Vérifiez qu’une modification de la page WordPress ne supprime pas accidentellement les réglages d’intégration requis par le frontend exporté.
- Testez les états anonyme, authentifié, expiré et déconnecté.
- Surveillez les échecs du signataire et les réponses d’autorisation inattendues.
- Documentez la rotation des clés et de la configuration sans interruption.
La diffusion statique réduit la surface d’attaque publique de WordPress, mais ne supprime pas les responsabilités liées à l’identité, aux clés, aux API et à l’exploitation.

Règle de contrôle d’accès
Une page statique peut être interactive, mais le navigateur ne doit pas constituer la frontière de sécurité.
Utilisez la logique du navigateur pour améliorer l’expérience utilisateur. Utilisez Cognito, des API protégées, les stratégies CloudFront et une origine privée pour déterminer si le contenu protégé est effectivement diffusé.
Étape suivante
Planifiez les routes protégées avant de déployer la pile.
Examinez Static Publisher et Deployment Access afin de cartographier la manière dont le site est exporté, son lieu de diffusion et les chemins qui nécessitent une protection par cookies signés.
