生成OAuth Token时记录用户信息:client_credentials授权类型可行吗?
OAuth Token生成时的用户/客户端信息记录
- 针对
client_credentials授权类型,可以记录对应的客户端标识(即你提到的consumerKey),不过要注意:这种授权模式本身是客户端直接发起认证,不存在用户参与,所以不会有用户登录名这类信息。 - 主流OAuth服务端的审计日志默认支持记录该类型请求的客户端信息:
- 比如在Spring Security OAuth2或Keycloak这类框架中,
audit.log会自动包含client_id字段(对应你的consumerKey),只需确保审计日志的详细级别配置正确,能输出这类客户端标识信息。 - 如果是自研的OAuth服务端,需要在处理
client_credentials授权请求的逻辑里,显式提取请求中的客户端ID,将其写入审计日志文件。
- 比如在Spring Security OAuth2或Keycloak这类框架中,
- 补充对比
password授权类型:这种模式是用户通过账号密码完成认证,所以日志会记录用户登录名;而client_credentials是客户端自身完成身份校验,日志的核心标识就是客户端的consumerKey。
内容的提问来源于stack exchange,提问作者Gregory
相关产品推荐
相关产品推荐

