ASP.NET MVC中的客户端PC身份验证(需要建议)

时间:2011-06-02 15:42:25

标签: asp.net-mvc-3 authentication security client-certificates

我有一些身份验证方案,我不确定如何处理。我会很感激有关这个问题的任何建议。

要求:

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

    • 使用客户证书,但我 不确定你是否可以发行 每个客户不同的证书?如果 答案是'你不知道是谁 发出请求'而不是失败 要求编号2因此是 不是一种选择。
    • 视窗 通过模拟进行身份验证 我可以让不同的用户登录 在PC上(我控制着将会是什么 登录的用户名/帐户 机器)
    • 基本身份验证并将PC设置为首次记住用户名/密码。我有点害怕这个“记住我”可能会过期,因为有人必须再次设置这台PC,这会导致大混乱......
    • Windows身份 基金会 - 从未尝试过,但如果可以的话 在某些方面实现此方案 很好的方式,如果你能,我很感激 指出我正确的方向。

    提前感谢您的帮助。

    修改
    如果可能,我宁愿不使用SSL ......(性能考虑)

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

0 个答案:

没有答案