1

我有一些身份验证场景,我不确定如何处理。我将不胜感激有关该主题的任何建议。

要求:

  1. 网站将包含一个仅对特定计算机可用的部分。
  2. 网站需要知道当前正在发出请求的是哪台 PC(我需要能够将此 PC 绑定到数据库中的其他表)
  3. 我们可以完全访问将访问网站的 PC
  4. 网站不需要登录,用户应该只看到内容页面而不需要登录。
  5. 解决方案需要安全,因为它必须通过安全审核
  6. 假设每台 PC 都在不同的网络上。

到目前为止我的想法:

  • 使用客户端证书,但我不确定您是否可以为每个客户端颁发不同的证书?如果答案是“您不知道谁在提出请求”,那么它的第 2 个要求不符合要求,因此不是一个选择。
  • 带有模拟的 Windows 身份验证,因此我可以让不同的用户在 PC 上登录(我可以控制机器上登录的用户名/帐户)
  • 基本身份验证并设置 PC 第一次记住用户名/密码。我有点担心这个“记住我”会过期,这会导致大混乱,因为有人不得不再次设置这台电脑......
  • Windows Identity Foundation - 从未尝试过,但如果我能以某种好的方式在这里实现这个场景,如果你能指出我正确的方向,我将不胜感激。

在此先感谢您的帮助。

编辑:
如果可能的话,我宁愿不使用 SSL ......(性能考虑)

EDIT2:
目前我认为最好的选择是检查 PC 是否经过身份验证(是否包含表单身份验证 cookie),如果不是,则将他重定向到一些 https:// 页面,该页面将检查客户端证书,如果证书设置 cookie存在并重定向回目标页面。
这应该不会很慢,因为 SSL 只会在 cookie 过期的极少数情况下使用。
如果您发现此解决方案有任何缺陷,请告诉我。
如果您知道如何创建服务器证书并稍后从中生成不同的客户端证书,我将不胜感激。

4

0 回答 0