10

そこで、ホテルの公共ホットスポット用のゲスト インターネット ポータルを構築しています。これは、すべての送信トラフィックをポータル ページにリダイレクトするネットワーク アクセス ゲートウェイ (Nomadix) を介してポータルが提供されることを意味します。ゲストがアイドル タイムアウト後に自動的に再ログインできるように、ポータルはブラウザに Cookie を設定できる必要があります。

問題:
iOS4 以降および OS X (10.7 以降) デバイスには、キャプティブ ネットワーク サポートと呼ばれる機能があります。この機能は、Wifi SSID を継続的にスキャンして接続し、http://www.apple.com/library/test/success.htmlをカールして、デバイスがインターネットに接続されているかどうかを確認します。成功の応答が得られない場合、これらのデバイスはキャプティブ ネットワーク ポータルと呼ばれるものを開きます。このポータルは Safari Mobile の真のバージョンではなく、このブラウザに Cookie を保存することはできません。

次の質問に対する正式な回答を希望します。

クライアント側の JavaScript/マークアップを使用できますか?

A) キャプティブ ネットワーク (ポップアップ) ブラウザ内に Cookie を保存する

B) Apple.com をホワイトリストに登録せずに、キャプティブ ネットワーク ブラウザが最初からポップアップしないようにする

4

3 に答える 3

7

これは、sysadmin 用の StackExchange ネットワークの間違ったサイトです。ServerFaultを試してみてください。ユーザーとしての私の経験では、Cookie なしで再認証を管理する WiFi ポータルがあります。おそらく、ServerFault はそのようなものを見つけるのに役立ちます。

とはいえ、iOS クライアント側の開発に関して考えられる解決策が 1 つあります。それは、サードパーティ アプリがシステムに、特定の SSID に対する認証の責任を負い、Web シートを抑制することを想定していることを通知できるようにするCaptiveNetworkAPIです。ユーザーがアプリをインストールする必要があるため、望ましいソリューションではない可能性がありますが、そこにはあります。

于 2012-08-28T04:57:35.713 に答える
2

iOS デバイスが検出されるたびに、ローカルで" http://www.apple.com/library/test/success.html "を提供してみてください。これにより、CNA がポップアップしなくなり、ユーザーは Cookie を保存できるモバイル サファリ経由でログインできるようになります。

于 2013-02-06T10:38:00.880 に答える