web-dev-qa-db-ja.com

WiFiポップアップログインページの作成方法

WiFiホットスポットがある場所(Panera Breadなど)に移動してiPhoneに接続すると、ホットスポットのログインページがポップアップとして表示されます。つまり、実行しているアプリやWebページに関係なく、ログインページは下から上にスクロールし、ログイン資格情報を要求してから消えます。

しかし、他のいくつかのホットスポットでは、Safariに移動してWebページを読み込もうとするまで、ログインページが表示されません。

一部のホットスポットでログインページをポップアップし、他のホットスポットではポップアップさせない原因となるiPhoneを探しているのは何ですか?特別なHTMLメタタグはありますか?それとも、リダイレクトの実装方法に関連していますか?

29
Barry Brown

この認証タイプの正しい用語「キャプティブポータル」を見つけることができました。 Captive Portal iPhoneをGoogleにパンチすると、これらのページからいくつかの技術的な詳細が判明しました: onetwothree

Wi-Fiポップアップログインページを実装するには:

  1. www.Apple.comのDNS要求は失敗してはいけません
  2. http://www.Apple.com/library/test/success.html に対するHTTPリクエストは、特別なユーザーエージェントCaptiveNetworkSupport/1.0 wisprSuccessを返してはいけません。

私はこれをテストしていませんが、それは正しく聞こえます。


以下のコメントでは、iOS 7の動作が異なり、複数のサーバーを照会する場合があります。私はこれをテストしていません。最も簡単な方法は、すべてのHTTP通信をログインページに単純にリダイレクトし、すべての非HTTP通信をブロックすることです。

Microsoftのキャプティブポータル検出 同様のものを使用 iOS7以前の動作:ネットワーク接続ステータスインジケーターが接続を試行- http://www.msftncsi.com 。 Windows 8および8.1も WISPrのサポートを含む

Androidのキャプティブポータル検出、AOSP 4.0.1以降 試行 連絡先 http:// clients3.google.com/generate_204 または http://www.google.com/blank.html

そのため、可能な限り汎用性を持たせるために、認証以外のすべての通信を単にブロックし、ログインページにWISPrサポートを含めます。

「ネットワークで適切な認証を行ってください」と言います-PEAP + MSCHAPv2のような普遍的なものですが、Windowsではユーザーが設定するのが非常に苦痛です。 「Windows認証の詳細を使用する」が企業ドメインネットワークの一部ではないマシンで正常なデフォルトになると誰が考えたのか、またはほとんどのネットワークがそうであるように「証明書の有効性を確認する」が正常なデフォルトである理由さえ知りません- not適切な証明書の取得を優先することを検討してください。

36
Ivan Vučica

iOS 6はWPA2 EAPを修正したようです。WPA2EAPが突然ログインウィンドウを表示するようになったためです。

私たちの会社のパブリックWiFiでは、監視などに関する条件に同意する必要があります。iPhoneまたはiPadでSafariを手動で開いてどこかに移動する必要がありました。内部承認ページにリダイレクトし、Acceptボタンをクリックすると元の場所に移動します。

今日、私はiOS 6にアップデートし、ログインウィンドウが下から上にスライドし、Safariを開かなくても[Accept]ボタンをクリックできるのを見て驚いた。

1
James Brickley