为确保通过外部方动态客户端注册创建的应用程序符合私有用途 URI 方案,您必须配置一条请求转换规则。
关于此任务
第
https://datatracker.ietf.org/doc/html/rfc8252#section-7.1 节规定:在为应用程序选择关联的 URI 方案时,应用程序必须使用基于其控制下的域名且按反向顺序表示的 URI 方案,这符合 [ RFC7595 ] 第 3.8 节对私有用途 URI 方案的建议
为确保通过外部方动态客户端注册创建的应用程序符合此要求,您必须配置一条请求转换规则。
过程
- 选择 。
- 选择 “动态客户端注册 ”。
- 将以下测试内容复制并粘贴到请求转换规则中。
statements:
- context: scl := requestContext.metadata.redirect_uris.map(ru, ru.substring(0, ru.indexOf(":")))
- context: chk := context.scl.filter(sc, (sc.matches("^(http|https|smtp|mailto|ftp)$") || sc.indexOf(".") > -1) == false)
- context: err := context.chk.size() > 0
- if:
match: context.err
block:
- return: requestContext.metadata.remove("redirect_uris")
else:
- return: requestContext.metadata
- 选择 “保存更改 ”。
此请求转换规则会验证每个重定向 URI,以确保它们符合要求。 一旦检测到无效的重定向 URI,系统将移除该 URI redirect_uris 以强制触发错误。 redirect_uris执行此动态客户端注册的一方随后必须发送一个包含相应值的新请求。