Create Project: springbott_security_passwordencoders_bcrypt (add Spring Boot Starters from the table)
Edit File: application.properties (add Role, User, Password)
Create Package: controllers (inside main package)
– Create Class: MyController.java (inside package controllers)
Create Package: config (inside main package)
– Create Class: WebSecurityConfig.java (inside package config)
application.properties
# SECURITY
spring.security.user.name = myuser
spring.security.user.password = $2a$10$zV89sUNg2HOQn6AQDT.SIO0CzE9W/ZHU095k49pHwJpbckDupYFxG
spring.security.user.roles = USER
MyController.java
package com.ivornline.springboot_security_passwordencoders_bcrypt.controllers;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class MyController {
//====================================================================
// ENCODE PASSWORD
//====================================================================
@ResponseBody
@RequestMapping("/EncodePassword")
public String encodePassword(@RequestParam String password) {
//GET PASSWORD ENCODER
PasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
//ENCODE PASSWORD
String encodedPassword = passwordEncoder.encode(password);
//RETURN ENCODED PASSWORD
return encodedPassword;
}
//====================================================================
// HELLO
//====================================================================
@ResponseBody
@RequestMapping("/Hello")
public String hello() {
return "Hello from Controller";
}
}