OAuth 2.0 刷新令牌是否应该请求 userId

Should OAuth 2.0 refresh tokens ask for a userId

我正在 API 中实施 OAuth 2.0。我们使用 JWT 进行身份验证,并使用刷新令牌进行仅客户端重新授权。我是否应该要求客户也在 POST /token 的正文中提供 userId 以便他们需要一起了解用户和刷新令牌(所以你不能只是尝试一堆随机的字符串,看看有什么用)?标准是什么?

如果正确实施了规范,应该不可能猜测刷新令牌; https://www.rfc-editor.org/rfc/rfc6749#section-10.4 说:

The authorization server MUST ensure that refresh tokens cannot be generated, modified, or guessed to produce valid refresh tokens by unauthorized parties.

您必须确保生成的刷新令牌具有足够的熵,这样您的刷新令牌的随机性就不会因向其添加用户标识而变得有任何不同。或者换一种说法:猜测您的刷新令牌与猜测用户标识+刷新令牌一样困难。除此之外,在 POST 中添加一个用户 ID 实际上比在刷新令牌中添加一个具有用户 ID 长度的随机字符串更可预测。