ASP.NET Identity 是构建 ASP.NET web 应用程序的一种新的身份认证系统。ASP.NET Identity 可以让您的应用程序拥有登录功能,并可以轻松地自定义登录用户的相关数据。

功能

以下列举了 ASP.NET Identity 的功能

  • ASP.NET Identity 系统

    • ASP.NET Identity 可用于所有的ASP.NET框架,如ASP.NET MVC,Web窗体,Web页,Web API和SignalR
  • 简单的弥补关于用户的配置数据
    • 当在你的应用程序中创建新用户时,现在很容易为其添加额外信息。例如.. 假如你想在用户注册时添加一个生日选项,此时会变的很容易。
    • ASP.NET Identity 使用 Entity Framework Code First 并容易对 POCO 类进行扩展。
  • 持久性控制
    • 默认情况下 ASP.NET Identity 也将在数据库中存储所有的用户信息。使用 Entity Framework Code First 可把所有用持久性机制实现。
    • 如果您的应用需要,这些信息可以使用在不同的存储机制,如SharePoint,Azure表服务,没有SQL数据库的情况等,它还可以为不同的存储供应商提供支持。
  • 单元测试
    • ASP.NET Identity 可以是你的Web应用程序拥有更多的单元测试功能。
  • 简单的角色提供程序
    • 简单的角色提供程序,可以让你使用角色限制访问所控制的部分或全部应用程序。可以轻松地创建,如“管理员”的角色,或向角色中添加指定的用户。
  • 基于声明
    • ASP.NET Identity 支持基于声明的用户身份验证,用户的身份被表示为一组的权利请求,这就是一个声明。
  • 外部登录
    • 你可以轻松添加外部登录功能,如使用微软帐户、 Facebook、 Twitter 和谷歌账号登陆到你的应用中,应用程序只存储用户特定的数据。
    • 您也可以使用 Windows Azure Active Directory 添加登录功能,并在应用程序中存储用户特定的数据。

如何使用?

可以在Visual Studio 2013创建的 ASP.NET Web Form,MVC 和 SPA模板 中使用ASP.NET Identity。它也在NuGet扩展中作为NuGet软件包,并下载使用。

  • NuGet软件包

    • Microsoft.Aspnet.Identity.Core

      • 这个软件包包含了ASP.NET Identity核心接口。
    • Microsoft.Aspnet.Identity.EntityFramework
      • 此程序包包含系统实施的 ASP.NET Identity 与实体框架工作。这意味着,如果您使用此程序包,然后您可以将信息存储在 Sql Server 数据库中。
  • VS 2013预览
    • ASP.NET Web Form,MVC 和 SPA 模板有 1.0.0-alpha1 版本的 ASP.NET Identity
  • ASP.NET 和 Web工具2013预览(支持仅VS2013预览英文版)
    • ASP.NET Web Form,MVC和SPA模板1.0.0-beta1版本的ASP.NET Identity
    • 您可以通过点击上面的链接下载预览刷新
    • 以下是显着的变化 - 1.0.0-1.0.0-ALPHA1β1的
      • 这些模板中,您不再需要 IdentityConfig.cs
      • 大量的公共 Api 被重命名为 和 代码重构。
      • 交易支持已添加到框架中。

介绍 ASP.NET Identity - ASP.NET 应用程序的成员身份认证系统的更多相关文章

  1. 在ASP.NET Core中实现一个Token base的身份认证

    注:本文提到的代码示例下载地址> How to achieve a bearer token authentication and authorization in ASP.NET Core 在 ...

  2. ASP.NET Core 使用 JWT 搭建分布式无状态身份验证系统

    为什么使用 Jwt 最近,移动开发的劲头越来越足,学校搞的各种比赛都需要用手机 APP 来撑场面,所以,作为写后端的,很有必要改进一下以往的基于 Session 的身份认证方式了,理由如下: 移动端经 ...

  3. ASP.NET Web API 通过Authentication特性来实现身份认证

    using System; using System.Collections.Generic; using System.Net.Http.Headers; using System.Security ...

  4. 【ASP.NET Identity系列教程(三)】Identity高级技术

    注:本文是[ASP.NET Identity系列教程]的第三篇.本系列教程详细.完整.深入地介绍了微软的ASP.NET Identity技术,描述了如何运用ASP.NET Identity实现应用程序 ...

  5. ASP.NET Identity 三(转载)

    转载来源:http://www.cnblogs.com/r01cn/p/5194257.html 注:本文是[ASP.NET Identity系列教程]的第三篇.本系列教程详细.完整.深入地介绍了微软 ...

  6. 扩展ASP.NET Identity使用Int做主键

    当我们默认新建一个ASP.NET MVC项目的时候,使用的身份认证系统是ASP.NET Identity.但是这里的Identity使用的主键为String类型的GUID.当然这是大多数系统首先类型. ...

  7. ASP.NET Identity系列教程-4【Identity高级技术】

    https://www.cnblogs.com/r01cn/p/5194257.html 15 ASP.NET Identity高级技术 In this chapter, I finish my de ...

  8. asp.net identity 介绍

    Asp.Net Identity 设计目标 微软在 asp.net 2.0 引入了 membership,为 asp.net 应用程序提供身份验证和授权功能.membership 假定用户在网站注册, ...

  9. ASP.NET Identity V2简单介绍

    Microsoft.AspNet.Identity是微软在MVC 5.0中新引入的一种membership框架,和之前ASP.NET传统的membership以及WebPage所带来的SimpleMe ...

随机推荐

  1. Eutils用法总结

    好久没更新了,这里都长草了... 总结下Eutils的用法,参考<E-utilities Quick Start>,没时间看英文的可以参考下. 简介 Eutils全称是The Entrez ...

  2. 分布式锁实践(一)-Redis编程实现总结

    写在最前面 我在之前总结幂等性的时候,写过一种分布式锁的实现,可惜当时没有真正应用过,着实的心虚啊.正好这段时间对这部分实践了一下,也算是对之前填坑了. 分布式锁按照网上的结论,大致分为三种:1.数据 ...

  3. php接收base64编码的文件内容并保存

    <?php header('Content-type:text/html;charset=utf-8'); //读取图片文件,转换成base64编码格式 $image_file = './fac ...

  4. docker-ubuntu镜像,nginx镜像

    docker 是将程序与机器隔开,使程序不受环境影响. 安装 sudo apt-get install docker.io ## 好用的一些命令 1.停用全部运行中的容器: docker stop $ ...

  5. (2/24) 快速上手一个webpack的demo

    写在前面:该部分的安装都是基于windows系统的,且此处的webpack的版本为:3.6.0. 1.安装webpack 1.1 安装方法: 用win+R打开运行对话框,输入cmd进入命令行模式.然后 ...

  6. escape(), encodeURL(), encodeURIComponent()

    escape() 方法: 采用ISO Latin字符集对指定的字符串进行编码.所有的空格符.标点符号.特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编 ...

  7. 如何用MaskBlt实现两个位图的合并,从而实现背景透明

    我有两个位图,一个前景图,一个背景图(mask用途).请问如何用MaskBlt实现两个位图的合并,从而实现背景透明! 核心代码:dcImage.SetBkColor(crColour);dcMask. ...

  8. war项目部署流程

    准备: 1安装jdk1.7及以上版本 2安装tomcat7及以上版本 到%tomcat%/bin目录下记事本编辑server.xml, 配置<Connector>元素port端口,及< ...

  9. SQLite3学习笔记----创建数据库的两种方式

    今天研究学习SQLite,刚开始创建数据库,就遇到了一个坑,是自己粗心了,特记录一下. 实验环境: OS:Ubuntu18.04 创建数据库名称:test.db 实验步骤: 1.检查是否已经安装了SQ ...

  10. Git学习笔记-----下载GitHub上某个分支的代码

    在GitHub上的仓库里,往往建有几个分支,如果只是想下载某个分支的代码,怎么办呢? 1.需要知道远程分支的名称,及远程分支所在的Git仓库 2.按下面指令下载 git clone -b 远程分支名称 ...