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

Asp.net mvc 3 ASP.NET MVC中的客户端PC身份验证(需要建议),asp.net-mvc-3,authentication,security,client-certificates,Asp.net Mvc 3,Authentication,Security,Client Certificates,我有一些身份验证场景,我不知道如何处理。我将非常感谢你对这个问题的任何建议 要求: 网站将包含一个部分 只有可用于 特定计算机 网站需要知道哪台电脑当前正在发出请求(我需要能够将这台电脑连接到数据库中的其他表) 我们可以完全访问访问网站的PC 网站不能要求登录,用户应该只提供内容页,而无需登录 解决方案需要安全,因为它必须通过安全审核 假设每台电脑都在不同的网络上 到目前为止我的想法: 使用客户端证书,但我 不确定你是否可以发行 每个客户端有不同的证书?如果 答案是‘你不知道是谁。’ 提出请求

我有一些身份验证场景,我不知道如何处理。我将非常感谢你对这个问题的任何建议

要求:

  • 网站将包含一个部分 只有可用于 特定计算机
  • 网站需要知道哪台电脑当前正在发出请求(我需要能够将这台电脑连接到数据库中的其他表)
  • 我们可以完全访问访问网站的PC
  • 网站不能要求登录,用户应该只提供内容页,而无需登录
  • 解决方案需要安全,因为它必须通过安全审核
  • 假设每台电脑都在不同的网络上
  • 到目前为止我的想法:

    • 使用客户端证书,但我 不确定你是否可以发行 每个客户端有不同的证书?如果 答案是‘你不知道是谁。’ 提出请求比失败更重要 要求2,因此是 没有选择
    • 窗户 模拟身份验证 我可以让不同的用户登录 在个人电脑上(我控制着将会发生什么 登录的用户名/帐户 (机器)
    • 基本身份验证,并将电脑设置为第一次记住用户名/密码。我有点担心这个“记住我”可能会过期,这将导致大混乱,因为有人将不得不再次安装这台电脑
    • Windows标识 基金会-从未尝试,但如果我能 在这里以某种方式实现此场景 如果可以的话,我很感激你 给我指出正确的方向
    提前感谢你的帮助

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

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