Saltar al contenido principal

Cómo configurar la autenticación WeChat OAuth para Captive Portals

Esta guía técnica explica cómo configurar la autenticación WeChat OAuth para Captive Portals. Detalla los registros de plataforma requeridos, el flujo de OAuth 2.0, la selección de alcance (scope) y los mecanismos de aplicación de red necesarios para capturar de forma segura datos de primera fuente de los visitantes chinos.

📖 4 min de lectura📝 815 palabras🔧 2 ejemplos resueltos3 preguntas de práctica📚 8 definiciones clave

Escucha esta guía

Ver transcripción del podcast
CÓMO CONFIGURAR LA AUTENTICACIÓN OAUTH DE WECHAT PARA CAPTIVE PORTALS Una sesión técnica de Purple - Aproximadamente 10 minutos --- INTRODUCCIÓN Y CONTEXTO (aproximadamente 1 minuto) Bienvenido. Si eres responsable del WiFi para invitados en un hotel, cadena de tiendas, estadio o centro de conferencias que atiende a visitantes chinos, esta sesión es para ti. WeChat tiene 1,380 millones de usuarios activos mensuales, según los datos de Tencent de 2024. La gran mayoría se encuentra en China, pero la plataforma también tiene una presencia internacional significativa: cuatro millones de usuarios en los Estados Unidos, 12 millones en Malasia y un número creciente en el sudeste asiático, Europa y Medio Oriente. Cuando un invitado chino se conecta a tu WiFi y ve una página de inicio de sesión que solo ofrece correo electrónico, Facebook o un código de cupón, se enfrenta a una fricción inmediata. Es posible que no tengan una dirección de correo electrónico local configurada en ese dispositivo. Lo que sí tienen, casi con toda seguridad, es WeChat. Por lo tanto, la pregunta no es si debes ofrecer el inicio de sesión con WeChat, sino cómo configurarlo de manera correcta, segura y de forma que genere datos de primera mano que realmente puedas utilizar. Eso es lo que vamos a cubrir hoy. Analizaremos el flujo de OAuth 2.0, los dos registros de plataforma que necesitas, la decisión de alcance (scope) que determina qué datos recopilas, el mecanismo de aplicación del lado de la red y las consideraciones de cumplimiento normativo que importan en 2026. --- ANÁLISIS TÉCNICO DETALLADO (aproximadamente 5 minutos) Comencemos con la arquitectura. Un Captive Portal intercepta el tráfico HTTP de un dispositivo no autenticado y lo redirige a una página de inicio de sesión. Esa página de inicio de sesión se aloja en un servidor de portal, ya sea de forma local o en la nube. Al agregar el OAuth de WeChat, estás insertando un proveedor de identidad de terceros en ese flujo. Esta es la secuencia. El invitado se conecta a tu SSID. El punto de acceso o controlador inalámbrico detecta que el dispositivo no tiene una sesión autenticada y redirige todo el tráfico HTTP a la URL de tu Captive Portal. La página del portal se carga y presenta las opciones de inicio de sesión, incluyendo WeChat. El invitado toca el inicio de sesión de WeChat. El servidor de tu portal redirige el navegador al endpoint de autorización de WeChat en open.weixin.qq.com, enviando tu AppID, la URI de redirección, el tipo de respuesta (response type) de código y el alcance (scope). WeChat gestiona la autenticación por completo en sus propios servidores. Si el invitado ya ha iniciado sesión en WeChat en su navegador, verá una pantalla de consentimiento. Si está utilizando el navegador integrado de la aplicación WeChat, la experiencia puede ser silenciosa con el alcance snsapi_base, sin ninguna solicitud de consentimiento. Luego, WeChat redirige de vuelta a la URI de redirección de tu portal con un código de autorización temporal. El servidor de tu portal intercambia ese código por un token de acceso llamando a api.weixin.qq.com/sns/oauth2/access_token, enviando tu AppID, AppSecret, el código y el tipo de concesión (grant type) de authorization_code. WeChat devuelve un token de acceso, un token de actualización, el OpenID del usuario y el alcance otorgado. Si solicitaste el alcance snsapi_userinfo, puedes realizar una segunda llamada a la API para recuperar el apodo, avatar, género y ciudad del usuario. Ahora, los dos registros de plataforma. Aquí es donde la mayoría de las implementaciones fallan. WeChat tiene dos plataformas de desarrollo independientes. La WeChat Open Platform en open.weixin.qq.com gestiona aplicaciones web y aplicaciones móviles. La WeChat Official Accounts Platform en mp.weixin.qq.com gestiona cuentas públicas, que es lo que la mayoría de los establecimientos realmente necesitan. Para un Captive Portal que atiende a los usuarios dentro del navegador integrado de WeChat, se necesita una Cuenta de Servicio (Service Account) en la Official Accounts Platform. Una Cuenta de Suscripción (Subscription Account) no funcionará, ya que no tiene permisos de autorización de páginas web OAuth. Una Cuenta de Servicio sí los tiene y es compatible con los alcances (scopes) snsapi_base y snsapi_userinfo. Para un Captive Portal al que se accede desde un navegador móvil estándar fuera de WeChat (Chrome en Android, Safari en iOS), se necesita una Aplicación Web registrada en la Open Platform. Esta utiliza el alcance snsapi_login y presenta un código QR que el usuario escanea con su aplicación de WeChat. En la práctica, la mayoría de las implementaciones en establecimientos utilizan ambas. Un huésped en el WiFi de un hotel podría abrir el portal en Chrome, ver un código QR, escanearlo con WeChat y autenticarse. O bien, podría seguir un enlace dentro de la propia aplicación de WeChat, llegar al navegador integrado y autenticarse de forma silenciosa con snsapi_base. Hablemos de la selección de alcances, porque este es un punto de decisión real. snsapi_base devuelve únicamente el OpenID: un identificador único para ese usuario dentro de su Cuenta Oficial. No requiere ninguna solicitud de consentimiento del usuario. La autenticación es invisible para el usuario. Esto es ideal para huéspedes recurrentes de los que ya tiene un perfil, o para establecimientos donde se busca cero fricción a costa de no obtener nuevos datos. snsapi_userinfo devuelve el OpenID más el apodo de WeChat del usuario, su foto de perfil, género, configuración de idioma y ciudad. Requiere una pantalla de consentimiento explícita. El usuario ve un mensaje preguntando si permite que su Cuenta Oficial acceda a su información. La mayoría de los usuarios acepta, pero existe fricción. La elección correcta depende de su caso de uso. Para el registro de un huésped por primera vez en el que desea crear un perfil, utilice snsapi_userinfo y combínelo con una capa de consentimiento que cumpla con el GDPR en la página de su portal. Para un huésped recurrente que ya ha dado su consentimiento y del cual ya tiene su perfil, utilice snsapi_base para una autenticación silenciosa. Ahora, el lado de la aplicación de red. Obtener un token OAuth demuestra la identidad, pero no abre la red automáticamente. Necesita un mecanismo para traducir una autenticación exitosa en acceso a la red. Los dos enfoques estándar son RADIUS Change of Authorisation, definido en RFC 3576, y MAC address bypass. Con RADIUS CoA, su servidor de portal envía una solicitud de CoA al controlador de red después de un OAuth exitoso, y el controlador mueve el dispositivo de la VLAN no autenticada a la VLAN de invitados. Esto funciona con Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist y la mayoría de los controladores de nivel empresarial. Con MAC bypass, el servidor del portal registra la dirección MAC del dispositivo como un cliente autorizado y el controlador lo permite. MAC bypass es más sencillo de implementar pero menos seguro, porque las direcciones MAC se pueden falsificar. La plataforma de Guest WiFi de Purple maneja ambos mecanismos. Después de que se completa el OAuth de WeChat, la capa en la nube de Purple envía la señal adecuada al hardware subyacente, ya sea Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme o Fortinet. El operador del establecimiento no necesita gestionar esa traducción de forma manual. --- RECOMENDACIONES DE IMPLEMENTACIÓN Y ERRORES COMUNES (aproximadamente 2 minutos) Permítame compartirle las cinco razones por las cuales fallan las implementaciones de Captive Portal con OAuth de WeChat. Primero: la discrepancia en la URI de redireccionamiento. WeChat valida la URI de redireccionamiento con el dominio autorizado que registró en la plataforma. Si su servidor de portal utiliza un subdominio diferente, una ruta distinta o HTTP en lugar de HTTPS, el flujo de OAuth fallará con el error 40029 (código no válido). Registre cada variante de dominio que utilice, incluidos los entornos de prueba. Segundo: el AppSecret en el lado del cliente. Su AppSecret nunca debe aparecer en el JavaScript del lado del cliente ni en el binario de una aplicación móvil. Pertenece a su servidor. Si queda expuesto, cualquiera puede suplantar su aplicación y llamar a las API de WeChat en su nombre. Tercero: la falta de protección CSRF. El parámetro de estado en la solicitud de OAuth existe específicamente para evitar la falsificación de solicitudes entre sitios. Genere un valor de estado aleatorio criptográficamente, almacénelo en la sesión del usuario y valídelo cuando WeChat redirija de vuelta. Si omite esto, tendrá una vulnerabilidad real. Cuarto: la brecha de detección del navegador integrado en la aplicación. El navegador integrado de WeChat establece una cadena de agente de usuario específica que contiene "MicroMessenger". Si su portal no detecta esto y ofrece el flujo de OAuth correcto (flujo de Cuenta Oficial para el navegador integrado, flujo de código QR de Open Platform para navegadores estándar), los usuarios tendrán una experiencia rota o un error. Quinto: la alineación con GDPR y PIPL. Si atiende a visitantes europeos, el GDPR se aplica a los datos que recopila a través del OAuth de WeChat. Si atiende a visitantes chinos, la Ley de Protección de Información Personal de China (PIPL) se aplica a cómo procesa sus datos. Ambos requieren una base legal para el procesamiento, una limitación clara de la finalidad y la minimización de datos. snsapi_base es más fácil de justificar bajo los principios de minimización de datos que snsapi_userinfo. Independientemente de lo que recopile, documente su base legal y su período de retención. --- PREGUNTAS Y RESPUESTAS RÁPIDAS (aproximadamente 1 minuto) Question: Can I use WeChat login on a portal that also offers email and SMS login? Yes. Most enterprise portal platforms, including Purple, support multiple authentication methods on the same portal page. WeChat appears as one option alongside others. Question: Does WeChat OAuth work on iOS? Yes, but with a nuance. Apple's App Tracking Transparency framework does not affect server-side OAuth flows. WeChat login in Safari on iOS works via the QR code flow or redirect flow. The WeChat app itself handles the authentication. Question: What happens if WeChat's API is unavailable? Your portal should implement a fallback. If the WeChat API call times out or returns an error, redirect the user to an alternative login method. Do not leave them with a blank screen. Question: Can I use the OpenID as a persistent customer identifier? Within your Official Account, yes. The OpenID is stable for a given user and a given Official Account. If you have multiple Official Accounts, the same user will have different OpenIDs across them. For cross-account identity resolution, WeChat provides a UnionID, which requires your accounts to be linked on the Open Platform. --- SUMMARY AND NEXT STEPS (approximately 1 minute) To summarise. WeChat OAuth authentication for captive portals is a two-platform registration exercise, a scope decision, a network enforcement integration, and a compliance review. Get those four things right and you have a login method that serves over a billion potential visitors with zero password friction. The practical next steps are these. First, determine whether your visitors encounter the portal inside the WeChat in-app browser or in a standard mobile browser - that determines which platform registration you need. Second, decide on scope - snsapi_base for returning guests, snsapi_userinfo for first-time registration with consent. Third, confirm your network hardware supports RADIUS CoA or configure MAC bypass as an alternative. Fourth, review your privacy notice and consent flow against GDPR and PIPL requirements. Fifth, test the redirect URI, the state parameter validation, and the in-app browser detection before you go live. If you want to see how Purple handles WeChat OAuth as part of a broader Guest WiFi and analytics platform - across 80,000 venues and 440 million logins in 2024 - visit purple.ai or speak to your account team. Thanks for listening. --- END OF SCRIPT

header_image.png

执行摘要

当中国访客连接到您的 WiFi 时,如果登录页面仅提供电子邮件或 Facebook 登录,会立即产生使用阻碍。微信拥有 13.8 亿月活跃用户,将其配置为身份提供商可以消除这一障碍。本指南将阐述如何为 Captive Portal 实现微信 OAuth 2.0 认证,详细介绍必要的平台注册、OAuth 流程以及将成功登录转化为网络访问所需的网络强制执行机制。我们将涵盖企业级硬件的技术实现,以及 GDPR 和《个人信息保护法》(PIPL)下的合规要求。

技术架构

Captive Portal 会拦截来自未认证设备的 HTTP 流量,并将其重定向到托管在门户服务器上的登录页面。当您集成微信 OAuth 时,即是在此流程中插入了一个第三方身份提供商。

architecture_overview.png

具体交互步骤如下:

  1. 访客连接到 SSID。
  2. 无线接入点(AP)或无线控制器检测到缺乏已认证的会话,并将 HTTP 流量重定向到 Captive Portal URL。
  3. 访客选择微信登录。
  4. 门户服务器将浏览器重定向到微信的授权端点(open.weixin.qq.com),并传递 AppIDredirect_uriresponse_type=codescope
  5. 微信处理身份验证。如果访客在微信内置浏览器中使用 snsapi_base 作用域,此过程将静默进行。
  6. 微信携带临时授权码重定向回门户的 redirect_uri
  7. 门户服务器通过调用 api.weixin.qq.com/sns/oauth2/access_token,用该授权码换取访问令牌。
  8. 微信返回 access_tokenrefresh_token 以及用户的 openid

平台注册要求

实现微信登录需要在正确的开发者平台上进行注册。微信运营着两个不同的平台,选择错误的平台会导致集成失败。

微信公众平台

对于在微信内置浏览器中为访客提供服务的 Captive Portal,您需要在微信公众平台(mp.weixin.qq.com)上注册一个服务号。订阅号缺少必要的 OAuth 网页授权权限。服务号同时支持 snsapi_basesnsapi_userinfo 作用域。

微信开放平台

对于从微信外部的标准移动浏览器(例如 Android 上的 Chrome 或 iOS 上的 Safari)访问的 Captive Portal,您需要一个在开放平台(open.weixin.qq.com)注册的网站应用。这使用 snsapi_login 作用域,并呈现一个供用户使用其微信应用扫描的二维码。

大多数企业部署都需要进行这两种注册,以覆盖所有访问方式。

作用域选择与数据收集

作用域参数决定了微信返回给您门户服务器的数据。这一决定会同时影响用户摩擦和数据隐私合规性。

scope_comparison_chart.png

snsapi_base

此作用域仅返回 OpenID,即您公众号内用户的唯一标识符。它不需要用户授权提示,从而使身份验证对用户无感。这对于您已拥有其个人资料的回访访客,或者对于将零摩擦置于新数据收集之上的场所来说是最佳选择。

snsapi_userinfo

此作用域返回 OpenID 以及用户的微信昵称、头像、性别、语言设置和城市。它需要一个明确的授权页面,从而引入了摩擦。在需要建立个人资料的首次访客注册中,请使用此作用域,并配合符合 GDPR 的授权层。

网络强制执行集成

获取 OAuth 令牌可以证明身份,但它并不能打开网络。您必须使用标准协议将成功的身份验证转化为网络访问。

RADIUS 授权变更 (CoA)

在 IEEE 802.1X 和 RFC 3576 中定义的 RADIUS CoA 允许门户服务器在 OAuth 成功后向网络控制器发送请求。然后,控制器将设备从未经身份验证的 VLAN 移动到访客 VLAN。这是包括 Cisco Meraki、HPE Aruba、Ruckus 和 Juniper Mist 在内的企业级硬件的标准配置。

MAC 地址旁路

或者,门户服务器将设备的 MAC 地址注册为已授权客户端,然后控制器允许其访问。虽然实现起来更简单,但由于 MAC 地址可以被伪造,因此安全性较低。

Purple 的云覆盖技术可自动完成此转换,在微信 OAuth 完成后向底层硬件(包括 Ubiquiti UniFi、Cambium、Extreme 和 Fortinet)发送相应的信号。

合规与安全考量

GDPR 与 PIPL 对齐

如果您为欧洲访客提供服务,GDPR 适用于通过微信 OAuth 收集的数据。如果您为中国访客提供服务,则适用中国《个人信息保护法》(PIPL)。这两个框架都要求处理具有合法基础、明确的目的限制和数据最小化。相比 snsapi_userinfosnsapi_base 作用域更容易符合数据最小化原则。

CSRF 防护

OAuth 请求中的 state 参数可防止跨站请求伪造。您必须生成一个加密随机的 state 值,将其存储在用户会话中,并在微信重定向返回时对其进行验证。

重定向 URI 验证

微信会根据在平台上注册的授权域名验证 redirect_uri。如果您的门户服务器使用不同的子域名、路径或使用 HTTP 代替 HTTPS,则 OAuth 流程将失败并报错 40029。

有关保护网络的更多信息,请参阅我们的 Enterprise WiFi Security: A Complete Guide for 2026

Definiciones clave

snsapi_base

Un alcance de WeChat OAuth 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 recurrentes de forma silenciosa sin causar fricción en el inicio de sesión.

snsapi_userinfo

Un alcance de WeChat OAuth 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 registro por primera vez 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 la clave principal en la base de datos del portal para rastrear el 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.

Se utiliza por el servidor del portal para indicar al controlador inalámbrico que otorgue acceso a la red después de una autenticación exitosa de 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 considerarse 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 en sitios cruzados (CSRF) en el Captive Portal.

MAC Address Bypass

Un método para otorgar acceso a la red mediante la autorización de 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 resueltos

Una marca de retail de lujo en Londres desea ofrecer inicio de sesión con WeChat para los compradores chinos. Quieren recopilar datos demográficos para comprender a su base de clientes, pero les preocupa el cumplimiento de la GDPR y las altas tasas de abandono en el portal.

El minorista debe registrar una Cuenta de Servicio en la Plataforma de Cuentas Oficiales de WeChat. Deben configurar el portal para usar el alcance snsapi_userinfo en las conexiones de primera vez para recopilar datos demográficos (apodo, género, ciudad). Para garantizar el cumplimiento de la GDPR, la página del portal debe mostrar un consentimiento explícito y claro de opción de inclusión (opt-in) antes del redireccionamiento de 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.

Comentario del examinador: Este enfoque equilibra la recopilación de datos con la experiencia del usuario. Al limitar el flujo de alta fricción `snsapi_userinfo` a la primera visita y usar `snsapi_base` posteriormente, el minorista maximiza la conversión mientras cumple con los principios de minimización de datos.

Un estadio despliega una nueva red WiFi utilizando controladores HPE Aruba. Han configurado WeChat OAuth y el portal recibe con éxito 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 instruido al controlador HPE Aruba para otorgar el acceso. El servidor del portal debe configurarse para enviar un mensaje RADIUS Change of Authorisation (CoA) al controlador, indicándole que realice la transición de la dirección MAC del usuario del rol de preautenticación al rol de invitado autenticado.

Comentario del examinador: Esto resalta la distinción entre la verificación de identidad y el control de acceso a la red. Las redes empresariales requieren un protocolo como RADIUS CoA para cerrar la brecha entre la aplicación web (portal) y la infraestructura de red.

Preguntas de práctica

Q1. Estás implementando 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 de WeChat, pero los usuarios que abren el portal desde un enlace de mensaje de WeChat se autentican correctamente. ¿Cuál es la causa 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 admitir Safari en iOS, también debes registrar una Website Application en la WeChat Open Platform e implementar la detección de user agent para redirigir 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 verificar 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 redireccionamiento con el dominio autorizado registrado en la consola de desarrollador. Si el portal utiliza un subdominio diferente, o si pierde la conexión HTTPS, WeChat rechazará el intercambio de códigos.

Q3. El operador de un establecimiento desea recopilar datos de los visitantes pero insiste en que no haya fricción durante el proceso de inicio de sesión. Te solicita configurar 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 (scopes) de OAuth.

Ver respuesta modelo

Debes informar al operador que esto es técnicamente imposible. Recopilar datos demográficos como el apodo y la ciudad requiere el alcance snsapi_userinfo, el cual 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

Diseño de Captive Portals B2B: Recopilación 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 neutral 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 al tiempo que se mantiene el cumplimiento de GDPR y se crea inteligencia a nivel de cuenta.

Leer la guía →

Captive Portal Architecture: Security, Redirection, and Best Practices

Una referencia técnica definitiva sobre la arquitectura de Captive Portal empresarial. Esta guía detalla el aislamiento de red, la redirección de DNS, la autenticación RADIUS y el cumplimiento de seguridad para los líderes de TI que implementan redes WiFi de invitados seguras y enriquecidas con datos.

Leer la guía →

Optimización de Captive Portals B2B: Captura de nombres de empresas y datos profesionales

Esta guía explica cómo los directores de TI, arquitectos de red y directores de operaciones de recintos pueden configurar Captive Portals B2B para capturar datos profesionales (nombres de empresas, puestos de trabajo y direcciones de correo electrónico empresariales) al momento de iniciar sesión en el WiFi. Abarca toda la arquitectura técnica, desde la aislación de VLAN y la autenticación RADIUS hasta la integración de CRM con Salesforce y HubSpot, con cumplimiento integrado de GDPR y CCPA. Los recintos que implementan esto correctamente transforman su red WiFi de invitados en un motor de datos de origen y en un sistema automatizado de generación de clientes potenciales.

Leer la guía →