我有一个ASP.NET MVC应用到我刚才集成 RPX 第三方联合身份系统。整合好的工作,但我有一些困难,包裹我的头围绕如何在ASP.NET级别用它做什么。

由于身份是外部处理的,我没有必要在我的应用程序的密码:我从来没有收到用户的密码,只是他们的身份。然而,ASP.NET成员资格提供东西要求密码被以创建用户,登录用户等通过周围

我一直在使用new Guid()在创建时考虑,但这需要到数据库的调用来检索用户的密码之前,我可以通过在成员资格提供签名的用户。我可以使用相同的密码,以便它在事先知道每一个用户,但我担心,这将让我的用户的数据不安全。

我很想听听其他网站如何处理这个问题,例如,StackOverflow上。

[请参见我的其他问题时,关于的成员资格提供用于这种应用。]

有帮助吗?

解决方案

  

但我担心,这将让我的用户的数据不安全。

通过确保没有人可以直接在你的数据库使用的用户名和密码进行验证开始 - 我想这已经是你正在使用RPX做实际验证的情况下,你只能调用ASP.NET成员资格提供一次你已经建立了用户的身份。

然后,将存储在你身边的密码变得无关紧要,因为它不是一个秘密 - 如果我能找出什么别人的密码就在你身边,它不会突然放弃自己的数据,因为我仍然不能登录使用信息。用户的秘密是由第三方供应商管理,而不是你。

所以你还不如保存什么是最方便的(即著名的虚拟值) - 你不如关掉密码加密,以及对成员资格提供,找回服务器上的一些周期。在加密/散列未用于验证任何人的标识值是没有意义的。

其他提示

为什么要使用asp.net成员呢?它并不真正适合你,你在做什么,这是第三方认证。也许你可以看看在 dotnetopenid项目和实例,因为他们有一个传统的ASP。净网站例子,你可以修改MVC?他们有一个维基这里也许谷歌dotnetopenid MVC?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top