✅ 添加测试密码相关
This commit is contained in:
parent
d3fb568590
commit
b92a785a30
|
@ -11,7 +11,7 @@ import org.springframework.security.core.userdetails.User;
|
||||||
import org.springframework.security.core.userdetails.UserDetailsService;
|
import org.springframework.security.core.userdetails.UserDetailsService;
|
||||||
import org.springframework.security.crypto.factory.PasswordEncoderFactories;
|
import org.springframework.security.crypto.factory.PasswordEncoderFactories;
|
||||||
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
|
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
|
||||||
|
|
||||||
@EnableWebSecurity
|
@EnableWebSecurity
|
||||||
@Configuration
|
@Configuration
|
||||||
public class DefaultSecurityConfig {
|
public class DefaultSecurityConfig {
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
package com.spring.password;
|
||||||
|
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.security.crypto.argon2.Argon2PasswordEncoder;
|
||||||
|
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
||||||
|
import org.springframework.util.StopWatch;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
public class PasswordBCryptTest {
|
||||||
|
@Test
|
||||||
|
void BCryptPasswordEncoderTest() {
|
||||||
|
StopWatch stopWatch = new StopWatch();
|
||||||
|
stopWatch.start();
|
||||||
|
|
||||||
|
// Create an encoder with strength 16
|
||||||
|
BCryptPasswordEncoder encoder = new BCryptPasswordEncoder(16);
|
||||||
|
String result = encoder.encode("myPassword");
|
||||||
|
System.out.println(result);
|
||||||
|
|
||||||
|
stopWatch.stop();
|
||||||
|
long totalTimeMillis = stopWatch.getTotalTimeMillis() / 1000;
|
||||||
|
System.out.println(totalTimeMillis);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void Argon2PasswordEncoderTest() {
|
||||||
|
// Create an encoder with all the defaults
|
||||||
|
Argon2PasswordEncoder encoder = Argon2PasswordEncoder.defaultsForSpringSecurity_v5_8();
|
||||||
|
String result = encoder.encode("myPassword");
|
||||||
|
System.out.println(result);
|
||||||
|
}
|
||||||
|
}
|
|
@ -16,6 +16,7 @@ public class PasswordTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void passwordEncoderTest() {
|
void passwordEncoderTest() {
|
||||||
|
// 只是便捷机制,不适用于生产环境
|
||||||
PasswordEncoder passwordEncoder = PasswordEncoderFactories.createDelegatingPasswordEncoder();
|
PasswordEncoder passwordEncoder = PasswordEncoderFactories.createDelegatingPasswordEncoder();
|
||||||
|
|
||||||
String encode = passwordEncoder.encode("123456");
|
String encode = passwordEncoder.encode("123456");
|
||||||
|
@ -51,4 +52,15 @@ public class PasswordTest {
|
||||||
System.out.println(decrypted);
|
System.out.println(decrypted);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void UserDetailsTest() {
|
||||||
|
// withDefaultPasswordEncoder 是不安全的不适用于生产环境
|
||||||
|
UserDetails user = User.withDefaultPasswordEncoder()
|
||||||
|
.username("user")
|
||||||
|
.password("password")
|
||||||
|
.roles("user")
|
||||||
|
.build();
|
||||||
|
System.out.println(user.getPassword());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue