授权端点可用于通过浏览器请求令牌或授权码。此过程通常涉及最终用户的身份验证和可选的同意。

注意

IdentityServer支持OpenID Connect和OAuth 2.0授权请求参数的子集。有关完整列表,请参见此处

  • client_id

    客户的标识符(必填)。

  • scope

    一个或多个注册范围(必填)

  • redirect_uri

    必须与该客户端允许的重定向URI之一完全匹配(必需)

  • response_type

    • id_token 请求身份令牌(仅允许身份范围)
    • token 请求访问令牌(仅允许资源范围)
    • id_token token 请求身份令牌和访问令牌
    • code 请求授权码
    • code id_token 请求授权代码和身份令牌
    • code id_token token 请求授权代码,身份令牌和访问令牌
  • response_mode

    • form_post 将令牌响应作为表单发送而不是片段编码重定向(可选)
  • state

    identityserver将回显令牌响应的状态值,这是针对客户端和提供者之间的往返状态,关联请求和响应以及CSRF /重放保护。(推荐的)

  • nonce

    identityserver将回显身份令牌中的nonce值,这是为了重放保护)

    通过隐式授权对身份令牌是必需的。

  • prompt

    • none请求期间不会显示任何UI。如果这是不可能的(例如,因为用户必须登录或同意),则返回错误
    • login 即使用户已登录并具有有效会话,也会显示登录UI
  • code_challenge

    发送PKCE的代码质询

  • code_challenge_method

    plain表示挑战是使用纯文本(不推荐) S256表示使用SHA256对挑战进行哈希处理

  • login_hint

    可用于预先填写登录页面上的用户名字段

  • ui_locales

    提供有关登录UI所需显示语言的提示

  • max_age

    如果用户的登录会话超过最大年龄(以秒为单位),将显示登录UI

  • acr_values

    允许传递其他身份验证相关信息 - 身份服务器特殊情况下面的专有acr_values:

    • idp:name_of_idp 绕过login / home领域屏幕并将用户直接转发到选定的身份提供者(如果允许每个客户端配置)
    • tenant:name_of_tenant 可用于将租户名称传递给登录UI

GET /connect/authorize?
client_id=client1&
scope=openid email api1&
response_type=id_token token&
redirect_uri=https://myapp/callback&
state=abc&
nonce=xyz

(删除了URL编码,并添加了换行符以提高可读性)

注意

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

github地址

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

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

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

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

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

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

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

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

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

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

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

  6. 第50章 设备授权端点(Device Authorization Endpoint) - Identity Server 4 中文文档(v1.0.0)

    设备授权端点可用于请求设备和用户代码.此端点用于启动设备流授权过程. 注意 终端会话端点的URL可通过发现端点获得. client_id 客户标识符(必填) client_secret 客户端密钥可以 ...

  7. 第53章 结束会话端点(End Session Endpoint) - Identity Server 4 中文文档(v1.0.0)

    结束会话端点可用于触发单点注销(请参阅规范). 要使用结束会话端点,客户端应用程序会将用户的浏览器重定向到结束会话URL.用户在会话期间通过浏览器登录的所有应用程序都可以参与注销. 注意 终端会话端点 ...

  8. 第60章 设备流交互服务 - Identity Server 4 中文文档(v1.0.0)

    该IDeviceFlowInteractionService接口旨在提供用户界面用于在设备流授权期间与IdentityServer通信的服务.它可以从依赖注入系统获得,通常作为构造函数参数注入到Ide ...

  9. 第5章 支持和咨询选项 - Identity Server 4 中文文档(v1.0.0)

    我们为IdentityServer提供了多种免费和商业支持和咨询选项. 5.1 免费支持 免费支持是基于社区的,并使用公共论坛 5.1.1 StackOverflow StackOverflow 社区 ...

随机推荐

  1. Eclipse自动补全调教

    方法来自http://www.cnblogs.com/sunjie21/archive/2012/06/28/2567463.html 调教后可以做到: 1. sout + Tab 输出System. ...

  2. async ,await 有图有真相

    1.async返回的一定是promise对象 2.await确实可以同步:

  3. python从入门到实践-10章文件和异常(括号问题)

    #!/user/bin/env python# -*- coding:utf-8 -*- # 1.从文件中读取数据with open('pi_digits.txt') as file_object: ...

  4. 使用Kubeadm(1.13+)快速搭建Kubernetes集群

    Kubeadm是管理集群生命周期的重要工具,从创建到配置再到升级,Kubeadm处理现有硬件上的生产集群的引导,并以最佳实践方式配置核心Kubernetes组件,以便为新节点提供安全而简单的连接流程并 ...

  5. 【转载】CSS3 文字溶解效果

    代码如下: <!DOCTYPE html> <html > <head> <meta charset="UTF-8"> <ti ...

  6. [Swift]LeetCode301. 删除无效的括号 | Remove Invalid Parentheses

    Remove the minimum number of invalid parentheses in order to make the input string valid. Return all ...

  7. [Swift]LeetCode325. 最大子数组之和为k $ Maximum Size Subarray Sum Equals k

    Given an array nums and a target value k, find the maximum length of a subarray that sums to k. If t ...

  8. [Swift]LeetCode731. 我的日程安排表 II | My Calendar II

    Implement a MyCalendarTwoclass to store your events. A new event can be added if adding the event wi ...

  9. TCP的三次握手与四次挥手(个人总结)

    序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生:给字节编上序号后,就给每一个报文段指派一个序号:序列号seq就是这个报文 ...

  10. Jmeter-常用线程组设置及场景运行时间计算

    Jmeter中通过线程组来模拟大用户并发场景,今天主要介绍三个常用的线程组,帮助我们设计更加完善的测试场景,另外介绍下场景执行时间如何计算. 一.Thread Group 取样器错误后要执行的动作   ...