12.7.3.2. executor
executor 指定在采用策略的客户端上执行什么操作。executor 执行一个或多个指定的操作。例如,一些 executor 检查授权请求中的参数 redirect_uri
的值是否与授权端点上的预先注册的重定向 URI 完全匹配,并在非授权端点上拒绝此请求。
executor 无法单独单独使用。它可用于之后介绍 的配置集。
executor 可以与其他可配置供应商相同。可以配置的内容取决于每个 executor 的性质。
executor 对各种事件执行操作。executor 实现可以忽略特定类型的事件(例如,用于检查 OIDC 请求
对象的 executor 则只是 OIDC 授权请求)。事件是:
- 创建客户端(包括通过动态客户端注册创建)
- 更新客户端
- 发送授权请求
- 发送令牌请求
- 发送令牌刷新请求
- 发送令牌撤销请求
- 发送令牌内省请求
- 发送 userinfo 请求
- 使用刷新令牌发送注销请求
在每个事件中,Executor 可以在多个阶段工作。例如,在创建/备份客户端时,Executor 可以通过自动配置特定的客户端设置来修改客户端配置。之后,Executor 在验证阶段验证此配置。
此执行程序有几个目的之一是实现客户端一致性配置集(如 FAPI)的安全要求。要做到这一点,需要以下 executors:
- 对客户端使用 安全客户端验证方法
- 使用 enforce Holder-of-key 令牌
- 使用 代码交换的强制密钥(PKCE)
- 为 签名 JWT 客户端身份验证(private-key-jwt) 实施安全签名算法
- 强制 HTTPS 重定向 URI,并确保配置的重定向 URI 不包含通配符
-
强制 OIDC
请求
对象满足高安全性等级 - 强制 OIDC 混合流的 response Type,包括用作 分离签名 的 ID 令牌,如 FAPI 1 规格中所述,这意味着从授权响应返回的 ID 令牌不包含用户配置集数据
-
为防止 CSRF 强制实施更安全的
状态
和非ce
参数处理 - 在客户端注册时强制执行更安全的签名算法
-
enforce
binding_message
参数用于 CIBA 请求