asp.net5中的用户认证与授权(1)

 更新时间:2021年9月22日 10:09  点击:2217

就在最近一段时间,微软又有大动作了,在IDE方面除了给我们发布了Viausl Studio 2013 社区版还发布了全新的Visual Studio 2015 Preview。

asp.net5中,关于用户的认证和授权提供了非常丰富的功能,如果结合ef7的话,可以自动生成相关的数据库表,调用也很方便。

但是,要理解这么一大堆关于认证授权的类,或者想按照自己项目的特定要求对认证授权进行定制,确实很头疼。为了解决这个问题,需要从根本上理解认证和授权的机制,不过这不是个简单的事情,一些概念也比较抽象,为了方便理解,这里我用最简单的实例来演示如何进行认证和授权,而且是在不使用ef,不使用数据库的情况下,单纯的演示认证和授权本身。

要进行认证,首先你要有用户,这里我们建立一个用户类如下:

/// <summary>
 /// 用户
 /// </summary>
 public class HDUser
 {
  /// <summary>
  /// 用户ID
  /// </summary>
  public string Id { get; set; }
  /// <summary>
  /// 登录名
  /// </summary>
  public string UserName { get; set; }
  /// <summary>
  /// 规范用户名
  /// </summary>
  public string NormalizedUserName { get; set; }
  /// <summary>
  /// 密码
  /// </summary>
  public string PassWord { get; set; }
  /// <summary>
  /// 哈希编码后的密码
  /// </summary>
  public string PasswordHash { get; set; }
  /// <summary>
  /// 用户具有的角色
  /// </summary>
  public virtual ICollection<HDUserRole> Roles { get; private set; } = new List<HDUserRole>();
 }

这里,HDUser类的字段大部分比较容易理解,就那个NormalizedUserName难理解一些,可以简单认为是UserName的大写形式好了。

然后是角色类:

 /// <summary>
 /// 角色
 /// </summary>
 public class HDRole
 {
  /// <summary>
  /// 角色ID
  /// </summary>
  public string Id { get; set; }
  /// <summary>
  /// 角色名称
  /// </summary>
  public string Name { get; set; }
 }

有了用户和角色,要建立起用户和角色的关系,就需要用户角色类:

/// <summary>
 /// 用户角色对应关系
 /// </summary>
 public class HDUserRole
 {
  /// <summary>
  /// 用户ID
  /// </summary>
  public virtual string UserId { get; set; }
  /// <summary>
  ///角色ID
  /// </summary>
  public virtual string RoleId { get; set; }
 }

这样,最基础的三个类我们就都建立起来了。

好了,以上通过一个简单实例介绍了asp.net5中的用户认证与授权(1),下篇继续跟大家介绍asp.net5中的用户认证与授权(2),需要的朋友之间点击查看就可以了。

[!--infotagslink--]

相关文章

  • Springboot如何实现Web系统License授权认证

    这篇文章主要介绍了Springboot如何实现Web系统License授权认证,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-05-28
  • 微信小程序用户授权最佳实践指南

    这篇文章主要给大家介绍了关于微信小程序用户授权最佳实践的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-08
  • 手机未实名认证被停机了怎么办?中国移动/联通/电信手机号实名认证方法

    ,“手机实名制”就是每一个手机号码对应一个身份证,对应唯一真实的主人。如果不认证可能会陆续遭到停机,这该怎么办呢?手机怎么认证呢?下面就详情来看看移动联通电信手机号实名认证方式吧...2016-11-01
  • MySQL中用户授权以及删除授权的方法

    这篇文章主要介绍了MySQL中用户授权以及删除授权的方法的相关资料,需要的朋友可以参考下...2015-12-27
  • 详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现

    这篇文章主要介绍了详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现的相关资料,需要的朋友可以参考下...2017-03-13
  • 微信小程序授权登录的优雅处理方式

    这篇文章主要给大家介绍了关于微信小程序授权登录的优雅处理方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-10
  • asp.net core MVC之实现基于token的认证

    这篇文章主要介绍了asp.net core MVC之实现基于token的认证,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-07
  • 关于C#.net winform程序验证moss的集成身份认证实例

    因为网站使用的是windows集成认证,所以遇到了权限问题,需要输入密码。使操作和用户体验非常不方便,研究了好久没有找到好的方法,最后终于让我踏破铁鞋总结出了下面的方法...2020-06-25
  • ASP.NET Core使用JWT认证授权的方法

    这篇文章主要介绍了ASP.NET Core使用JWT认证授权的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-09-22
  • Nginx上配置Basic Authorization登录认服务证的教程

    现在我们所使用的包括社交网络API等开放平台授权获得用户的用户名和密码一般有两种认证方式,一种是Basic Auth,一种是OAuth,这里我们就来看一下Nginx上配置Basic Authorization登录认服务证的教程...2016-08-27
  • 完美解决mysql客户端授权后连接失败的问题

    下面小编就为大家带来一篇完美解决mysql客户端授权后连接失败的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2017-04-03
  • ASP.NET Core学习之使用JWT认证授权详解

    这篇文章主要给大家介绍了关于ASP.NET Core学习之使用JWT认证授权的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用ASP.NET Core具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2021-09-22
  • .net core webapi jwt 更为清爽的认证详解

    这篇文章主要介绍了.net core webapi jwt 更为清爽的认证详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2021-09-22
  • Apache如何增加.htaccess文件增加用户认证

    首先用htpasswd创建一个密码文件:比如文件名叫做my.passwd /home/apache/bin/htpasswd -c -b my.passwd myusername mypassword 如果增加帐号: /home/apache/bin/htpasswd...2016-01-28
  • Springboot shiro认证授权实现原理及实例

    这篇文章主要介绍了Springboot shiro认证授权实现原理及实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-11
  • 浅析MongoDB之安全认证

    MongoDB是基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。默认情况下,MongoDB实例启动运行时是没有启用用户访问权限控制的,在实例本机服务器上都可以随意连接到实例进行各种操作,MongoDB不会对连接客户端进行用户验证...2021-06-26
  • Nginx用户认证配置方法详解(域名/目录)

    Nginx超级强大它可以单独为一个域名设置用户认证,方法也很简单我们只要生成用户认证的用户名和密码,然后再Nginx添加auth认证配置即可...2016-01-27
  • asp.net5中的用户认证与授权(1)

    Visual Studio 2015 Preview 除了给我们带了了C# 6.0的新语法、跨移动的开发以外,还给我们带来了ASP.NET5(也就是之前被称作下一代ASP.NET的ASP.NET vNext)。本文给大家介绍asp.net5中的用户认证与授权(1),需要的朋友可以参考下...2021-09-22
  • 利用go-zero在Go中快速实现JWT认证的步骤详解

    这篇文章主要介绍了如何利用go-zero在Go中快速实现JWT认证,本文分步骤通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧...2020-10-26
  • python-jwt用户认证食用教学的实现方法

    这篇文章主要介绍了python-jwt用户认证食用教学的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-01-19