OAuth 2.0资源所有者密码授权允许客户端向令牌服务发送用户名和密码,并获取代表该用户的访问令牌. 除了无法承载浏览器的旧应用程序之外,规范通常建议不要使用资源所有者密码授予.一般来说,当您要对用户进行身份验证并请求访问令牌时,使用其中一个交互式OpenID Connect流程通常要好得多. 然而,这个授权类型允许我们在 IdentityServer 快速入门中引入 用户 的概念,这是我们要展示它的原因. 10.1 添加用户 就像基于内存存储的资源(即 范围 Scopes)和客户端一样,对于…
第65章 博客帖子 65.1 团队帖子 65.1.1 2019 IdentityServer中的范围和声明设计 尝试使用IdentityServer4的设备流程 OAuth2中隐含流的状态 另一种保护SPA的方法(使用ASP.NET Core,OpenID Connect,OAuth 2.0和ProxyKit ASP.NET核心中的自动OAuth 2.0令牌管理 加密IdentityServer4中的身份令牌 65.1.2 2018 IdentityServer4更新 IdentityServe…
快速入门介绍了使用IdentityServer保护API的最基本方案. 我们将定义一个API和一个想要访问它的客户端. 客户端将通过提供ClientCredentials在IdentityServer请求访问令牌,ClientCredentials充当客户端和IdentityServer都知道的秘密,并且它将使用该令牌来访问API. 9.1设置ASP.NET核心应用程序 首先为应用程序创建一个目录 - 然后使用我们的模板创建一个包含基本IdentityServer设置的ASP.NET Core应…
IdentityServer 默认以JWT(JSON Web令牌)格式发出访问令牌. 今天的每个相关平台都支持验证JWT令牌,这里可以找到一个很好的JWT库列表.热门库例如: ASP.NET Core的JWT bearer authentication handler Katana的JWT bearer authentication middleware Katana的IdentityServer authentication middleware NodeJS的jsonwebtoken 保护基…
本快速入门将展示如何构建基于浏览器的JavaScript客户端应用程序(有时称为" SPA "). 用户将登录IdentityServer,使用IdentityServer发出的访问令牌调用We​​b API,并注销IdentityServer.所有这些都将来自浏览器中运行的JavaScript. 14.1 JavaScript客户端的新项目 为JavaScript应用程序创建一个新项目.它可以只是一个空的Web项目,一个空的ASP.NET Core应用程序,或者像Node.js应用程…
IdentityServer由许多nuget包组成. 4.1 IdentityServer4 nuget | github上 包含核心IdentityServer对象模型,服务和中间件.仅包含对内存配置和用户存储的支持 - 但您可以通过配置插入对其他存储的支持.这是其他仓库和程序包相关的内容. 4.2 Quickstart UI github上 包含一个简单的入门UI,包括登录,注销和授权确认页面. 4.3 Access token validation handler nuget | gith…
在支持的平台上,您可以使用IdentityServer使用Windows身份验证对用户进行身份验证(例如,针对Active Directory).当前使用以下命令托管IdentityServer时,Windows身份验证可用: Kestrel在Windows上使用IIS和IIS集成包 Windows上的HTTP.sys服务器 在这两种情况下,使用方案"Windows"在HttpContext上使用ChallengeAsync API来触发Windows身份验证.我们的快速入门UI中的帐…
IIdentityServerInteractionService接口旨在提供用户界面用于与IdentityServer通信的服务,主要与用户交互有关.它可以从依赖注入系统获得,通常作为构造函数参数注入到IdentityServer的用户界面的MVC控制器中. 59.1 IIdentityServerInteractionService APIs GetAuthorizationContextAsync 基于传递给登录或同意页面的returnUrl返回AuthorizationRequest.…
除了对OpenID Connect和OAuth 2.0的内置支持之外,IdentityServer4还允许添加对其他协议的支持. 您可以将这些附加协议端点添加为中间件或使用例如MVC控制器.在这两种情况下,您都可以访问ASP.NET Core DI系统,该系统允许重用我们的内部服务,例如访问客户端定义或密钥材料. 可以在此处找到添加WS-Federation支持的示例. 44.1 典型认证工作流程 身份验证请求通常如下所示: 身份验证请求到达协议端点 协议端点执行输入验证 重定向到登录页面,返回…
IdentityServer实现以下规范: 3.1 OpenID Connect OpenID Connect Core 1.0 (规范) OpenID Connect Discovery 1.0 (规范) OpenID Connect Session Management 1.0 - draft 28 (规范) OpenID Connect Front-Channel Logout 1.0 - draft 02 (规范) OpenID Connect Back-Channel Logout 1…