一.开篇寄语

  由于假期的无聊,我决定了一个非常有挑战性的活动,也就是在年假给大家带来一个基于OAuth 2.0的身份授权框架,它就是 IdentityServer4 ,如果没有意外的话,一定可以顺利的写完的,如果两天写一篇的话!如果觉得期待的话,可以点个收藏,当然如果由于太忙还是怎样耽误了写作效率,请多担待(我觉得我精力是足够的!)那么废话少说,下面我来介绍一下IdentityServer4是个啥?

二.IdentityServer4介绍

  IdentityServer4是ASP.NET Core 2的OpenID Connect和OAuth 2.0框架,可以做的功能有SSO(单点登陆)、Api 控制、身份认证服务等。它是一个开源的项目,最重要的是IdentityServer可以由你自己定制来适应你的解决方案!这非常的友好。为什么要有它,在现在杂七杂八的的框架和语言来说,是配一套完美的应用是非常困难,每个模块由很难统一,所以IdentityServer4就给我们带来了糖果。

三.大体内容

基于IdentityServer4进行统一认证单点登陆、Api 身份验证、授权服务、EntityFramework的配置的支持、登录注销等。

四.文章

.NET Core IdentityServer4实战 第一章-入门与API添加客户端凭据

.NET Core IdentityServer4实战 第二章-使用OpenID Connect添加用户认证

.NET Core IdentityServer4实战 第三章-使用EntityFramework Core进行持久化配置

五.为什么要用它

  大多数的应用都如上所示,基本上都是通过客户端对API进行请求(浏览器、Web程序、本机应用程序)等。当你的项目到了一定得范围和大小之后,就有可能去使用Nginx,这个时候,也必须考虑站点的安全性,因为不能让你的核心业务信任外界任何的调用.当然还有的时候,我们的拥有自己的一套API,为自己服务进行使用,我们不想让别人来调用我们的,这个时候也可以进行使用。

  如果使用了IdentityServer4来保护我们的API,项目的层级就变成了这样。

  

  例如博客园的一个功能,如果你没有登录那就只能访问博客园公共部分,如果你登录了,你就可以肆意翱翔,当然这个栗子不是很恰当。。

六.概念

  

   OpenID :它何我们的身份证一样,你干什么事情都需要身份,那么XXX想要知道你有没有问题,就要去查询下你这个ID有没有毛病,有毛病就go away,没毛病就喊老铁。

   OAuth 2.0 :OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。

    OpenId Connect :emmm,例如呢你的网站接入了QQ的第三方登录,它是被大多程序员叫做身份层,这个大体的协议叫做OIDC。OpenID是Authentication,即认证,对用户的身份进行认证,判断其身份是否有效,也就是让网站知道 “你是你所声称的那个用户”;


七.结语

关于IdentityServer4的项目地址:https://github.com/IdentityServer,官方网站:http://docs.identityserver.io/en/latest/index.html。我是用的IDE是VS2019,当然你用17也可以,如果你用其他版本的,我劝你另寻他处:)

  尽情期待。

.NET Core IdentityServer4实战-开篇介绍与规划的更多相关文章

  1. .NET Core IdentityServer4实战 第三章-使用EntityFramework Core进行持久化配置

    内容:本文带大家使用IdentityServer4进行使用使用EntityFramework Core进行配置和操作数据 作者:zara(张子浩) 欢迎分享,但需在文章鲜明处留下原文地址. 前两章内容 ...

  2. .NET Core IdentityServer4实战 第一章-入门与API添加客户端凭据

    内容:本文带大家使用IdentityServer4进行对API授权保护的基本策略 作者:zara(张子浩) 欢迎分享,但需在文章鲜明处留下原文地址. 本文将要讲述如何使用IdentityServer4 ...

  3. .NET Core IdentityServer4实战 第Ⅳ章-集成密码登陆模式

    回顾下ClientCredentials模式,在ReSourceApi中定义了我们公开服务,第三方网站想要去访问ReSourceApi则需要在身份验证服务中获取toekn,根据token的内容,硬编码 ...

  4. .NET Core IdentityServer4实战 第Ⅴ章-单点登录

    OiDc可以说是OAuth的改造版,在最初的OAuth中,我们需要先请求一下认证服务器获取下Access_token,然后根据Access_token去Get资源服务器, 况且OAuth1 和 2 完 ...

  5. [ASP.NET Core开发实战]开篇词

    前言 本系列课程文章主要是学习官方文档,再输出自己学习心得,希望对你有所帮助. 课程大纲 本系列课程主要分为三个部分:基础篇.实战篇和部署篇. 希望通过本系列课程,能让大家初步掌握使用ASP.NET ...

  6. .NET Core IdentityServer4实战 第二章-OpenID Connect添加用户认证

    内容:本文带大家使用IdentityServer4进行使用OpenID Connect添加用户认证 作者:zara(张子浩) 欢迎分享,但需在文章鲜明处留下原文地址. 在这一篇文章中我们希望使用Ope ...

  7. .NET Core IdentityServer4实战 第六章-Consent授权页

    在identityServer4中登陆页面只要是成功了,就会注册一个Cookie在服务器资源上,像现在大部分的网站第三方授权,都是经过一个页面,然后选需要的功能,IdentityServer4也给我们 ...

  8. 【.NET Core项目实战-统一认证平台】第九章 授权篇-使用Dapper持久化IdentityServer4

    [.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章介绍了IdentityServer4的源码分析的内容,让我们知道了IdentityServer4的一些运行原理,这篇将介绍如何使用d ...

  9. 【.NET Core项目实战-统一认证平台】第八章 授权篇-IdentityServer4源码分析

    [.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章我介绍了如何在网关上实现客户端自定义限流功能,基本完成了关于网关的一些自定义扩展需求,后面几篇将介绍基于IdentityServer ...

随机推荐

  1. SOFA 源码分析 — 自定义线程池原理

    前言 在 SOFA-RPC 的官方介绍里,介绍了自定义线程池,可以为指定服务设置一个独立的业务线程池,和 SOFARPC 自身的业务线程池是隔离的.多个服务可以共用一个独立的线程池. API使用方式如 ...

  2. 利用arcserver 自带tomcat实现上传shapefile、cad等文件,然后用soe解析。

    一.功能实现分析 1.soe中传入指定路径目录和文件名就能读取shp.cad并解析,然后返回JSON格式数据给flex端生成图形.(soe读取的是本地绝对路径) 2.所以首先要上传文件到soe发布所在 ...

  3. 重载new和delete来检测内存泄漏

    重载new和delete来检测内存泄漏 1. 简述 内存泄漏属于资源泄漏的一种,百度百科将内存泄漏分为四种:常发性内存泄漏.偶发性内存泄漏.一次性内存泄漏和隐式内存泄漏.    常发性指:内存泄漏的代 ...

  4. .NET之Dapper框架运用

    Dapper框架 1.项目引用Dapper的Nuget程序包; 2.配置链接类 using System; using System.Collections.Generic; using System ...

  5. Python_pickle模块操作二进制文件

    import pickle b=7 i=13000000 fa=99.056 s='中国人民 123abc' lst=[[1,2,3],[4,5,6],[7,8,9]] tu=(-5,10,8) co ...

  6. Jenkins配置报告与邮件插件

    用jenkins做持续集成时,需要发送报告与邮件,下面说一下如何配置报告与邮件的插件 1:配置报告插件 我们先装一个Report插件,在系统管理-管理插件中找  HTML Publisher plug ...

  7. Archlinux安裝指南(uefi+gpt)

    1.系统安装前的一些准备 首先在Archlinux官网下载镜像文件,然后刻录到U盘或光盘上.在我的机器上刻录arch镜像文件到U盘后启动不了,因为时间问题我没做过多的探索,所以后面直接刻录到光盘,用光 ...

  8. PAT1065: A+B and C (64bit)

    1065. A+B and C (64bit) (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 HOU, Qiming G ...

  9. Redis配置文件中关于bind参数

    在配置文件redis.conf中,默认的bind 接口是127.0.0.1,也就是本地回环地址.这样的话,访问redis服务只能通过本机的客户端连接,而无法通过远程连接,这样可以避免将redis服务暴 ...

  10. 玩转CSS3(一)----CSS3实现页面布局

    请珍惜小编劳动成果,该文章为小编原创,转载请注明出处. 摘要:     CSS3相对CSS2增加了一些新的布局方式:多栏布局和盒子布局.在这篇文章中,将对CSS2的布局进行简单的回忆,并总结CSS3的 ...