Asegura WordPress Headless y WPGraphQL

Guía de seguridad para WordPress en modo headless con WPGraphQL: protege GraphQL con autenticación por aplicación, cabecera secreta, firewall y desactiva la REST API para evitar exposición y abuso.

7 sept 2025 • 4 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Ir en modo headless con WordPress es una pasada: un CMS de clase mundial en el backend y libertad total en el frontend con Astro, Next.js, Nuxt o SvelteKit. Pero esta arquitectura también abre un nuevo frente de ciberseguridad que no debes ignorar.

Uno de los errores más comunes es dejar el endpoint GraphQL expuesto al público. Un endpoint público en la ruta graphql equivale a dejar los planos de tu casa en el jardín. Cualquiera podría 1 introspectar todo tu esquema y descubrir tipos, taxonomías y campos personalizados 2 lanzar consultas costosas que ralenticen o derriben tu servidor como un DoS 3 acceder a contenido privado o en borrador si la autorización no está perfectamente configurada.

En esta guía te propongo un enfoque por capas para blindar WPGraphQL de forma que solo tu aplicación frontend pueda hablar con él.

Primera capa con WPGraphQL En el panel de WordPress entra en GraphQL y después en Settings. Activa la opción Restrict Endpoint to Authenticated Users y guarda los cambios. Desde ese momento cualquier petición no autenticada a tu dominio punto com barra graphql será bloqueada. Es tu primera línea de defensa y la más sencilla de aplicar.

Contraseñas de aplicación de WordPress WordPress incluye Application Passwords, credenciales específicas para integraciones externas que no exponen tu contraseña principal. Para crear una ve a Users y después Profile, busca Application Passwords, añade un nombre descriptivo como Frontend Astro y genera la contraseña. Cópiala y guárdala bien porque se muestra una sola vez. Esa credencial servirá para autenticar tus llamadas al endpoint GraphQL desde el servidor del frontend.

Llamadas autenticadas en tu frontend Buenas prácticas que debes seguir 1 almacena credenciales en variables de entorno como WP_GRAPHQL_URL WP_USER y WP_APP_PASSWORD en un archivo env local y nunca las incluyas en el código 2 crea un helper de red que añada el encabezado Authorization con Basic Auth construido a partir de usuario y contraseña de aplicación y que valide errores de GraphQL y HTTP 3 centraliza las consultas y variables para evitar sobreexposición y limitar campos a lo estrictamente necesario. Recuerda añadir el archivo env local al gitignore para que las credenciales no viajen en el control de versiones.

Defensa en profundidad para producción Más allá de la autenticación por aplicación, en producción conviene sumar varias capas adicionales.

1 Encabezado secreto Exige que todas las peticiones a la ruta graphql incluyan un header privado como X-Secret-Request-Header con un valor largo y aleatorio. Configura el fetch del frontend para enviarlo y bloquea en Nginx Apache u otro proxy cualquier solicitud que no lo presente. Así reduces al mínimo las superficies de ataque automatizadas.

2 Firewall o reglas del hosting Lista blanca de IPs de tu frontend o funciones serverless, deniega todo lo demás hacia la ruta graphql y opcionalmente exige el encabezado secreto desde el WAF. Si operas en la nube, apóyate en reglas de seguridad y WAF gestionados para reducir latencia y mejorar la protección.

3 Desactiva la REST API si no la usas Si tu proyecto solo consume GraphQL, bloquea el acceso anónimo a la API REST para evitar enumeración de usuarios y fugas de metadatos. Puedes hacerlo mediante un filtro que interrumpa el init de la REST API cuando el usuario no esté autenticado.

Consejos extra de endurecimiento 1 limita la introspección del esquema en entornos públicos 2 establece límites de profundidad y coste de consultas en el servidor de GraphQL 3 cachea de forma inteligente a nivel de CDN y de aplicación con invalidación por eventos 4 registra y monitoriza peticiones a graphql para detectar patrones anómalos 5 aplica rate limiting y protección DoS en el edge 6 separa credenciales por entorno y rota claves con frecuencia 7 aplica el principio de mínimo privilegio en los roles de WordPress.

En Q2BSTUDIO te ayudamos a diseñar, desarrollar y asegurar arquitecturas headless con WordPress, WPGraphQL y frontends modernos, integrando pipelines CI CD, WAF, observabilidad y auditorías de ciberseguridad. Somos expertos en aplicaciones a medida y software a medida, además de especialistas en inteligencia artificial, ia para empresas, agentes IA, servicios inteligencia de negocio y power bi, y despliegues en servicios cloud aws y azure. Si buscas elevar el nivel de protección y cumplimiento normativo, descubre nuestros servicios de ciberseguridad y pentesting. Y si necesitas escalar tu infraestructura con alta disponibilidad, redes y WAF gestionado, también podemos ayudarte con servicios cloud aws y azure.

Recapitulando, con autenticación por contraseñas de aplicación, restricción del endpoint a usuarios autenticados, uso de un encabezado secreto, reglas de firewall y desactivación de la REST API si no se utiliza, tu endpoint graphql quedará protegido frente a accesos no autorizados y ataques de fuerza bruta o enumeración, mientras tu frontend sigue comunicándose de manera segura y eficiente.

Recursos recomendados WPGraphQL Security Docs en sitio oficial, guía de WordPress Application Passwords en documentación de WordPress y OWASP API Security Top 10 en OWASP. Si quieres una revisión práctica y adaptada a tu caso, nuestro equipo puede auditar tu stack y ayudarte a implantar mejoras rápidas y medibles.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat