アプローチ方法がわからない認証シナリオがいくつかあります。この件に関するアドバイスをいただければ幸いです。
要件:
- Web サイトには、特定のコンピューターのみが利用できる1 つのセクションが含まれます。
- Web サイトは、どの PC が現在リクエストを行っているかを認識する必要があります (この PC をデータベース内の他のテーブルに関連付けることができる必要があります)。
- Web サイトにアクセスする PC に完全にアクセスできます
- ウェブサイトにログインを要求することはできません。ユーザーはログインを必要とせずにコンテンツ ページだけを表示する必要があります。
- セキュリティ監査に合格する必要があるため、ソリューションは安全である必要があります
- すべての PC が異なるネットワーク上にあると仮定します。
これまでの私の考え:
- クライアント証明書を使用しますが、クライアントごとに異なる証明書を発行できるかどうかわかりませんか? 答えが「誰がリクエストを行っているかわからない」である場合は、要件 2 を満たしていないため、オプションではありません。
- 偽装を使用した Windows 認証により、さまざまなユーザーを PC にログインさせることができます (マシンにログインするユーザー名/アカウントを制御できます)
- 基本認証を行い、ユーザー名とパスワードを最初に記憶するように PC を設定します。誰かがこの PC を再度セットアップしなければならないので、この「私を覚えている」が期限切れになる可能性があり、大きな混乱を引き起こすのではないかと少し心配しています...
- Windows Identity Foundation - 試したことはありませんが、ここでこのシナリオを適切な方法で実装できれば、正しい方向に向けていただければ幸いです。
よろしくお願いします。
編集:
可能であればSSLを使用したくない...(パフォーマンスの考慮事項)
EDIT2:
現在、PCが認証されているかどうか(フォーム認証Cookieが含まれているかどうか)を確認し、そうでない場合は、クライアント証明書を確認するhttps://ページにリダイレクトし、証明書の場合はCookieを設定するのが最善の方法だと思います存在し、ターゲット ページにリダイレクトされます。
SSL は Cookie の有効期限が切れるまれなケースでのみ使用されるため、これは遅くはないはずです。
このソリューションに欠陥がある場合はお知らせください。
サーバー証明書を作成し、後でそれから別のクライアント証明書を生成する方法を知っている場合は、ガイドラインに感謝します.