Browse Source

Remove formLogin() from client sample app

Closes gh-108
pull/115/head
Joe Grandja 5 years ago
parent
commit
72ec2633f8
  1. 2
      samples/boot/oauth2-integration/README.adoc
  2. 26
      samples/boot/oauth2-integration/client/src/main/java/sample/config/SecurityConfig.java
  3. 12
      samples/boot/oauth2-integration/client/src/main/java/sample/web/DefaultController.java
  4. 13
      samples/boot/oauth2-integration/client/src/main/resources/templates/index.html
  5. 34
      samples/boot/oauth2-integration/client/src/main/resources/templates/login.html

2
samples/boot/oauth2-integration/README.adoc

@ -8,4 +8,4 @@ This sample integrates `spring-security-oauth2-client` and `spring-security-oaut @@ -8,4 +8,4 @@ This sample integrates `spring-security-oauth2-client` and `spring-security-oaut
** *IMPORTANT:* Make sure to modify your `/etc/hosts` file to avoid problems with session cookie overwrites between `client` and `authorizationserver`. Simply add the entry `127.0.0.1 auth-server`
* Run Resource Server -> `./gradlew -b samples/boot/oauth2-integration/resourceserver/spring-security-samples-boot-oauth2-integrated-resourceserver.gradle bootRun`
* Run Client -> `./gradlew -b samples/boot/oauth2-integration/client/spring-security-samples-boot-oauth2-integrated-client.gradle bootRun`
* Go to `http://localhost:8080` and login using *user1/password*
* Go to `http://localhost:8080`

26
samples/boot/oauth2-integration/client/src/main/java/sample/config/SecurityConfig.java

@ -15,15 +15,10 @@ @@ -15,15 +15,10 @@
*/
package sample.config;
import org.springframework.context.annotation.Bean;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.builders.WebSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
/**
* @author Joe Grandja
@ -46,26 +41,11 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @@ -46,26 +41,11 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.failureUrl("/login-error")
.permitAll()
.anyRequest().permitAll()
.and()
.logout()
.disable()
.oauth2Client();
}
// @formatter:on
// @formatter:off
@Bean
public UserDetailsService users() {
UserDetails user = User.withDefaultPasswordEncoder()
.username("user1")
.password("password")
.roles("USER")
.build();
return new InMemoryUserDetailsManager(user);
}
// @formatter:on
}

12
samples/boot/oauth2-integration/client/src/main/java/sample/web/DefaultController.java

@ -16,7 +16,6 @@ @@ -16,7 +16,6 @@
package sample.web;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
/**
@ -35,15 +34,4 @@ public class DefaultController { @@ -35,15 +34,4 @@ public class DefaultController {
public String index() {
return "index";
}
@GetMapping("/login")
public String login() {
return "login";
}
@GetMapping("/login-error")
public String loginError(Model model) {
model.addAttribute("loginError", true);
return login();
}
}

13
samples/boot/oauth2-integration/client/src/main/resources/templates/index.html

@ -13,19 +13,6 @@ @@ -13,19 +13,6 @@
<div class="container">
<div class="container-fluid">
<div class="navbar-collapse collapse" id="navbar">
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a id="user-menu" href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
<span sec:authentication="name">User</span>
</a>
<ul class="dropdown-menu">
<li><a id="sign-out" href="javascript:document.logoutForm.submit()">Sign Out</a></li>
</ul>
<form name="logoutForm" th:action="@{/logout}" method="post" th:hidden="true">
<input hidden type="submit" value="Sign Out"/>
</form>
</li>
</ul>
</div>
</div>
</div>

34
samples/boot/oauth2-integration/client/src/main/resources/templates/login.html

@ -1,34 +0,0 @@ @@ -1,34 +0,0 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="https://www.thymeleaf.org">
<head>
<title>Spring Security OAuth 2.0 Sample</title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="/webjars/bootstrap/css/bootstrap.css" th:href="@{/webjars/bootstrap/css/bootstrap.css}" />
</head>
<body>
<div class="container">
<h1>Login</h1>
<p th:if="${loginError}" style="font-weight:bold;color:red;">Wrong username or password</p>
<form th:action="@{/login}" method="post">
<div class="form-row">
<div class="form-group">
<label for="username">Username</label>
<input type="text" id="username" name="username" value="user1" autofocus="autofocus" class="form-control">
<small class="form-text text-muted">user1 / password</small>
</div>
</div>
<div class="form-row">
<div class="form-group">
<label for="password">Password</label>
<input type="password" id="password" name="password" value="password" class="form-control">
</div>
</div>
<button type="submit" class="btn btn-primary">Log in</button>
</form>
</div>
<script src="/webjars/jquery/jquery.min.js" th:src="@{/webjars/jquery/jquery.min.js}"></script>
<script src="/webjars/bootstrap/js/bootstrap.min.js" th:src="@{/webjars/bootstrap/js/bootstrap.min.js}"></script>
</body>
</html>
Loading…
Cancel
Save