【问题标题】:What is ASP.NET Identity?什么是 ASP.NET 标识?
【发布时间】:2014-04-18 03:37:04
【问题描述】:

它提供了哪些基本功能? 专门针对从未使用过 asp.net 内置的东西的人。

MSDN 教程让我很困惑。索赔、OWIN 等都超出了我的想象。

我可以从这一切中得到 - 身份框架帮助我管理我的应用程序和社交登录。它处理我的 cookie 等。

如果我的应用程序中只有一个角色 - 只是普通用户怎么办? 那么我应该选择身份还是我应该实现自己的自定义东西?

感谢任何帮助。

【问题讨论】:

  • 您最好的办法是加载其中一个模板并将其用作您自己的网站库。然后,您将在阅读模板代码时了解一切都在做什么。

标签: asp.net-mvc-5 asp.net-identity owin


【解决方案1】:

如果您从头开始,构建一个带有个人成员选项的示例 MVC 项目,它将为您创建以下组件:

  • 创建和管理身份验证 cookie 的登录模块
  • 用于存储基本用户数据(凭据、姓名)的简单数据库
  • EF 代码与数据库交互

这很可能满足您对没有角色和属性的用户的用例。

OWIN 确实与身份验证无关,它是构建 Web 应用程序的新规范。登录模块恰好是按照这个规范实现的,听起来很酷,所以微软很喜欢用这个词。

如果您不打算在应用中使用授权逻辑,则无需担心声明。声明是用户属性(登录名、名称、角色、权限)的另一个术语。 Claims 集合将由框架填充,但您很可能不会使用它。如果您只需要用户 ID/用户名,旧的 ASP.NET 接口仍然可以获取这些数据。

就您自己的实现而言,我已经看到这里的人们放弃了数据库和 EF 代码,尤其是如果他们已经拥有现有的用户存储。您只需要针对您的商店实施凭证验证逻辑。不过,您不想构建自己的 cookie 管理。使用 Microsoft 提供的登录模块或成熟的第三方系统(SiteMinder、Tivoli 等)

查看this 开源项目,寻找 ASP.NET Identity 的良好替代方案。

This 是一个很好的教程,解释了其中的许多概念,您可以免费试用该网站来查看它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-17
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 2013-04-05
    • 2011-04-20
    • 2011-01-10
    相关资源
    最近更新 更多