覆盖/绕过 Spring Boot 默认登录页面到 okta OIDC 登录页面

Posted

技术标签:

【中文标题】覆盖/绕过 Spring Boot 默认登录页面到 okta OIDC 登录页面【英文标题】:Override/Bypass Spring Boot default login page to okta OIDC login page 【发布时间】:2018-10-11 16:53:36 【问题描述】:

我正在尝试使用 Spring Boot - Okta 实现 OIDC……我能够运行应用程序并且一切正常……我的问题是,有没有办法覆盖 Spring Boot 的默认登录页面,它将提供okta/任何 OIDC 提供者的链接,它将转到 okta/相应的登录页面…… 我需要有关覆盖/绕过默认 Spring Boot 登录页面的帮助,并且在点击任何应用程序 URI 时,它应该直接进入 okta/相应的 oidc 证明者登录页面……

如果您需要任何其他信息,请告诉我,非常感谢任何帮助。

【问题讨论】:

【参考方案1】:

覆盖/绕过默认的 Spring Boot 登录页面。我们可以通过创建 Spring Security 配置来做到以下几点:

 @Configuration
class OAuth2SecurityConfig extends WebSecurityConfigurerAdapter 
   @Override
  protected void configure(HttpSecurity http) throws Exception 

http.authorizeRequests().antMatchers("/oauth_login").
permitAll().anyRequest().authenticated().and()
            .oauth2Login().loginPage("/oauth_login");
   
 

//Login controller for handling:
  @Controller
class LoginController 

  @RequestMapping("/oauth_login")
 String loginPage() 
    //redirecting to 
    return "redirect:/oauth2/authorization/okta";
  

【讨论】:

以上是关于覆盖/绕过 Spring Boot 默认登录页面到 okta OIDC 登录页面的主要内容,如果未能解决你的问题,请参考以下文章

为我的 Spring Boot 应用程序创建一个默认的安全登录页面

spring boot整合 spring security之自定义认证

spring boot 重定向到页面登录

无法在 Spring Boot Security 中登录到我的自定义登录页面

为啥 Spring Boot 不会重定向到 403 上的 Keycloak 登录页面?

执行登录保存请求后,Spring Boot Security POST 重定向到登录页面