初识Asp.net Identity
第一篇,多多指教啦!
之前做asp.net的网站只知道Asp.net的身份验证方式有:Windows验证和Forms验证。今天初步了解了下asp.net的Identity技术,顺带了解了它之前的Membership技术。
一、Windows验证:一般用于局域网应用。
二、Froms验证:Windows验证的局限性非常明显,一旦用户有超出本地域控制器范围的外网用户访问网站,就会出现问题。ASP.NET表单验证(Forms Authentication)很好的弥补了这一缺陷。
三、Membership:
使用表单认证能解决基本的身份验证问题。但是,大部分应用程序还包含角色和用户管理以及权限信息的存储问题。因此,我们不得不做下面这些事情:
- 创建用户和角色表。
- 编写访问数据表的代码。
- 提供用户和密码验证的方法。
几乎每一个应用程序,我们都重复着做上面类似的事情。当微软发现这一问题后,在ASP.NET 2.0引入了Membership的重磅级技术方案。很好的解决了WEB应用程序在成员资格方面的常见需求,这些需求包括表单身份验证,存储用户名、密码和用户资料信息 (profile)等。
ASP.NET Membership自身设计的缺陷:
数据库架构受限于SQL Server。
生硬的表存储结构。
系统仅依据关系数据库设计。
不能使用OWIN。
四、Identity:鉴于ASP.NET Membership的弊端,微软又开发一套新的安全框架ASP.NET Identity。
ASP.NET Identity具有以下优势:
统一的框架。
自定义用户信息。
灵活的角色管理。
数据持久性以及兼容性。
- 单元测试能力。
- OWIN集成。
- Nuget包。
相关技术:
OWIN 是一种定义 Web 服务器和应用程序组件之间的交互的规范 。这一规范的目的是发展一个广阔且充满活力的、基于 Microsoft .NET Framework 的 Web 服务器和应用程序组件生态系统。
Katana 是开源的的OWIN框架,主要用于微软.NET应用程序。Katana 2.0 将随 Visual Studio 2013 一起发布。 新版本有两个值得关注的方面:
- 为自托管提供核心基础结构组件。
- 提供了一套丰富的验证中间件(包括 Facebook、Google、Twitter 和 Microsoft Account 这样的社交提供商)以及适用于 Windows Azure Active Directory、cookie 和联合身份验证的提供程序。
更多信息参考 http://owin.org/
注:本文摘自 http://www.cnblogs.com/liuhaorain/p/3776467.html#t_1,解说不是很详细,若查看详细请参照。
初识Asp.net Identity的更多相关文章
- ASP.NET Identity入门系列教程(一) 初识Identity
摘要 通过本文你将了解ASP.NET身份验证机制,表单认证的基本流程,ASP.NET Membership的一些弊端以及ASP.NET Identity的主要优势. 目录 身份验证(Authentic ...
- 从Membership 到 .NET4.5 之 ASP.NET Identity
我们前面已经讨论过了如何在一个网站中集成最基本的Membership功能,然后深入学习了Membership的架构设计.正所谓从实践从来,到实践从去,在我们把Membership的结构吃透之后,我们要 ...
- MVC5 - ASP.NET Identity登录原理 - Claims-based认证和OWIN
在Membership系列的最后一篇引入了ASP.NET Identity,看到大家对它还是挺感兴趣的,于是来一篇详解登录原理的文章.本文会涉及到Claims-based(基于声明)的认证,我们会详细 ...
- [转]MVC5 - ASP.NET Identity登录原理 - Claims-based认证和OWIN
本文转自:http://www.cnblogs.com/jesse2013/p/aspnet-identity-claims-based-authentication-and-owin.html 在M ...
- Configuring Autofac to work with the ASP.NET Identity Framework in MVC 5
https://developingsoftware.com/configuring-autofac-to-work-with-the-aspnet-identity-framework-in-mvc ...
- asp.net identity UserSecurityStamp 的作用
UserSecurityStamp 主要是用来对用户安全相关信息做一个快照. 在使用asp.net identity 的 CreateAsync(TUser user) 创建一个用户的时候,如果开启了 ...
- ASP.NET Identity V2
Microsoft.AspNet.Identity是微软在MVC 5.0中新引入的一种membership框架,和之前ASP.NET传统的membership以及WebPage所带来的SimpleMe ...
- ASP.NET Identity 2新增双重认证、帐号锁定、防伪印章功能并修复了一些bug
Microsoft最近发布了ASP.NET Identity 2,该版本支持双重认证.帐号锁定以及防伪印章功能,还增强了用户帐号和索引.此外新版本还包含一个改进的密码验证器并修复了一些bug. 借助于 ...
- VS2013中web项目中自动生成的ASP.NET Identity代码思考
vs2013没有再分webform.mvc.api项目,使用vs2013创建一个web项目模板选MVC,身份验证选个人用户账户.项目会生成ASP.NET Identity的一些代码.这些代码主要在Ac ...
随机推荐
- oracle 11g设置打开空表extent储存块
sql>alter system set deferred_segment_creation=false; sql>show parameter deferred_segment_crea ...
- Sqlserver添加或更新数据SQL
Merge into [tableName] as t Using(select [@id] as tid) as t1 on t1.tid=t.id when matched then update ...
- Android加载SO库UnsatisfiedLinkError错误的原因及解决方案
Android 应用开发者应该对 UnsatisfiedLinkError 这种类型的错误比较熟悉了,这个问题一直困扰着广大的开发者,那么有没有想过有可能你什么都没做错,也会出现这个问题呢? 我们在 ...
- __proto__与prototype
值得一说的是对象没有prototype属性,只有函数有prototype属性. var a = function(){}; a.prototype.d = function(){ console.lo ...
- AssetBundle系列——游戏资源打包(二)
本篇接着上一篇.上篇中说到的4步的代码分别如下所示: (1)将资源打包成assetbundle,并放到自定目录下 using UnityEditor; using UnityEngine; using ...
- ECMASCRIPT 6中字符串的新特性
本文将覆盖在ECMAScript 6 (ES6)中,字符串的新特性. Unicode 码位(code point)转义 Unicode字符码位的长度是21位[2].而JavaScript的字符串,是1 ...
- HTTP状态码大全(转自wiki)
1xx消息 这一类型的状态码,代表请求已被接受,需要继续处理.这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束.由于HTTP/1.0协议中没有定义任何1xx状态码,所以除非在某些试 ...
- Java对象的复制
Java中对象的赋值分为浅拷贝和深拷贝 1.对象浅拷贝 public class CloneTest{ static class Emp{ String name; int age; Date h ...
- 结对编程之Fault、Error、Failure
1.结对说明 结对对象:刘世麟 博客地址:http://www.cnblogs.com/liushilin/ 双方贡献:1:1 2.题目要求 构造程序,分别是: •不能触发Faul ...
- 使用Kibana 分析Nginx 日志并在 Dashboard上展示
一.Kibana之Visualize 功能 在首页上Visualize 标签页用来设计可视化图形.你可以保存之前在discovery中的搜索来进行画图,然后保存该visualize,或者加载合并到 d ...