如何使用Spring在OAuth2认证中生成客户端密钥
我正在为我的应用程序使用Spring为OAuth2创建API,但规范(https://www.rfc-editor.org/rfc/rfc6749)和Spring OAuth2文档中没有写任何关于如何生成客户端机密的内容。
有人知道吗?
解决方案
Spring使用PasswordEncoder对客户端机密进行解码/编码。请参阅JdbcClientDetailsService(如果您计划将客户端详细信息存储在数据库中)。
因此,在为Spring OAuth2配置Bean时,您通常会为ClientDetailsService提供一个PasswordEncode实例。
典型情况是使用BCryptPasswordEncoder。因此,在将编码的客户端密码放入数据库列之前,您可以编写一个示例程序来生成它:
String password = "testPassword";
PasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
String encodedPassword = passwordEncoder.encode(password);
相关文章