特定の場所からアプリケーションにアクセスしているときにアプリケーションを使用するために、特定のユーザーの役割を制限する必要があります。「従業員の役割を持つユーザーは、オフィスまたはその支店からのみアプリケーションにアクセスできます」
- IPチェック?それは変更可能です
- 秘密鍵/公開鍵をたどったらどうですか?その欠点は、キーを Cookie に入れると、キーを読み取ったり、Cookie をクリアしたりできることです。
- MACアドレスに基づいていますか?それは変更可能です
特定の場所からアプリケーションにアクセスしているときにアプリケーションを使用するために、特定のユーザーの役割を制限する必要があります。「従業員の役割を持つユーザーは、オフィスまたはその支店からのみアプリケーションにアクセスできます」
IP による制限は、人々が静的 IP を持つ場所から来ている場合にのみ機能します。家のように動的な場所ではどこでも機能しません。
静的を使用できず、IP で制限したい場合は、http://dyn.com/dns/などのサービスを使用して、FQDN を IP に割り当てることができます。次に、FQDN でルックアップを実行して、リクエスト内の IP と一致する IP が返されるかどうかを確認できます。このルックアップはキャッシュされる可能性があるため、数時間ごとに行うだけです。これの難しい部分は、各場所で動的 DNS クライアントをセットアップする必要があることです。一部のルーターには、これが組み込まれています。
HttpServlet クラスから MAC アドレスを取得することはできません。また、サーバーと通信しているデバイスから MAC アドレスを取得できれば、ルーター、負荷分散、スイッチなどの可能性が高くなります。MAC アドレスはルーティングできません。
Re: キー、x509 証明書を使用できます - http://static.springsource.org/spring-security/site/docs/3.0.x/reference/x509.html
「従業員ロールを持つユーザーは、オフィスまたはその支店からのみアプリケーションにアクセスできます」
サイト間 VPN を使用します。これにより、問題は事実上、簡単に解決できるイントラネット ログインの問題に変わります。
サイト間 VPN を使用することで、リモート サイトの ID を保証できます。接続のセットアップと認証は通常、サイトのルーターによって実行され、サイトのユーザーがその構成を知る必要がないためです (または、持っているため、持ち出すことはできません)。
イントラネットの問題に変換したら、アプリケーションをイントラネット アドレスにバインドし、他のイントラネット リソースと同様に保護します。
このような種類の承認規則を設定するには、最初に定義する必要があるのは次のとおりです。