我应该在数据库中存储x509证书的哪一部分来查找用户?

时间:2012-07-06 05:41:55

标签: c# x509 x509certificate2

我有一个Web应用程序,它对自定义用户存储使用Forms Auth。我们希望扩展我们的Users实体,以便我们可以配置客户端证书来代替用户名/密码。

我已成功配置IIS以接受客户端证书,并且我可以检查安全模块的AuthorizeRequest事件中的客户端证书并对其进行验证。最后一步是能够将提供的客户端证书与用户相关联。出于测试目的,我目前正在Users表中记录证书的主题名称,并以这种方式查找用户。

当然,这不适合生产。我应该从客户端证书中存储在Users表中的哪些内容,以便我可以查找并将用户登录?

1 个答案:

答案 0 :(得分:2)

您应该使用证书的指纹作为存储或查找证书的密钥,或者查找给定证书的用户。更多信息:http://msdn.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509certificate2.thumbprint.aspx