So konfigurieren Sie die WeChat OAuth-Authentifizierung für Captive Portals
Dieser technische Leitfaden erklärt, wie Sie die WeChat OAuth-Authentifizierung für Captive Portals konfigurieren. Er beschreibt die erforderlichen Plattform-Registrierungen, den OAuth 2.0-Ablauf, die Auswahl des Scopes und die Mechanismen zur Netzwerkerzwingung, die erforderlich sind, um First-Party-Daten von chinesischen Besuchern sicher zu erfassen.
Diesen Leitfaden anhören
Podcast-Transkript ansehen
- Management-Zusammenfassung
- Technische Architektur
- Anforderungen an die Plattformregistrierung
- WeChat Official Accounts-Plattform
- WeChat Open Platform
- Bereichsauswahl und Datenerfassung
- snsapi_base
- snsapi_userinfo
- Integration der Netzwerk-Erzwingung
- RADIUS Change of Authorization (CoA)
- MAC-Adress-Bypass
- Compliance- und Sicherheitsüberlegungen
- GDPR- und PIPL-Abstimmung
- CSRF-Schutz
- Validierung der Redirect-URI

Management-Zusammenfassung
Wenn chinesische Besucher eine Verbindung zu Ihrem WiFi herstellen, stellt eine Begrüßungsseite mit Optionen zur Anmeldung nur über E-Mail oder Facebook eine unmittelbare Einstiegshürde dar. Mit 13,8 Milliarden monatlich aktiven Nutzern beseitigt die Konfiguration von WeChat als Identitätsanbieter diese Reibungspunkte. Dieses Handbuch zeigt, wie Sie die WeChat OAuth 2.0-Authentifizierung für Captive Portals implementieren, und beschreibt detailliert die erforderlichen Plattformregistrierungen, OAuth-Flows sowie die Mechanismen zur Netzwerkerzwingung, die erforderlich sind, um eine erfolgreiche Anmeldung in einen Netzwerkzugriff umzuwandeln. Wir behandeln die technische Implementierung für Enterprise-Hardware sowie die Compliance-Anforderungen unter GDPR und PIPL.
Technische Architektur
Das Captive Portal fängt den HTTP-Verkehr von nicht authentifizierten Geräten ab und leitet sie auf eine Begrüßungsseite weiter, die auf einem Portalserver gehostet wird. Wenn Sie die WeChat-OAuth-Integration implementieren, fügen Sie einen Drittanbieter-Identitätsanbieter in diesen Ablauf ein.

Hier ist der genaue Schritt-für-Schritt-Ablauf:
- Der Besucher verbindet sich mit der SSID.
- Der Wireless Access Point (AP) oder Wireless Controller erkennt das Fehlen einer authentifizierten Sitzung und leitet den HTTP-Verkehr an die Captive Portal-URL weiter.
- Der Besucher wählt den WeChat-Login.
- Der Portalserver leitet den Browser zum Autorisierungs-Endpunkt von WeChat (
open.weixin.qq.com) weiter und übergibt dieAppID, dieredirect_uri, denresponse_type=codeund denscope. - WeChat übernimmt die Authentifizierung. Wenn sich der Besucher im In-App-Browser von WeChat befindet und den Scope
snsapi_baseverwendet, geschieht dies geräuschlos im Hintergrund. - WeChat leitet mit einem temporären Autorisierungscode an die
redirect_urides Portals zurück. - Der Portalserver tauscht diesen Code durch Aufruf von
api.weixin.qq.com/sns/oauth2/access_tokengegen ein Access Token aus. - WeChat gibt das
access_token, dasrefresh_tokenund dieopeniddes Benutzers zurück.
Anforderungen an die Plattformregistrierung
Die Implementierung des WeChat-Logins erfordert die Registrierung auf der richtigen Entwicklerplattform. WeChat betreibt zwei separate Plattformen. Die Auswahl der falschen Plattform führt zum Fehlschlagen der Integration.
WeChat Official Accounts-Plattform
Für Captive Portals, die innerhalb des WeChat-In-App-Browsers bereitgestellt werden, benötigen Sie ein Service-Konto, das auf der WeChat Official Accounts Platform (mp.weixin.qq.com) registriert ist. Abonnement-Konten verfügen nicht über die erforderlichen OAuth-Webseiten-Autorisierungsberechtigungen. Service-Konten unterstützen sowohl den snsapi_base- als auch den snsapi_userinfo-Bereich.
WeChat Open Platform
Für Captive Portals, auf die über standardmäßige mobile Browser außerhalb von WeChat zugegriffen wird (z. B. Chrome auf Android oder Safari auf iOS), benötigen Sie eine Website-Anwendung, die auf der Open Platform (open.weixin.qq.com) registriert ist. Diese verwendet den snsapi_login-Bereich und zeigt einen QR-Code an, den der Benutzer mit seiner WeChat-App scannen muss.
Die meisten Enterprise-Bereitstellungen erfordern beide Registrierungen, um alle Zugriffspfade abzudecken.
Bereichsauswahl und Datenerfassung
Der Parameter "Scope" bestimmt, welche Daten WeChat an Ihren Portal-Server zurückgibt. Diese Entscheidung wirkt sich sowohl auf die Benutzererfahrung als auch auf die Einhaltung des Datenschutzes aus.

snsapi_base
Dieser Bereich gibt nur die OpenID zurück, den eindeutigen Identifikator für den Benutzer innerhalb Ihres Official Accounts. Er erfordert keine Aufforderung zur Benutzerautorisierung, sodass die Authentifizierung im Hintergrund abläuft. Dies ist optimal für wiederkehrende Besucher, für die Sie bereits ein Profil haben, oder für Standorte, die Reibungslosigkeit über die Erfassung neuer Daten stellen.
snsapi_userinfo
Dieser Bereich gibt die OpenID zusammen mit dem WeChat-Spitznamen des Benutzers, dem Profilbild, dem Geschlecht, den Spracheinstellungen und der Stadt zurück. Er erfordert eine explizite Autorisierungsseite, was eine zusätzliche Interaktion erfordert. Verwenden Sie dies für die Registrierung von Erstbesuchern, wenn die Erstellung eines Profils erforderlich ist, kombiniert mit einer GDPR-konformen Einwilligungsebene.
Integration der Netzwerk-Erzwingung
Der Erhalt eines OAuth-Tokens beweist die Identität, öffnet aber nicht das Netzwerk. Sie müssen eine erfolgreiche Authentifizierung mithilfe von Standardprotokollen in Netzwerkzugriff umsetzen.
RADIUS Change of Authorization (CoA)
Definiert in IEEE 802.1X und RFC 3576, ermöglicht RADIUS CoA dem Portal-Server, nach erfolgreichem OAuth eine Anfrage an den Netzwerk-Controller zu senden. Der Controller verschiebt das Gerät dann von einem nicht authentifizierten VLAN in ein Gäste-VLAN. Dies ist der Standard für Enterprise-Hardware, einschließlich Cisco Meraki, HPE Aruba, Ruckus und Juniper Mist.
MAC-Adress-Bypass
Alternativ registriert der Portal-Server die MAC-Adresse des Geräts als autorisierten Client, und der Controller gestattet den Zugriff. Dies ist zwar einfacher zu implementieren, aber weniger sicher, da MAC-Adressen gefälscht werden können.
Die Cloud-Overlay-Technologie von Purple automatisiert diese Übergabe und sendet die entsprechenden Signale an die zugrunde liegende Hardware (einschließlich Ubiquiti UniFi, Cambium, Extreme und Fortinet), sobald das WeChat-OAuth abgeschlossen ist.
Compliance- und Sicherheitsüberlegungen
GDPR- und PIPL-Abstimmung
Wenn Sie europäische Besucher bedienen, gilt die GDPR für Daten, die über WeChat-OAuth erhoben werden. Wenn Sie chinesische Besucher bedienen, gilt das chinesische Gesetz zum Schutz persönlicher Informationen (PIPL). Beide Rahmenbedingungen erfordern eine rechtmäßige Grundlage für die Verarbeitung, eine ausdrückliche Zweckbindung und Datenminimierung. Im Vergleich zum snsapi_userinfo-Bereich lässt sich der snsapi_base-Bereich einfacher mit den Grundsätzen der Datenminimierung vereinbaren.
CSRF-Schutz
Der Parameter state in OAuth-Anfragen verhindert Cross-Site Request Forgery. Sie müssen einen kryptografisch zufälligen Zustandswert generieren, diesen in der Benutzersitzung speichern und validieren, wenn WeChat zurückleitet.
Validierung der Redirect-URI
WeChat validiert die redirect_uri mit der auf der Plattform registrierten autorisierten Domain. Wenn Ihr Portal-Server eine andere Subdomain oder einen anderen Pfad verwendet oder HTTP anstelle von HTTPS nutzt, schlägt der OAuth-Ablauf mit dem Fehler 40029 fehl.
Für weitere Informationen zur Sicherung Ihres Netzwerks lesen Sie unseren Leitfaden Enterprise WiFi Security: Ein vollständiger Leitfaden für 2026 .
Schlüsseldefinitionen
snsapi_base
Ein WeChat OAuth-Scope, der nur die OpenID des Benutzers zurückgibt, ohne eine Einverständniserklärung anzuzeigen.
Wird verwendet, wenn IT-Teams wiederkehrende Besucher stillschweigend authentifizieren müssen, ohne Reibungsverluste beim Login zu verursachen.
snsapi_userinfo
Ein WeChat OAuth-Scope, der die OpenID zusammen mit demografischen Daten (Spitzname, Geschlecht, Stadt) zurückgibt und die ausdrückliche Zustimmung des Benutzers erfordert.
Wird bei der Erstregistrierung verwendet, wenn Marketingteams ein Besucherprofil erstellen müssen.
OpenID
Eine eindeutige Kennung für einen bestimmten Benutzer innerhalb eines bestimmten WeChat Official Account.
Wird als Primärschlüssel in der Portal-Datenbank verwendet, um das Besucherverhalten und wiederkehrende Besuche zu verfolgen.
RADIUS CoA
Change of Authorisation. Ein in RFC 3576 definierter Mechanismus, der es einem Server ermöglicht, den Autorisierungsstatus einer aktiven Sitzung zu ändern.
Wird vom Portalserver verwendet, um dem Wireless-Controller mitzuteilen, dass er nach erfolgreicher WeChat-Authentifizierung den Netzwerkzugriff gewähren soll.
PIPL
Personal Information Protection Law. Chinas umfassende Datenschutzverordnung.
Muss neben der GDPR berücksichtigt werden, wenn der Einwilligungsablauf für chinesische Besucher, die den WeChat-Login nutzen, gestaltet wird.
AppID and AppSecret
Die von WeChat bereitgestellten Anmeldedaten zur Identifizierung und Authentifizierung Ihrer Anwendung.
Das AppSecret muss sicher auf dem Portalserver verbleiben und darf niemals im clientseitigen Code offengelegt werden.
State Parameter
Eine kryptografisch zufällige Zeichenfolge, die im OAuth-Request übergeben und bei der Rückkehr validiert wird.
Unerlässlich zur Verhinderung von Cross-Site Request Forgery (CSRF)-Angriffen auf das Captive Portal.
MAC Address Bypass
Eine Methode zur Gewährung des Netzwerkzugriffs durch Autorisierung der Hardwareadresse des Geräts, anstatt eine 802.1X-Authentifizierung zu erfordern.
Eine Alternative zu RADIUS CoA für einfachere Netzwerkeinrichtungen, wenn auch weniger sicher.
Ausgearbeitete Beispiele
Eine Luxus-Einzelhandelsmarke in London möchte WeChat-Login für chinesische Käufer anbieten. Sie möchten demografische Daten erfassen, um ihren Kundenstamm besser zu verstehen, sind jedoch besorgt über die GDPR-Konformität und hohe Absprungraten auf dem Portal.
Der Einzelhändler sollte ein Service-Konto auf der WeChat Official Accounts Platform registrieren. Er muss das Portal so konfigurieren, dass es bei Erstverbindungen den Scope snsapi_userinfo verwendet, um demografische Daten (Spitzname, Geschlecht, Stadt) zu erfassen. Um die GDPR-Konformität zu gewährleisten, muss die Portalseite vor der WeChat-Weiterleitung ein klares, bewusstes Opt-in anzeigen und genau erklären, welche Daten erfasst werden und warum. Für wiederkehrende Käufer sollte das Portal die MAC-Adresse erkennen und snsapi_base für eine stille Re-Authentifizierung verwenden, um Reibungsverluste zu minimieren.
Ein Stadion stellt ein neues WiFi-Netzwerk unter Verwendung von HPE Aruba-Controllern bereit. Sie haben WeChat OAuth konfiguriert und das Portal erhält erfolgreich das Access Token, aber das Gerät des Besuchers verbleibt auf der Captive Portal-Seite und kann nicht auf das Internet zugreifen.
Der Integration fehlt ein Mechanismus zur Netzwerkerzwingung. Der Portalserver hat die Identität des Benutzers bei WeChat verifiziert, aber er hat den HPE Aruba-Controller nicht angewiesen, den Zugriff freizugeben. Der Portalserver muss so konfiguriert werden, dass er eine RADIUS Change of Authorisation (CoA)-Nachricht an den Controller sendet und diesen anweist, die MAC-Adresse des Benutzers von der Pre-Authentifizierungsrolle in die authentifizierte Gastrolle zu überführen.
Übungsfragen
Q1. Sie stellen ein Captive Portal in einer Einzelhandelskette bereit. Tests zeigen, dass Benutzer, die das Portal in Safari auf iOS öffnen, eine Fehlermeldung erhalten, wenn sie das WeChat-Login wählen. Benutzer, die das Portal über einen WeChat-Nachrichtenlink öffnen, können sich jedoch erfolgreich authentifizieren. Was ist die wahrscheinlichste Ursache?
Hinweis: Berücksichtigen Sie den Unterschied zwischen dem WeChat In-App-Browser und standardmäßigen mobilen Browsern.
Musterlösung anzeigen
Die Implementierung basiert wahrscheinlich ausschließlich auf einem Service-Konto, das auf der Official Accounts Platform registriert ist, welche nur OAuth innerhalb des WeChat In-App-Browsers unterstützt. Um Safari auf iOS zu unterstützen, müssen Sie auch eine Website-Anwendung auf der WeChat Open Platform registrieren und eine User-Agent-Erkennung implementieren, um Safari-Benutzer zum QR-Code-Flow weiterzuleiten.
Q2. Die Serverprotokolle Ihres Portals zeigen häufige 40029 "invalid code"-Fehler, die während des Access-Token-Austauschs von der WeChat API zurückgegeben werden. Welche Konfiguration sollten Sie zuerst überprüfen?
Hinweis: Überlegen Sie, wie WeChat die Quelle der Authentifizierungsanfrage validiert.
Musterlösung anzeigen
Sie sollten die Konfiguration des redirect_uri überprüfen. WeChat validiert die Redirect-URI streng anhand der in der Entwicklerkonsole registrierten autorisierten Domain. Wenn das Portal eine andere Subdomain verwendet oder HTTPS nicht nutzt, wird WeChat den Code-Austausch ablehnen.
Q3. Ein Betreiber eines Veranstaltungsortes möchte Besucherdaten erfassen, besteht jedoch auf einen reibungslosen Login-Prozess ohne Hürden. Er bittet Sie, das WeChat-Login so zu konfigurieren, dass der Spitzname und die Stadt des Besuchers erfasst werden, ohne dass ein Zustimmungsfenster angezeigt wird. Wie reagieren Sie?
Hinweis: Überprüfen Sie die Funktionen der verschiedenen OAuth-Scopes.
Musterlösung anzeigen
Sie müssen den Betreiber darüber informieren, dass dies technisch unmöglich ist. Die Erfassung demografischer Daten wie Spitzname und Stadt erfordert den Scope snsapi_userinfo, der zwingend ein WeChat-Zustimmungsfenster auslöst. Um einen völlig reibungslosen Prozess zu gewährleisten, müssen Sie snsapi_base verwenden, was geräuschlos im Hintergrund läuft, aber nur die OpenID zurückgibt.
Weiterlesen in dieser Reihe
Captive Portal für Ruijie: Einrichtung mit Purple Gäste-WiFi
Wie das Cloud-Gäste-WiFi von Purple über Web-Authentifizierung und RADIUS auf Ruijie RG Series Access Points aufsetzt, konfiguriert über die Befehlszeile, und wo Sie die genauen Einrichtungsschritte finden.
B2B Captive Portals gestalten: Erfassung von registrierten Namen und Unternehmensdaten
Dieser Leitfaden bietet IT-Managern und Betreibern von Veranstaltungsorten ein herstellerneutrales technisches Framework für das Design von B2B Captive Portals. Er beschreibt im Detail, wie Registrierungsfelder strukturiert werden sollten, um registrierte Namen und Unternehmensdaten zu erfassen, um hohe Ausfüllraten zu gewährleisten, während gleichzeitig die GDPR-Konformität gewahrt und Account-Level-Intelligence aufgebaut wird.
Captive Portal Architektur: Sicherheit, Umleitung und Best Practices
Ein definitives technisches Referenzdokument zur Captive Portal-Architektur in Unternehmen. Dieser Leitfaden beleuchtet Netzwerkisolierung, DNS-Umleitung, RADIUS-Authentifizierung und Sicherheitskonformität für IT-Entscheider, die sichere, datenreiche Gäste-WiFi-Netzwerke bereitstellen.