我有一个使用ASP.NET开发的网站,DB是MYSQL。在那里,用户身份验证是针对表中的注册用户完成的。
那么这个ASP.NET身份是什么?会员?的东西。什么时候使用它们? 他们是安全的方法吗?它们与我目前的做法有何不同?
非常感谢。
答案 0 :(得分:0)
Aspnet.Identity是对用户进行身份验证的方法。它让您的生活变得简单,创建用于生成cookie的代码,维护数据库关系,密码恢复,密码加密,电子邮件集成,扩展身份验证以与Twitter,Facebook,Google等链接。还有很多“针对注册的用户身份验证表中的用户。“
您可以在此处找到有关身份的更多信息:http://www.asp.net/identity/overview/getting-started/introduction-to-aspnet-identity
Microsoft一直在不断改进身份,使其更安全。但是,如果开发人员犯了错误,总会有方法,也无法帮助。
然而,鉴于所有更新 - 身份代码已经发生了很大变化,因此1年前有效的解决方案不再有效。人们需要深入挖掘以进行自定义的简单更改。
以下是如何将Identity与MySQL等自定义存储提供程序集成:http://www.asp.net/identity/overview/getting-started/aspnet-identity-using-mysql-storage-with-an-entityframework-mysql-provider
请注意,默认情况下,主键是GUID,目前没有简单的方法可以将MySQL的主要集成更改为INT。您可以在此处找到更多详细信息:https://forums.asp.net/t/2062668.aspx?How+to+change+primary+key+for+Identity+with+MySQL+as+storage+provider
此外,MySQL和LINQ集成存在许多问题。延迟加载问题等。即使对Identity代码进行少量自定义,这也会非常明显。如果您想包含用于身份验证的身份,我强烈建议转移到MS SQL而不是MySQL
答案 1 :(得分:0)
ASP.NET成员资格为您提供了一种验证和存储用户凭据的内置方法。因此,ASP.NET成员资格可帮助您管理Web站点中的用户身份验证。通过使用ASP.NET登录控件创建用于对用户进行身份验证的完整系统,可以将ASP.NET成员身份与ASP.NET表单身份验证结合使用。
如果要使用ASP.NET登录控件或自定义登录表单设计创建登录/注册表单身份验证,则可以使用ASP.NET成员身份。
以下是关于如何使用ASP.NET成员https://msdn.microsoft.com/en-us/library/ms731049(v=vs.110).aspx
的完整内容