Verhindern, Captive Portal, auto-close nach der Authentifizierung (Android)
Also die einfache Idee ist, dass wir einen RADIUS-server-setup zu ermöglichen, Benutzer zu authentifizieren, die mit unseren Ruckus controller via Benutzer-Anmeldeinformationen. Bei der Authentifizierung sollte der Benutzer auf eine Seite umgeleitet werden, die ermöglicht Ihnen die Verwaltung von MAC-authentifizierte Geräte.
Alles, was wir bisher getestet haben, auch "ältere" Android-Geräte scheint dies kein Problem und die Dinge laufen, wie Sie sollten. Aber mit Lollipop (5.0+) Android-Versionen das captive portal hat sich ziemlich geändert, und Teil dieser Veränderung ist, schließen Sie automatisch mit der captive portal -, die gestartet wird, wenn Sie dem Netzwerk beitreten. Weil wir wollen, dass Sie umgeleitet werden, um ein MAC-device-management-Seite nach der Authentifizierung, so dass Sie können fügen Sie das Gerät, das Sie derzeit angemeldet mit und vermeiden, dass Sie sich nicht erneut anmelden, das ist schlecht.
Was ich versucht habe:
-
Erkennen, wenn der browser gestartet wird in einem mobilen Gerät und knallen eine Warnung in onbeforeunload, die versucht zu halten, den browser öffnen.
-
Öffnen Sie ein neues browser-Fenster, die auf die Umleitungs-URL, wenn eine erfolgreiche Authentifizierung erkannt wird (im wesentlichen die Verwaltung der redirect selbst).
-
Durchführung von Option 2 und Option 1 auf die umgeleitete URL
Was nicht:
-
Fragen, die Benutzer zu deaktivieren, die captive portal-option auf Ihrem Gerät. Nicht versuchen, Punkt Allgemeine Benutzer erweiterte Steuerelemente.
-
Schaffung einer offenen Netzwerk Zugriff auf die MAC-manager, es muss sich hinter einigen Authentifizierung.
Lösung Für Jetzt:
Wir sind zufrieden mit dieser Lösung, aber für jetzt, wir sind einfach zu Fragen, Benutzer zu authentifizieren, die mit dem Netzwerk und öffnen Sie Ihren browser und gehen Sie zu dem basic-login-portal-Seite (nicht-Netzwerk-Authentifizierung), die die Benutzer verwenden, um Geräte manuell hinzuzufügen, Sie können nicht verbinden mit (wie Drucker, Spielekonsolen, etc.). Wenn das funktioniert, ist ein Schmerz für die Benutzer anmelden müssen, öffnen Sie einen browser, geben Sie manuell eine url ein und melden Sie sich wieder.
Dies ist nicht ein problem, dass die Menschen noch nicht, siehe hier, habe ich einfach nicht in der Lage gewesen, eine Lösung zu finden, die von jedermann ausgeführt wurde, das problem. Sicherlich gibt es einige Möglichkeit der Nutzung von javascript oder etwas zu halten Sie öffnen des Browsers in dieser situation. Wenn nicht, wer keine besseren Ideen für die Verwaltung der Dinge?
- Hast du eine Lösung finden ? Ich bin auf der Suche für das gleiche Verhalten
- kein Glück noch. Ich werde zu aktualisieren, mit einer Antwort-wenn ich eins finden, wenn Sie bleiben konnten, uns SO folk gepostet, wenn Sie etwas finden, auf Ihr Ende würde es geschätzt werden. Frustrierend, sicher.
- viel Glück mit diesem Problem?
- leider nicht. Google ist sich bewusst, dass die Funktionalität, die wissen, dass Leute, die müssen Umleitungen sind nicht zufrieden, und sehe Sie immer noch als beabsichtigte Funktionalität. Sie bieten sehr wenig Kontrolle über den Prozess im Allgemeinen scheint es.
- es geschafft, zu lösen, indem die Firewall aus die Konnektivität überprüft post-Authentifizierung und reverse-proxing in den 204 wenn wir es brauchen, um zu schließen. check meine Antwort in dem thread.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wir haben es geschafft, zu halten, der UAM-Browser /captive portal browser öffnen auf lollipop durch hinzufügen von firewall-Regeln blockieren :
So, nachdem der Benutzer authentifiziert ist, an der UAM /Captive Browser geöffnet bleibt.
Können Sie halten UAM so lange geöffnet, wie Sie benötigen, können Sie es schließen, indem Sie ein reverse-Proxy-204-redirect auf die google-Seite Konnektivität.
captive.myspot.zone
wir gerade dachte, diese nach einigen Netzwerk-sniffing.Diese scheint neu zu sein, Captive-Portal-Verhalten bei Android-Geräten seit der Veröffentlichung von Lollipop (5.0).
Haben wir noch nicht entdeckt, dieses Problem zu umgehen. Wenn es einen expliziten Weg, um zu deaktivieren, die auto-Entlassung es ist wohl nur dokumentiert, in die Android-Codebasis zur Verfügung hier (ich habe schon gesucht, aber habe nicht gefunden was definitiv noch nicht):
https://android.googlesource.com/platform/frameworks/base
Zur info, wir habe auch bemerkt, dass Android verwendet CloudFront-CDN für seine Gefangenen Netzwerk-Erkennung. Unserer captive-portal-Lösung, die ursprünglich verwendet CloudFront für das Vermögen, so mussten wir eine whitelist CloudFront Subnetze in pre-auth-ACLs. Whitelisting CloudFront anschließend verursacht Gefangenschaft Netzwerk-Erkennung zu Versagen auf den letzten Android-Geräte. Wir hatten zu verlassen CloudFront CDN wiederherstellen captive portal-Funktionalität für Android-Geräte.
Warum gehst du nicht einfach zu halten captive portal geöffnet, nach der Authentifizierung? Sie können immer erlauben den Zugriff auf jede Website, die außer gefangen überprüfung Websites.
Getestet und funktioniert sowohl auf Android als auch iOS in allen Versionen.
Wenn Sie brauchen, um den Zugriff auf cookies/shared-storage von Standard-browser (nicht gekoppelten ios - /android-Sandbox-browser), werden Sie gotta hop heraus, dass es vor der Authentifizierung.