Cómo configurar la autenticación OAuth de WeChat para Captive Portals
Esta guía técnica explica cómo configurar la autenticación OAuth de WeChat para Captive Portals. Detalla los registros de plataforma requeridos, el flujo de OAuth 2.0, la selección de alcance y los mecanismos de aplicación de red necesarios para capturar datos de origen de visitantes chinos de forma segura.
Escuchar esta guía
Ver transcripción del podcast
- Resumen Ejecutivo
- Arquitectura Técnica
- Requisitos de Registro en la Plataforma
- Plataforma de Cuentas Oficiales de WeChat
- WeChat Open Platform
- Selección de ámbitos y recopilación de datos
- snsapi_base
- snsapi_userinfo
- Integración de la aplicación de red
- RADIUS Change of Authorization (CoA)
- MAC Address Bypass
- Consideraciones de seguridad y cumplimiento normativo
- Alineación con GDPR y PIPL
- Protección CSRF
- Validación de la URI de redirección

Resumen Ejecutivo
Cuando los visitantes chinos se conectan a su WiFi, presentar una página de bienvenida que solo ofrezca opciones de inicio de sesión con correo electrónico o Facebook crea una barrera de entrada inmediata. Con 13.800 millones de usuarios activos mensuales, configurar WeChat como proveedor de identidad elimina esta fricción. Esta guía demuestra cómo implementar la autenticación WeChat OAuth 2.0 para un Captive Portal, detallando los registros de plataforma necesarios, los flujos de OAuth y los mecanismos de aplicación de red requeridos para traducir un inicio de sesión exitoso en acceso a la red. Cubriremos la implementación técnica para hardware de nivel empresarial, junto con los requisitos de cumplimiento bajo GDPR y PIPL.
Arquitectura Técnica
El Captive Portal intercepta el tráfico HTTP de los dispositivos no autenticados y los redirige a una página de bienvenida alojada en un servidor de portal. Al integrar WeChat OAuth, se inserta un proveedor de identidad de terceros en este flujo.

Esta es la interacción paso a paso exacta:
- El visitante se conecta al SSID.
- El punto de acceso inalámbrico (AP) o controlador inalámbrico detecta la falta de una sesión autenticada y redirige el tráfico HTTP a la URL del Captive Portal.
- El visitante selecciona Inicio de sesión con WeChat.
- El servidor del portal redirige el navegador al endpoint de autorización de WeChat (
open.weixin.qq.com), pasando elAppID,redirect_uri,response_type=codeyscope. - WeChat gestiona la autenticación. Si el visitante está dentro del navegador de la aplicación WeChat utilizando el alcance
snsapi_base, esto ocurre de forma silenciosa. - WeChat redirige de nuevo a la
redirect_uridel portal con un código de autorización temporal. - El servidor del portal intercambia este código por un token de acceso llamando a
api.weixin.qq.com/sns/oauth2/access_token. - WeChat devuelve el
access_token,refresh_tokeny elopeniddel usuario.
Requisitos de Registro en la Plataforma
La implementación del inicio de sesión con WeChat requiere el registro en la plataforma de desarrollo correcta. WeChat opera dos plataformas independientes, y seleccionar la incorrecta provocará fallos en la integración.
Plataforma de Cuentas Oficiales de WeChat
Para los Captive Portals que se muestran dentro del navegador integrado de WeChat, se necesita una Service Account registrada en la WeChat Official Accounts Platform (mp.weixin.qq.com). Las Subscription Accounts carecen de los permisos de autorización de página web OAuth requeridos. Las Service Accounts admiten los ámbitos snsapi_base y snsapi_userinfo.
WeChat Open Platform
Para los Captive Portals a los que se accede desde navegadores móviles estándar fuera de WeChat (por ejemplo, Chrome en Android o Safari en iOS), se necesita una Website Application registrada en la Open Platform (open.weixin.qq.com). Esta utiliza el ámbito snsapi_login y presenta un código QR para que el usuario lo escanee con su aplicación WeChat.
La mayoría de las implementaciones empresariales requieren ambos registros para cubrir todas las vías de acceso.
Selección de ámbitos y recopilación de datos
El parámetro de ámbito determina qué datos devuelve WeChat al servidor de su portal. Esta decisión afecta tanto a la experiencia del usuario como al cumplimiento de la privacidad de los datos.

snsapi_base
Este ámbito devuelve únicamente el OpenID, el identificador único del usuario dentro de su Official Account. No requiere ninguna solicitud de autorización al usuario, lo que hace que la autenticación sea silenciosa. Esto es óptimo para los visitantes recurrentes de los que ya se dispone de un perfil, o para establecimientos que priorizan la ausencia de fricciones frente a la recopilación de nuevos datos.
snsapi_userinfo
Este ámbito devuelve el OpenID junto con el apodo de WeChat del usuario, la imagen de perfil, el género, la configuración de idioma y la ciudad. Requiere una página de autorización explícita, lo que introduce fricción. Utilice esto para el registro de visitantes por primera vez cuando sea necesario establecer un perfil, combinado con una capa de consentimiento que cumpla con el GDPR.
Integración de la aplicación de red
La adquisición de un token OAuth demuestra la identidad, pero no abre la red. Debe traducir la autenticación correcta en acceso a la red utilizando protocolos estándar.
RADIUS Change of Authorization (CoA)
Definido en IEEE 802.1X y RFC 3576, RADIUS CoA permite al servidor del portal enviar una solicitud al controlador de red tras un OAuth correcto. A continuación, el controlador traslada el dispositivo de una VLAN no autenticada a una VLAN de invitados. Este es el estándar para el hardware de nivel empresarial, incluidos Cisco Meraki, HPE Aruba, Ruckus y Juniper Mist.
MAC Address Bypass
Alternativamente, el servidor del portal registra la dirección MAC del dispositivo como un cliente autorizado, y el controlador permite el acceso. Aunque es más sencillo de implementar, es menos seguro ya que las direcciones MAC se pueden suplantar.
La tecnología de superposición en la nube de Purple automatiza esta transferencia, enviando las señales adecuadas al hardware subyacente (incluidos Ubiquiti UniFi, Cambium, Extreme y Fortinet) una vez que se completa el proceso de WeChat OAuth.
Consideraciones de seguridad y cumplimiento normativo
Alineación con GDPR y PIPL
Si ofrece servicios a visitantes europeos, el GDPR se aplica a los datos recopilados a través de WeChat OAuth. Si ofrece servicios a visitantes chinos, se aplica la Ley de Protección de Información Personal (PIPL) de China. Ambos marcos requieren que el tratamiento tenga una base jurídica, una limitación explícita de la finalidad y la minimización de datos. En comparación con el alcance snsapi_userinfo, el alcance snsapi_base es más fácil de alinear con los principios de minimización de datos.
Protección CSRF
El parámetro state en las solicitudes OAuth evita la falsificación de peticiones en sitios cruzados (CSRF). Debe generar un valor de estado aleatorio criptográficamente, almacenarlo en la sesión del usuario y validarlo cuando WeChat realice la redirección de vuelta.
Validación de la URI de redirección
WeChat valida la redirect_uri con respecto al dominio autorizado registrado en la plataforma. Si el servidor de su portal utiliza un subdominio o una ruta diferente, o utiliza HTTP en lugar de HTTPS, el flujo de OAuth fallará con el error 40029.
Para obtener más información sobre cómo proteger su red, consulte nuestra Guía completa de seguridad WiFi empresarial para 2026 .
Definiciones clave
snsapi_base
Un alcance de OAuth de WeChat que devuelve únicamente el OpenID del usuario sin mostrar una solicitud de consentimiento.
Se utiliza cuando los equipos de TI necesitan autenticar a los visitantes que regresan de forma silenciosa sin causar fricción en el inicio de sesión.
snsapi_userinfo
Un alcance de OAuth de WeChat que devuelve el OpenID junto con datos demográficos (apodo, género, ciudad) y requiere el consentimiento explícito del usuario.
Se utiliza durante el primer registro cuando los equipos de marketing necesitan crear un perfil de visitante.
OpenID
Un identificador único para un usuario específico dentro de una cuenta oficial de WeChat específica.
Se utiliza como clave principal en la base de datos del portal para realizar un seguimiento del comportamiento de los visitantes y las visitas recurrentes.
RADIUS CoA
Cambio de autorización (Change of Authorisation). Un mecanismo definido en RFC 3576 que permite a un servidor modificar el estado de autorización de una sesión activa.
Utilizado por el servidor del portal para indicarle al controlador inalámbrico que conceda acceso a la red tras una autenticación exitosa en WeChat.
PIPL
Ley de Protección de Información Personal (Personal Information Protection Law). La regulación integral de privacidad de datos de China.
Debe tenerse en cuenta junto con el GDPR al diseñar el flujo de consentimiento para los visitantes chinos que utilizan el inicio de sesión de WeChat.
AppID and AppSecret
Las credenciales proporcionadas por WeChat para identificar y autenticar su aplicación.
El AppSecret debe permanecer de forma segura en el servidor del portal y nunca exponerse en el código del lado del cliente.
State Parameter
Una cadena criptográficamente aleatoria que se pasa en la solicitud OAuth y se valida al retornar.
Esencial para prevenir ataques de falsificación de solicitud de sitio cruzado (CSRF) en el Captive Portal.
MAC Address Bypass
Un método para conceder acceso a la red autorizando la dirección de hardware del dispositivo en lugar de requerir autenticación 802.1X.
Una alternativa a RADIUS CoA para configuraciones de red más sencillas, aunque menos segura.
Ejemplos prácticos
Una marca de venta al por menor de lujo en Londres quiere ofrecer inicio de sesión con WeChat para compradores chinos. Quieren recopilar datos demográficos para entender a su base de clientes, pero les preocupa el cumplimiento del GDPR y las altas tasas de abandono en el portal.
El minorista debe registrar una cuenta de servicio (Service Account) en la plataforma de cuentas oficiales de WeChat. Debe configurar el portal para utilizar el alcance snsapi_userinfo para conexiones por primera vez con el fin de recopilar datos demográficos (apodo, género, ciudad). Para garantizar el cumplimiento del GDPR, la página del portal debe mostrar un consentimiento (opt-in) claro y consciente antes del redireccionamiento a WeChat, explicando exactamente qué datos se recopilan y por qué. Para los compradores que regresan, el portal debe detectar la dirección MAC y usar snsapi_base para una autenticación silenciosa, minimizando la fricción.
Un estadio despliega una nueva red WiFi utilizando controladores HPE Aruba. Han configurado WeChat OAuth y el portal recibe correctamente el token de acceso, pero el dispositivo del visitante permanece en la página del Captive Portal y no puede acceder a internet.
La integración carece de un mecanismo de aplicación de red. El servidor del portal ha verificado la identidad del usuario con WeChat, pero no ha dado instrucciones al controlador HPE Aruba para permitir el acceso. El servidor del portal debe configurarse para enviar un mensaje RADIUS Change of Authorisation (CoA) al controlador, indicándole que cambie la dirección MAC del usuario del rol de preautenticación al rol de invitado autenticado.
Preguntas de práctica
Q1. Estás desplegando un Captive Portal en una cadena de tiendas. Las pruebas muestran que los usuarios que abren el portal en Safari en iOS reciben un error al seleccionar el inicio de sesión con WeChat, pero los usuarios que abren el portal desde un enlace de mensaje de WeChat se autentican correctamente. ¿Cuál es la causa más probable?
Sugerencia: Considera la diferencia entre el navegador interno de WeChat y los navegadores móviles estándar.
Ver respuesta modelo
Es probable que la implementación dependa únicamente de una Cuenta de Servicio registrada en la Official Accounts Platform, que solo admite OAuth dentro del navegador interno de WeChat. Para dar soporte a Safari en iOS, también debes registrar una Aplicación Web en la WeChat Open Platform e implementar la detección del agente de usuario para enrutar a los usuarios de Safari al flujo de código QR.
Q2. Los registros del servidor de tu portal muestran errores frecuentes 40029 "invalid code" devueltos por la API de WeChat durante el intercambio de tokens de acceso. ¿Qué configuración deberías comprobar primero?
Sugerencia: Piensa en cómo WeChat valida el origen de la solicitud de autenticación.
Ver respuesta modelo
Debes verificar la configuración de redirect_uri. WeChat valida estrictamente la URI de redirección contra el dominio autorizado registrado en la consola de desarrollador. Si el portal utiliza un subdominio diferente, o si prescinde de HTTPS, WeChat rechazará el intercambio de códigos.
Q3. El operador de un recinto quiere recopilar datos de los visitantes pero insiste en que el proceso de inicio de sesión no tenga ninguna fricción. Solicita que configures el inicio de sesión de WeChat para recopilar el apodo y la ciudad del visitante sin mostrar un aviso de consentimiento. ¿Cómo respondes?
Sugerencia: Revisa las capacidades de los diferentes alcances de OAuth.
Ver respuesta modelo
Debes informar al operador de que esto es técnicamente imposible. La recopilación de datos demográficos como el apodo y la ciudad requiere el alcance snsapi_userinfo, que activa obligatoriamente un aviso de consentimiento de WeChat. Para lograr cero fricción, debes usar snsapi_base, que funciona de forma silenciosa pero solo devuelve el OpenID.
Continúe leyendo esta serie
Captive Portal para Ruijie: configúrelo con Purple guest WiFi
Cómo la solución cloud guest WiFi de Purple se integra con los puntos de acceso Ruijie RG Series mediante autenticación web y RADIUS, configurada desde la línea de comandos, y dónde encontrar los pasos exactos de configuración.
Diseño de Captive Portals B2B: Captura de nombres registrados y datos de la empresa
Esta guía proporciona a los directores de TI y operadores de recintos un marco técnico independiente del proveedor para diseñar Captive Portals B2B. Detalla cómo estructurar los campos de registro para capturar el nombre registrado y los datos de la empresa, garantizando altas tasas de finalización a la vez que se mantiene el cumplimiento del GDPR y se genera inteligencia a nivel de cuenta.
Arquitectura de Captive Portal: seguridad, redirección y mejores prácticas
Una referencia técnica definitiva sobre la arquitectura de Captive Portal empresarial. Esta guía analiza el aislamiento de red, la redirección de DNS, la autenticación RADIUS y el cumplimiento de seguridad para líderes de TI que implementan redes WiFi de invitados seguras y ricas en datos.