[OAuth2客户端从授权步骤重定向时失败

问题描述 投票:0回答:1

[在当前的春季启动中,我正在尝试使用外部OAuth2服务器登录用户。现在的问题是,当我执行应用程序时,授权成功后,应该将用户重定向回该应用程序。发生这种情况时,我出现了错误。

我的application.properties文件:

spring.security.oauth2.client.registration.mercadolivre.provider=mercadolivre
spring.security.oauth2.client.registration.mercadolivre.client-id=...
spring.security.oauth2.client.registration.mercadolivre.client-secret=...
spring.security.oauth2.client.registration.mercadolivre.authorization-grant-type=authorization_code
spring.security.oauth2.client.registration.mercadolivre.redirect-uri=http://localhost:8080/
spring.security.oauth2.client.provider.mercadolivre.authorization-uri=https://auth.mercadolivre.com.br/authorization
spring.security.oauth2.client.provider.mercadolivre.token-uri=https://api.mercadolibre.com/oauth/token

我的安全性配置类:

@Configuration
public class Security extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeRequests()
            .anyRequest().authenticated()
            .and()
            .oauth2Login();
    }
}

我现在面临的错误:

enter image description here

这里是什么问题?

spring-boot spring-security spring-oauth2
1个回答
0
投票

redirect-uri更改为其他内容...如果使用的模板字符串与reference所使用的模板字符串相同,则更好:

spring.security.oauth2.client.registration.mercadolivre.redirect-uri={baseUrl}/login/oauth2/code/{registrationId}

这是将处理授权服务器发回的授权代码的uri。如果您希望在成功认证后将用户重定向到某个页面,请在configure()中执行类似的操作:

http.
    ...
    .oauth2Login()
        .defaultSuccessUrl("/");
© www.soinside.com 2019 - 2024. All rights reserved.