基于上一篇文章中的代码进行继续延伸,只需要小小的改动即可,不明白的地方可以先看看本人上一篇文章及源码: Identity Server 4客户端认证控制访问API

一、QuickStartIdentityServer4项目中Config.cs增加如下配置

// 定义客户端认证方式
public static IEnumerable<Client> Clients => new[]
{
// 客户端认证
new Client
{
ClientId="sample_client", // 客户端id
ClientSecrets =
{
new Secret("sample_client_secret".Sha256()) // 客户端秘钥 },
AllowedGrantTypes=GrantTypes.ClientCredentials, // 授权类型为客户端
AllowedScopes={ "sample_api" } // 设置该客户端允许访问的api范围
},
// 资源拥有者认证
new Client
{
ClientId="sample_pass_client", // 客户端id
ClientSecrets =
{
new Secret("sample_client_secret".Sha256()) // 客户端秘钥 },
AllowedGrantTypes=GrantTypes.ResourceOwnerPassword, // 授权类型为资源拥有者
AllowedScopes={ "sample_api" } // 设置该客户端允许访问的api范围
}
};

二、Client项目中增加模拟请求资源拥有者认证,其他代码不变

// 资源拥有者认证
var tokenResponse = await client.RequestPasswordTokenAsync(
new PasswordTokenRequest
{
Address = disco.TokenEndpoint,
ClientId = "sample_pass_client",
ClientSecret = "sample_client_secret",
UserName="admin",
Password="123"
}
);

三、项目测试

1、’postman模拟请求 http://localhost:5001/connect/token 获取token

 2、使用token请求api

 3、Client项目模拟客户端请求

Identity Server 4资源拥有者密码认证控制访问API的更多相关文章

  1. Identity Server 4客户端认证控制访问API

    项目源码: 链接:https://pan.baidu.com/s/1H3Y0ct8xgfVkgq4XsniqFA 提取码:nzl3 一.说明 我们将定义一个api和要访问它的客户端,客户端将在iden ...

  2. IdentityServer4之Resource Owner Password Credentials(资源拥有者密码凭据许可)

    IdentityServer4之Resource Owner Password Credentials(资源拥有者密码凭据许可) 参考 官方文档:2_resource_owner_passwords ...

  3. Identity Server 4使用OpenID Connect添加用户身份验证(三)

    一.说明 基于上一篇文章中的代码进行继续延伸,只需要小小的改动即可,不明白的地方可以先看看本人上一篇文章及源码: Identity Server 4资源拥有者密码认证控制访问API(二) GitHub ...

  4. .NET 云原生架构师训练营(Identity Server)--学习笔记

    目录 OAuth 2.0 OpenID Connect QuickStart OAuth 2.0 概念 过程 通信 组件 示例代码 概念 OAuth 2.0 是一个授权协议,它允许软件应用代表(而不是 ...

  5. IdentityServer4(8)- 使用密码认证方式控制API访问(资源所有者密码授权模式)

    一.前言 本文已经更新到 .NET Core 2.2 OAuth 2.0 资源所有者密码模式允许客户端向令牌服务发送用户名和密码,并获取代表该用户的访问令牌. 除了通过无法浏览器进行交互的应用程序之外 ...

  6. 第37章 资源所有者密码验证(Resource Owner Password Validation) - Identity Server 4 中文文档(v1.0.0)

    如果要使用OAuth 2.0资源所有者密码凭据授权(aka password),则需要实现并注册IResourceOwnerPasswordValidator接口: public interface ...

  7. Identity Server 4 - Hybrid Flow - 使用ABAC保护MVC客户端和API资源

    这个系列文章介绍的是Identity Server 4 实施 OpenID Connect 的 Hybrid Flow. 保护MVC客户端: https://www.cnblogs.com/cgzl/ ...

  8. 微服务系列之授权认证(二) identity server 4

    1.简介 IdentityServer4 是为ASP.NET Core系列量身打造的一款基于 OpenID Connect 和 OAuth 2.0 认证授权框架. 官方文档:https://ident ...

  9. ASP.NET Core的身份认证框架IdentityServer4(8)- 使用密码认证方式控制API访问

    前言 本文及IdentityServer这个系列使用的都是基于.net core 2.0的.上一篇博文在API项目中我使用了icrosoft.AspNetCore.Authentication.Jwt ...

随机推荐

  1. BootstrapBlazor实战 Menu 导航菜单使用(1)

    实战BootstrapBlazorMenu 导航菜单的使用, 以及整合Freesql orm快速制作菜单项数据库后台维护页面 demo演示的是Sqlite驱动,FreeSql支持多种数据库,MySql ...

  2. .Net Core Razor动态菜单实现

    准备 1.框架 .netcore  版本 yishaadmin开源框架 2.模板 本文模板使用adminlte3.0,文档地址https://adminlte.io/docs/3.0/ 3.菜单表 关 ...

  3. Springcloud及Git线上配置详解

    SpringCloud 这个阶段该如何学? 三层架构 + MVC 框架: Spring IOC AOP SpringBoot,新一代的JavaEE开发标准,自动装配 模块化~ all in one,代 ...

  4. vue中blob文件下载及其它下载方式

    一.Blob对象的了解 1:blob表示一个不可变.原始数据的类文件对象.Blob()构造函数返回一个新的blob对象:blob对象的内容由参数给出的值串联组成: 2:new Blob(array, ...

  5. Spring Boot下Spring Batch入门实例

    一.About Spring Batch是什么能干什么,网上一搜就有,但是就是没有入门实例,能找到的例子也都是2.0的,看文档都是英文无从下手~~~,使用当前最新的版本整合网络上找到的例子. 关于基础 ...

  6. 检查MySQL主从复制运行状态

    脚本思路: 1.使用MySQL客户端命令"mysql"直接在命令行中运行MySQL指令"show slave status\G;"来查看MySQL主从复制状态信 ...

  7. .net 获取IP地址的几种方式

    1.获取服务器IP地址: 1) Local_Addr var Local_Addr = Request.ServerVariables.Get("Local_Addr").ToSt ...

  8. STM32启动文件

    一.复位电路 在了解启动文件之前需要明白STM32的复位中断流程,STM32的复位分为上电复位和手动复位,复位的电路图如下所示: 注意: 图中的复位电路是低电平复位,有的MCU是高电平复位. 上电复位 ...

  9. Web 前端实战(三):雷达图

    前言 在<Canvas 线性图形(五):多边形>实现了绘制多边形的函数.本篇文章将记录如何绘制雷达图.最终实现的效果是这样的: 绘制雷达图 雷达图里外层 如动图中所示,雷达图从里到外一共有 ...

  10. 彰显个性│github和gitlab之自定义首页样式

    目录 一.个性首页 二.制作步骤 三.修改内容 一.个性首页 相信很多小伙伴在逛 github 和 gitlab 的时候 会发现很多开发者的首页异常的炫酷,如 https://github.com/c ...