Przeglądaj źródła

Remove formLogin() from client sample app

Closes gh-108
Joe Grandja 5 lat temu
rodzic
commit
72ec2633f8

+ 1 - 1
samples/boot/oauth2-integration/README.adoc

@@ -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`

+ 3 - 23
samples/boot/oauth2-integration/client/src/main/java/sample/config/SecurityConfig.java

@@ -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 {
 	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
 }

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

@@ -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 {
 	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();
-	}
 }

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

@@ -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>

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

@@ -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>