【发布时间】:2015-08-13 04:51:19
【问题描述】:
我有一个使用 ASP.NET 开发的网站,数据库是 MYSQL。在那里,对表内的注册用户进行用户身份验证。
那么这个 ASP.NET 身份是什么?会员资格?事物。什么时候使用它们? 他们是安全的方法吗?它们与我目前所做的不同吗?
非常感谢。
【问题讨论】:
标签: c# mysql asp.net asp.net-membership asp.net-identity
我有一个使用 ASP.NET 开发的网站,数据库是 MYSQL。在那里,对表内的注册用户进行用户身份验证。
那么这个 ASP.NET 身份是什么?会员资格?事物。什么时候使用它们? 他们是安全的方法吗?它们与我目前所做的不同吗?
非常感谢。
【问题讨论】:
标签: c# mysql asp.net asp.net-membership asp.net-identity
Aspnet.Identity 是对用户进行身份验证的方式。它使您的生活变得简单,为 cookie 生成创建代码,维护数据库关系,密码恢复,密码加密,电子邮件集成,将身份验证扩展到与 Twitter、Facebook、Google 等的链接。表中的用户。”
您可以在此处找到有关身份的更多信息:http://www.asp.net/identity/overview/getting-started/introduction-to-aspnet-identity
Microsoft 一直在不断改进 Identity,使其更加安全。但是,如果开发人员犯了错误,总有办法而且无能为力。
但是,鉴于所有更新 - 身份代码发生了很大变化,以至于 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 集成存在许多问题。延迟加载问题等。即使对身份代码进行了少量定制,这也会非常明显。如果你想为用户身份验证包含身份,我强烈建议你改用 MS SQL 而不是 MySQL
【讨论】:
ASP.NET 成员资格: 为您提供了一种验证和存储用户凭据的内置方式。因此,ASP.NET 成员身份可帮助您管理网站中的用户身份验证。通过使用 ASP.NET 登录控件,您可以使用 ASP.NET 成员身份和 ASP.NET 表单身份验证来创建一个完整的用户身份验证系统。
当您想使用 ASP.NET 登录控件或自定义登录表单设计创建登录/注册表单身份验证时,您可以使用 ASP.NET 成员身份。
这里有一份关于如何使用 ASP.NET Membership https://msdn.microsoft.com/en-us/library/ms731049(v=vs.110).aspx 的完整指南
【讨论】: