MVC 4 中的自定义成员资格提供程序

2024-01-03

我刚开始学习MVC4。作为第一步,我需要执行登录,因为自定义数据库在数据库中只有三个角色。

真的有必要实施自定义会员资格提供商吗?我对此提出疑问,因为我正在阅读这篇文章,而他正在采取另一种方式:http://patrickdesjardins.com/blog/asp-net-membership-with-mvc4 http://patrickdesjardins.com/blog/asp-net-membership-with-mvc4

我只需要从自定义数据库获取用户并确定角色。

确定规则,是相当简单的。我有两张表,分别称为“学生”和“教师”。每一个都有其登录 ID 和公共属性密码。

if (db.Students.Where(x => x.StudentId == x && x.Password == y) return "student"
if (db.Teachers.Where(x => x.TeacherId == x && x.Password == y) return "teacher"

// does not exist

您能否指导我如何在 ASP.NET 中实现此功能?


注意:以下内容可能不适用于 .NET Core 或 ASP.NET Core

在开始研究之前,请注意 ASP.NET MVC4 中的成员资格和角色管理已发生更改。 (如果您使用 Visual Studio 中的“Internet 应用程序”模板)

请阅读乔恩·加洛韦的博客文章 http://weblogs.asp.net/jgalloway/archive/2012/08/29/simplemembership-membership-providers-universal-providers-and-the-new-asp-net-4-5-web-forms-and-asp-net-mvc-4-templates.aspx关于发生了什么变化。

New Simple Membership Provider旨在扩展并克服旧成员资格和角色管理系统中的问题(该系统仍然受支持,因为它是 ASP.NET 的一部分)

两种实现都支持角色管理,您可以自由选择任一实现,或推出您自己的实现。关于哪一个更好存在争议,并且由于两者的局限性,一些开发人员更喜欢实现自己的。 (我不会详细说明,因为它可能会产生偏见)

这是一个帮助您入门的教程。 [Link http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-7].. 请注意,教程解释了旧的会员系统,而不是新的 SimpleMembership/WebSecurity 方法。

UPDATE

正当您认为自己拥有足够的身份验证框架时,微软宣布了OWIN - .NET 的开放式 Web 界面 http://owin.org/.

OWIN 是一组开放且可插入的 .NET 接口,其中包括身份验证。请参考这篇文章[Link http://blogs.msdn.com/b/webdev/archive/2013/07/03/understanding-owin-forms-authentication-in-mvc-5.aspx] 了解如何使用 MVC 5 OWIN Forms 身份验证。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MVC 4 中的自定义成员资格提供程序 的相关文章

随机推荐

  • Visual Studio 2015 - 连接到 Visual Studio 库进行扩展和更新时出现 Visual Studio 库错误

    当尝试从扩展和更新获取 Visual Studio 扩展时 我收到以下错误 向 Visualstudiogallery msdn microsoft com Services VStudio Extension svc 发出 HTTP 请求
  • 如何在单文件组件中使用 VueJS 2 全局组件?

    我正在尝试使用全局注册的组件 带有Vue 组件 在单个文件组件中但我总是得到 vue common js 2611 Vue warn Unknown custom element
  • 如何使用 System.Text.Json 将 double[] 二维数组序列化为 JSON?

    我需要写一个double 使用 System Text Json 转换为 JSON 文件 但此序列化程序不支持二维数组 我需要一些帮助来转换我的double to a List
  • PyPy 中的 GIL 在哪里?

    PyPy GIL 是 RPython 中 PyPy 解释器实现的一部分 还是 translate py 自动添加的东西 也就是说 如果我用 RPython 编写自己的新语言解释器并通过 translate py 运行它 它是否会先验地受到
  • 如何向网页添加自定义右键菜单?

    我想向我的 Web 应用程序添加自定义右键菜单 可以在不使用任何预构建库的情况下完成此操作吗 如果是这样 如何显示一个不使用第 3 方 JavaScript 库的简单自定义右键菜单 我的目标是像 Google Docs 那样 它允许用户右键
  • 提示用户从 Dropbox 下载时保存

    我想要一个从 Dropbox 下载文件的链接 该链接会提示用户而不是在浏览器中显示该文件 这可能需要将内容处置标头设置为 附件 我目前正在使用 Dropbox 媒体 URL 如下所述 https www dropbox com develo
  • C2039:类不是命名空间的成员

    法师 接口 Context h pragma once include
  • onResume 手机屏幕锁定时被反复呼叫

    看来 如果手机屏幕锁定时某个 Activity 位于前台 广播事件和 或唤醒锁将导致该 Activity 的 onResume 被调用 无论它们是否适用于您的应用程序 即使您不以任何方式与手机交互 也会发生这种情况 不解锁它 不触摸它 不做
  • Android 上的 SQLite 数据库有大小限制吗? [复制]

    这个问题在这里已经有答案了 我想将 db 文件内部存储在设备 SD 卡中 并希望从中访问数据 有人可以告诉我们在我们的 Android 应用程序中可以检索的 db 文件的最大大小吗 没有任何内存异常 SQLite 的最大大小为 10MB 到
  • 类型类与代数数据类型?

    我经常开始考虑要定义的类型类方面的问题 并意识到当我开始编码时我不需要类型类 并且可以使用代数数据类型来解决我的问题 这看起来更简单 因此 我想知道什么时候需要类型类 据我了解 类型类是表示某些类型存在某些函数的一种方式 例如 当类型 My
  • 迭代 openpyxl 中的只读工作簿中的列

    我有一个有点大的 xlsx 文件 19 列 5185 行 我想打开文件 读取一列中的所有值 对这些值执行一些操作 然后在同一工作簿中创建一个新列并写出修改后的值 因此 我需要能够在同一个文件中读取和写入 我原来的代码是这样做的 def re
  • 带有 SSL 的 Android 应用程序

    我知道这个特定的主题被问过很多次 但不幸的是 就我而言 它们都不起作用 在过去的几天里 我试图让它恢复正常状态 但每次都失败 所以我终于来这里询问 我的服务器上有一个带有自签名证书的网络服务 如果我在浏览器中输入地址 我就可以访问 wsdl
  • 使用 MongoDB 进行单元测试

    我选择的数据库是 MongoDB 我正在编写一个数据层 API 来从客户端应用程序中抽象实现细节 也就是说 我本质上提供了一个公共接口 充当 IDL 的对象 我正在以 TDD 方式测试我的逻辑 在每次单元测试之前 Before调用方法来创建
  • Grep 最后一场比赛的前后行

    我正在搜索一些日志 我想 grep 最后一个匹配项及其上方和下方的几行 grep A10 B10 searchString my log将打印前后 10 行的所有匹配项grep searchString my log tail n 1将打印
  • 以编程方式从 Kendo Grid 中选择一行

    我有一个网格 其中一列是一个模板 其中有一个复选框 Name grid Columns columns gt columns Bound c gt c Id ClientTemplate
  • PhoneGap - Android - 如何将相机捕获的图像保存在SD卡中

    我是 PhoneGap Android 开发人员的新手 我正在使用phonegap 在android 中制作一个应用程序 我想从设备相机拍照 然后在从设备拍摄图像后将其显示在屏幕上 并将捕获的图像存储在 SD 卡中 你能告诉我该怎么做吗 古
  • 二进制轮无法使用twine上传到pypi上

    我正在尝试从 github actions 上传适用于 linux 和 windows 的 Pypi 包 使用linux我得到这个结果 Binary wheel xxx cp36 cp36m linux x86 64 whl has an
  • 如何使用 Rails 在浏览器中查看电子邮件视图

    我正在为我的 Rails 应用程序处理电子邮件 目前我知道查看电子邮件的唯一方法是将其发送给自己 如何让 views 文件夹下的 notifications 文件夹中的 daily summary html haml 在浏览器中呈现 我想我
  • SQL Server:查询循环

    我需要获取所有应用程序数据库 并且我已经能够通过 select name from sys database where database id gt 6 现在 我需要运行以下查询 select User FirstName User Na
  • MVC 4 中的自定义成员资格提供程序

    我刚开始学习MVC4 作为第一步 我需要执行登录 因为自定义数据库在数据库中只有三个角色 真的有必要实施自定义会员资格提供商吗 我对此提出疑问 因为我正在阅读这篇文章 而他正在采取另一种方式 http patrickdesjardins c