添加测试密码相关

This commit is contained in:
bunny 2025-07-10 19:56:48 +08:00
parent d3fb568590
commit b92a785a30
3 changed files with 46 additions and 1 deletions

View File

@ -11,7 +11,7 @@ import org.springframework.security.core.userdetails.User;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.crypto.factory.PasswordEncoderFactories;
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
@EnableWebSecurity
@Configuration
public class DefaultSecurityConfig {

View File

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

View File

@ -16,6 +16,7 @@ public class PasswordTest {
@Test
void passwordEncoderTest() {
// 只是便捷机制不适用于生产环境
PasswordEncoder passwordEncoder = PasswordEncoderFactories.createDelegatingPasswordEncoder();
String encode = passwordEncoder.encode("123456");
@ -51,4 +52,15 @@ public class PasswordTest {
System.out.println(decrypted);
}
@Test
void UserDetailsTest() {
// withDefaultPasswordEncoder 是不安全的不适用于生产环境
UserDetails user = User.withDefaultPasswordEncoder()
.username("user")
.password("password")
.roles("user")
.build();
System.out.println(user.getPassword());
}
}