spring 安全反应 - 如何调试 "invalid credentials" 错误?
spring security reactive - how to debug "invalid credentials" error?
我想在我的反应式 spring 引导应用程序中使用外部 OAuth 提供程序对用户进行身份验证。
在 the official tutorial 之后,我使用预配置的提供程序(Google、Github 等)成功实施了流程。将配置更改为未预配置
提供者可以使用 these properties 完成,例如:
spring.security.oauth2.client.registration.<providerName>.client-id=<clientId>
spring.security.oauth2.client.registration.<providerName>.client-secret=<clientSecret>
spring.security.oauth2.client.registration.<providerName>.redirect-uri={baseUrl}/login/oauth2/code/<providerName>
spring.security.oauth2.client.registration.<providerName>.provider=<providerName>
spring.security.oauth2.client.registration.<providerName>.client-authentication-method=basic
spring.security.oauth2.client.registration.<providerName>.authorization-grant-type=authorization_code
spring.security.oauth2.client.provider.<providerName>.authorization-uri=https://api.<providerName>.com/authorize
spring.security.oauth2.client.provider.<providerName>.token-uri=https://api.<providerName>.com/token
使用此设置,将向用户提示登录页面,并使用 authCode
:
调用指定的重定向 url
但是,返回此错误页面,控制台中没有日志条目或异常(即使我设置了 logging.level.org.springframework.security=DEBUG
属性)。
可能是什么问题?我什至可以从哪里开始调试它?
AuthenticationWebFilter.authenticate
是调试的地方。在我的例子中 user-info-uri
属性丢失
我想在我的反应式 spring 引导应用程序中使用外部 OAuth 提供程序对用户进行身份验证。
在 the official tutorial 之后,我使用预配置的提供程序(Google、Github 等)成功实施了流程。将配置更改为未预配置 提供者可以使用 these properties 完成,例如:
spring.security.oauth2.client.registration.<providerName>.client-id=<clientId>
spring.security.oauth2.client.registration.<providerName>.client-secret=<clientSecret>
spring.security.oauth2.client.registration.<providerName>.redirect-uri={baseUrl}/login/oauth2/code/<providerName>
spring.security.oauth2.client.registration.<providerName>.provider=<providerName>
spring.security.oauth2.client.registration.<providerName>.client-authentication-method=basic
spring.security.oauth2.client.registration.<providerName>.authorization-grant-type=authorization_code
spring.security.oauth2.client.provider.<providerName>.authorization-uri=https://api.<providerName>.com/authorize
spring.security.oauth2.client.provider.<providerName>.token-uri=https://api.<providerName>.com/token
使用此设置,将向用户提示登录页面,并使用 authCode
:
但是,返回此错误页面,控制台中没有日志条目或异常(即使我设置了 logging.level.org.springframework.security=DEBUG
属性)。
可能是什么问题?我什至可以从哪里开始调试它?
AuthenticationWebFilter.authenticate
是调试的地方。在我的例子中 user-info-uri
属性丢失