C语言怎么当用户输入end结束,第53章 结束会话端点(End Session Endpoint) - Identity Server 4 中文文档(v1.0.0)...

结束会话端点可用于触发单点注销(请参阅规范)。

要使用结束会话端点,客户端应用程序会将用户的浏览器重定向到结束会话URL。用户在会话期间通过浏览器登录的所有应用程序都可以参与注销。

53.1 Parameters

id_token_hint

当用户被重定向到端点时,系统会提示他们是否真的想要注销。发送从身份验证收到的原始id_token的客户端可以绕过此提示。这是作为查询的字符串参数传递的id_token_hint。

post_logout_redirect_uri

如果id_token_hint有效传递了,则客户端也可以发送post_logout_redirect_uri参数。这可用于允许用户在注销后重定向回客户端。该值必须与客户端预先配置的PostLogoutRedirectUris`*(客户端文档)之一匹配。

State

如果post_logout_redirect_uri有效,则客户端也可以发送state参数。在用户重定向回客户端后,这将作为查询字符串参数返回给客户端。这通常由客户端用于跨重定向的往返状态。

示例

GET /connect/endsession?id_token_hint=eyJhbGciOiJSUzI1NiIsImtpZCI6IjdlOGFkZmMzMjU1OTEyNzI0ZDY4NWZmYmIwOThjNDEyIiwidHlwIjoiSldUIn0.eyJuYmYiOjE0OTE3NjUzMjEsImV4cCI6MTQ5MTc2NTYyMSwiaXNzIjoiaHR0cDovL2xvY2FsaG9zdDo1MDAwIiwiYXVkIjoianNfb2lkYyIsIm5vbmNlIjoiYTQwNGFjN2NjYWEwNGFmNzkzNmJjYTkyNTJkYTRhODUiLCJpYXQiOjE0OTE3NjUzMjEsInNpZCI6IjI2YTYzNWVmOTQ2ZjRiZGU3ZWUzMzQ2ZjFmMWY1NTZjIiwic3ViIjoiODg0MjExMTMiLCJhdXRoX3RpbWUiOjE0OTE3NjUzMTksImlkcCI6ImxvY2FsIiwiYW1yIjpbInB3ZCJdfQ.STzOWoeVYMtZdRAeRT95cMYEmClixWkmGwVH2Yyiks9BETotbSZiSfgE5kRh72kghN78N3-RgCTUmM2edB3bZx4H5ut3wWsBnZtQ2JLfhTwJAjaLE9Ykt68ovNJySbm8hjZhHzPWKh55jzshivQvTX0GdtlbcDoEA1oNONxHkpDIcr3pRoGi6YveEAFsGOeSQwzT76aId-rAALhFPkyKnVc-uB8IHtGNSyRWLFhwVqAdS3fRNO7iIs5hYRxeFSU7a5ZuUqZ6RRi-bcDhI-djKO5uAwiyhfpbpYcaY_TxXWoCmq8N8uAw9zqFsQUwcXymfOAi2UF3eFZt02hBu-shKA&post_logout_redirect_uri=http%3A%2F%2Flocalhost%3A7017%2Findex.html

注意

您可以使用IdentityModel客户端库以编程方式创建end_session请求.NET代码。有关更多信息,请查看IdentityModel文档。

第47章 授权端点(Authorize Endpoint) - Identity Server 4 中文文档(v1.0.0)

授权端点可用于通过浏览器请求令牌或授权码.此过程通常涉及最终用户的身份验证和可选的同意. 注意 IdentityServer支持OpenID Connect和OAuth 2.0授权请求参数的子集.有关 ...

第52章 撤销端点(Revocation Endpoint) - Identity Server 4 中文文档(v1.0.0)

此端点允许撤消访问令牌(仅限引用令牌)和刷新令牌.它实现了令牌撤销规范(RFC 7009). token 要撤销的令牌(必填) token_type_hint access_token或refresh ...

第51章 内省端点(Introspection Endpoint) - Identity Server 4 中文文档(v1.0.0)

内省端点是RFC 7662的实现. 它可用于验证引用令牌(如果消费者不支持适当的JWT或加密库,则可以使用JWT).内省端点需要身份验证 - 因为内省端点的客户端是API,您可以在其上配置秘密ApiR ...

第48章 UserInfo端点(UserInfo Endpoint) - Identity Server 4 中文文档(v1.0.0)

UserInfo端点可用于检索有关用户的身份信息(请参阅规范). 调用者需要发送代表用户的有效访问令牌.根据授予的范围,UserInfo端点将返回映射的声明(至少需要openid作用域). 示例 GE ...

第49章 令牌端点(Token Endpoint) - Identity Server 4 中文文档(v1.0.0)

令牌端点可用于以编程方式请求令牌.它支持password,authorization_code,client_credentials,refresh_token和urn:ietf:params:oau ...

第46章 发现端点(Discovery Endpoint) - Identity Server 4 中文文档(v1.0.0)

发现端点可用于检索有关IdentityServer的元数据 - 它返回发布者名称,密钥材料,支持的范围等信息.有关详细信息,请参阅规范. 发现端点可通过/.well-known/openid-conf ...

第22章 使用外部身份提供商登录 - Identity Server 4 中文文档(v1.0.0)

ASP.NET Core有一种灵活的方式来处理外部身份验证.这涉及几个步骤. 注意 如果您使用的是ASP.NET Identity,则会隐藏许多基础技术细节.建议您还阅读Microsoft 文档并执行 ...

第61章 IdentityServer Options - Identity Server 4 中文文档(v1.0.0)

IssuerUri 设置将在发现文档和已颁发的JWT令牌中显示的颁发者名称.建议不要设置此属性,该属性从客户端使用的主机名中推断颁发者名称. PublicOrigin 此服务器实例的来源,例如http ...

随机推荐

Cassandra-几个基本测试常识

一 使用ycsb进行装载,每次装载都不会删除以前装载过的. 因此如果想在空数据库中装载,需要先情况数据表. drop命令删除整个表,因此需要重建标头. truncate命令删除表的所有行,只留下表头, ...

spring和ehcache整合,实现基于注解的缓存实现

要实现基于注解的缓存实现,要求Spring的版本在3.1或以上版本. 首先需要在spring的配置文件中添加对缓存注解的实现: <?xml version="1.0" enc ...

layerX &amp&semi;&amp&semi; layerY

转载:https://developer.mozilla.org/en-US/docs/Web/API/UIEvent/layerX UIEvent.layerX 非标准 这个属性是非标准的属性,并且 ...

利用python分析nginx日志

最近在学习python,写了个脚本分析nginx日志,练练手.写得比较粗糙,但基本功能可以实现. 脚本功能:查找出当天访问次数前十位的IP,并获取该IP来源,并将分析结果发送邮件到指定邮箱. 实现前两 ...

linux boost 安装

sudo apt-get install libboost-dev 但是,我这样安装以后,编译程序时出现了很多错误,而且都是系统文件的错误.我开始以为是我的boost库版本不对,后来换了好几个版本,都 ...

【POJ 3279 Fliptile】开关问题,模拟

题目链接:http://poj.org/problem?id=3279 题意:给定一个n*m的坐标方格,每个位置为黑色或白色.现有如下翻转规则:每翻转一个位置的颜色,与其四连通的位置都会被翻转,但注意 ...

&lbrack;Spoj&rsqb;Counting Divisors &lpar;cube&rpar;

来自FallDream的博客,未经允许,请勿转载,谢谢. 设d(x)表示x的约数个数,求$\sum_{i=1}^{n}d(i^{3})$ There are 5 Input files. - Inpu ...

Oracle在&period;sql文件中创建存储过程

创建存储过程的语法网上到处都有. 可我执行了半天都创建不成功. 最后,发现! 在最后加个 / 就可以了!!! 真坑啊 今天连续被Oracle坑了两次了. 最后,感谢这个人https://blog.cs ...

基于C&plus;&plus;的成功-失败法演示

确定搜索区间的一维搜索算法 求多元函数 f(x) 的最优解通常采用迭代的方法: 在可行域内任取一点 x0作为初始点,从 x0 出发,按照一定的方法,一次找到 x1,x2,x3,…,xn,…, 使得某个 ...

PIVOT和UNPIVOT使用详解

一.使用PIVOT实现数据表的列转行 建表语句: DROP TABLE STUDENT; CREATE TABLE STUDENT ( 学生编号 BYTE) NULL , 姓名 BYTE) NULL ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设备授权端点(Device Authorization Endpoint)是 OAuth 2.0 设备授权流程中的一个端点,它用于在用户没有可用的 Web 浏览器或类似的用户代理的情况下,让设备完成 OAuth 2.0 授权流程。设备授权流程通常用于 IoT 设备、智能家居等场景。 IdentityModel 是一个 .NET Core 平台上的 OpenID Connect 和 OAuth 2.0 库,它提供了对设备授权端点的支持。 在 IdentityModel 中,可以使用 `DeviceAuthorizationRequest` 类来构造设备授权请求: ```csharp var client = new HttpClient(); var disco = await client.GetDiscoveryDocumentAsync("https://demo.identityserver.io"); var response = await client.RequestDeviceAuthorizationAsync(new DeviceAuthorizationRequest { Address = disco.DeviceAuthorizationEndpoint, ClientId = "client", Scope = "openid profile email api", DeviceCodeLifetime = 300 }); Console.WriteLine($"user code: {response.UserCode}"); Console.WriteLine($"device code: {response.DeviceCode}"); Console.WriteLine($"verification uri: {response.VerificationUri}"); Console.WriteLine($"expires in: {response.ExpiresIn}"); ``` 在上述代码中,我们首先使用 HttpClient 从 IdentityServer 的元数据中获取设备授权端点地址,然后构造一个设备授权请求,并发送给 IdentityServerIdentityServer 会返回一个包含设备授权信息的响应对象,我们可以从中获取用户码、设备码、验证 URI 等信息,然后将这些信息展示给用户用户需要在另一个设备上打开验证 URI,并使用用户码来完成 OAuth 2.0 授权流程。完成授权后,我们就可以使用设备码来获取访问令牌了。 ```csharp var tokenResponse = await client.RequestTokenAsync(new TokenRequest { Address = disco.TokenEndpoint, ClientId = "client", DeviceCode = response.DeviceCode }); if (tokenResponse.IsError) { Console.WriteLine(tokenResponse.Error); return; } Console.WriteLine($"access token: {tokenResponse.AccessToken}"); Console.WriteLine($"refresh token: {tokenResponse.RefreshToken}"); ``` 在上述代码中,我们使用设备码向 IdentityServer 请求访问令牌。如果授权已经完成,IdentityServer 将会返回一个包含访问令牌的响应对象,我们可以从中获取访问令牌和刷新令牌。有了访问令牌,我们就可以访问资源服务器了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值