web-dev-qa-db-ja.com

セッションを絶対IPに制限すると、モバイルネットワークに大きな影響を与える可能性がありますか?

当社のウェブサイトは現在、Cookieベースのセッションを最初にSet-CookieHTTPヘッダーに送信されたIPアドレスに制限しています。以前は、ユーザーのIPが変更されることはめったになかったため、これはそれほど不便ではありませんでした。ただし、3Gデバイスを介してアクセスする一部のクライアントでは、このIP制限が原因でセッション障害が発生しています。

モバイルネットワークに使用されるネットワークインフラストラクチャについてはほとんど知りません。大多数のプロバイダーは、私たちのようなWebサイトとの互換性を維持するために、接続を共通のパブリックIPにルーティングしようとしますか、それともセッションをIP範囲に制限することを検討する必要がありますか?

4
tjbp

プロバイダーの大多数は、私たちのようなWebサイトとの互換性を維持するために、共通のパブリックIPに接続をルーティングしようとしますか、それとも、セッションをIP範囲に制限することを検討すべきですか?

短い答え:IPアドレスはユーザーのIDとは関係ありません。さらに、ユーザーに割り当てられるアドレスまたはアドレスのブロックを正確に予測することはできません。

長い回答:IPアドレスはモバイル環境では絶えず変更され、有線の顧客にとってはめったに変更されません。

基本的にIPアドレスを使用してユーザーのIDにマップしているため、疑わしいようにアルゴリズムは実際に壊れています。過去にこの作業を成功させたかどうかは関係ありません。その成功は限られたサンプルサイズの反映であり、優れたデザインの結果ではありませんでした。

プロバイダー固有のアドレス範囲に抽象化することは、この問題の回避策としては不十分です。プロバイダーが使用するアドレス範囲を定量化するために、実質的な時間を費やします。そして、クライアントが飛行機に乗った後、不満を見つけ、その後、以前の試行から数百マイルも再認証します(通常、モバイルプロバイダーからの完全に新しいアドレスブロックになります)。この問題をさらに複雑にするのは、一部のプロバイダーが限られたIPv4アドレス空間を管理しようとするときに、IPv4/IPv6/IPv4とIPv6間のトンネリングをほぼシームレスに使用することです。つまり、同じユーザーが常に同じIPアドレスを受け取ること、またはユーザーが持っているアドレスが100%予測可能なアドレスブロックにあることは保証されません。

4
Mike Pennington

オンライン決済取引やその他の重要な操作中に確認が必要な場合を除いて、特定のユーザーにIPアドレスを割り当てる必要があるかどうかはわかりません。永続的に保存する場合は、IPが動的であるため、意味がありません。

さらに、モバイルIPについて言えば、それらは頻繁にチェンジャーになります。移動するとIPが変化し続けます。あなたはどのような地理追跡サイトでもそれを試すことができます。 http://www.ip2location.com 、移動しながらIPを確認します。

1
Chris

最近、自分が設計したシステムで同様の問題に直面しました。セキュリティのため、ユーザーのログイン時にハッシュが割り当てられ、Cookieに保存されました。次に、これが各要求のデータベースのレコードと照合され、IPアドレスと比較されて、同じユーザーであることを確認しました。

これは何年も問題なく機能しましたが、ユーザーがモバイル(または3Gドングルを使用するラップトップ)を介してシステムにアクセスし始めると、問題が発生し始めました。

バッテリーの寿命を延ばすために、携帯電話は接続し、Webページをダウンロードしてから、接続を閉じます。ユーザーがリンクをクリックすると、モバイルは再接続し、ページをダウンロードして、接続を再び閉じます。その結果、各リクエストには異なるIPアドレスが割り当てられます。 3Gドングルを介してラップトップを使用する場合も同じことが起こります。この場合、プロパティにこの動作を停止する設定が含まれていることがよくありますが、デフォルトの動作からこれを変更したユーザーはほとんどいません。

そのため、ユーザーIDを検証するためにIPアドレスに依存することは、もはや不可能です。それ以来、この制限を移動するためにアプリケーションを書き直しました。

0
Gavin Coates