4. Public Clients and Certificate-Bound Tokens (公共客户端与证书绑定令牌)
4. Public Clients and Certificate-Bound Tokens (公共客户端与证书绑定令牌)
Mutual-TLS OAuth 客户端认证与证书绑定 access token 可彼此独立使用. 例如, 可在不使用 mutual-TLS OAuth 客户端认证的情况下使用证书绑定 access token, 以将 access token 绑定到 public client (公共客户端) (即与 client_id 无关联认证凭据的客户端) 的 TLS 客户端证书. 授权服务器会以与自签名证书方法相同的方式配置 TLS 栈, 使其不验证握手中客户端出示的证书是否由受信任 CA 签名. 客户端的各实例会创建自签名证书, 与授权服务器和资源服务器进行 mutual TLS. 授权服务器不会在 OAuth 层使用 mutual-TLS 证书认证客户端, 但会将颁发的 access token 绑定到客户端已证明持有对应私钥的证书. access token 因而绑定到证书, 仅持有证书及对应私钥并在到资源服务器的连接上协商 mutual TLS 的客户端可使用该令牌. 当授权服务器向此类客户端颁发 refresh token (刷新令牌) 时, 还应该将 refresh token 绑定到相应证书, 并在出示 refresh token 以获取新 access token 时检查该绑定. refresh token 绑定的实现细节由授权服务器酌情决定.