专栏首页dotNET知音JWT已死,IdentityServer4当立?

JWT已死,IdentityServer4当立?

  目前大多数的应用程序或多或少看起来是上图所示这样的,最常见的交互场景有(浏览器与Web应用程序、Web应用程序与WebApi通讯、本地应用程序狱WebApi通讯、基于浏览器的应用程序与WebApi 通讯、基本服务器的应用程序与WebApi通讯、WebApi与WebApi通讯)。

  前端、中间层、后端各个层级为了保护资源经常要针对相同的用户仓储区实现身份认证和授权,但是如果我们把这些基本的安全功能统一颁发给一个安全令牌服务,就可以不必再让这些应用和端点之间重复实现这些基础安全功能,重组应用程序以支持安全令牌服务将会引导出以下体系结构和协议,这样的设计将会把安全问题分为两个部分:(身份验证和API访问),而这些,依靠IdentityServer4(简称ID4)可以轻松做到。

IdentityServer4是什么?

ID4是ASP.NET Core 2的OpenID Connect和OAuth 2.0框架,可以做的功能有SSO(单点登陆)、Api 控制、身份认证服务等。它是一个开源的项目,最重要的是ID4可以由你自己定制来适应你的解决方案,这非常的友好。为什么要有它?在现在杂七杂八的的框架和语言来说,是配一套完美的应用是非常困难,每个模块由很难统一,所以IdentityServer4就给我们带来了糖果。它将规范兼容的OpenID Connect和OAuth 2.0端点添加到任意ASP.NET Core应用程序的中间件。通常,您构建(或重新使用)包含登录和注销页面的应用程序,IdentityServer中间件会向其添加必要的协议头,以便客户端应用程序可以与其对话 使用这些标准协议。

identityserver4的特点

  • 认证服务:可以为你的应用(如网站、本地应用、移动端、服务)做集中式的登录逻辑和工作流控制。IdentityServer是完全实现了OpenID Connect协议标准。
  • 单点登录登出(SSO):在各种类型的应用上实现单点登录登出。
  • API访问控制:为各种各样的客户端颁发access token令牌,如服务与服务之间的通讯、网站应用、SPAS和本地应用或者移动应用。
  • 联合网关:支持来自Azure Active Directory, Google, Facebook这些知名应用的身份认证,可以不必关心连接到这些应用的细节就可以保护你的应用。
  • 专注于定制:最重要的是identityserver可以根据需求自行开发来适应应用程序的变化。identityserver不是一个框架、也不是一个盒装产品或一个saas系统,您可以编写代码来适应各种场景。
  • 成熟的开源系统:IdentityServer拥有apache 2 授权许可,允许构建商业化的应用,也是.net基金会组织的成员之一,并未其提供法律支持。
  • 免费和商业支持:如果您在构建和运行你的身份认证平台时需要帮助,我们可以通过几种方法帮助您。

本文分享自微信公众号 - dotNET知音(AAshiyou),作者:程序员有道

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-09-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 推荐一个很棒的开源工作流elsa-core

    开源项目orchard主要开发人员Sipke Schoorstra 开源了一个netcore 工作流项目,地址:https://github.com/elsa-...

    李明成
  • Web 家族又新填一门语言!WASM 终于被 Web 正式被接纳了

    经万维网联盟 W3C 认证的 Web 语言有 HTML、CSS 与 JavaScript,而近日该联盟正式宣布 WebAssembly 核心规范(WebAsse...

    李明成
  • 基于C#开发的浏览器隐身工具-上班别乱开

    采用时下流行的车机交互系统,主打“小透明”隐身访问功能,有了他你就可以(上班)肆意的开车遨游互联网了。测一测你的版本:https://liulanmi.com/...

    李明成
  • 「应用架构」六边型架构:三个原则和一个实现示例

    Hexagonal Architecture于2005年由Alistair Cockburn撰写,是一个具有许多优势的软件架构,自2015年以来又重新引起了人们...

    首席架构师智库
  • 苹果进入下一个十年!抛弃英特尔,WWDC官宣将Mac迁移至自研芯片,首批年底上市

    就在刚刚,面对空无一人的Apple Park观众席,苹果CEO库克和以Memoji的形象出现在屏幕上开发者们一起,见证了他口中的这个“历史性的时刻”。

    大数据文摘
  • 如何持续优化项目内的图片

    由于包体积优化是一个持续的过程,但是人为手动调整图片等过于耗时,所以整和了下shell 指令,并提供一次分享,方便调整项目内的图片文件。 方案会是一个IOS/A...

    逮虾户
  • 开始使用-初尝胜果 顶

    本页介绍如何“测试驱动器”Flutter:从我们的模板创建一个新的Flutter应用程序,运行它,并学习如何使用Hot Reload进行更改。

    南郭先生
  • 世界上最著名也最危险的APT恶意软件清单

    本文尝试列举出由各国军事情报处的网络安全部门开发的最危险、最有效也是最闻名的恶意软件清单,其中有些可以说早已盛名在外,另一些可能你还没听过……然而这正是它最危险...

    FB客服
  • 遇见大数据可视化:基础研究

    数据可视化的目的是有两个:一个是更好地分享和传达数据信息,二个是通过设计之美有效地缩短信息的传达。本文将分享大数据可视化的相关概念和期缴,帮助大家培养一种全新的...

    腾讯大数据可视化设计团队
  • Linux 最常用命令:解决 95% 以上的问题

    Linux是目前应用最广泛的服务器操作系统,基于Unix,开源免费,由于系统的稳定性和安全性,市场占有率很高,几乎成为程序代码运行的最佳系统环境。linux不仅...

    秃头哥编程

扫码关注云+社区

领取腾讯云代金券