JS/Nest.js
[Nest JS] 비밀번호 암호화 구현
Mini_96
2024. 8. 18. 21:22
npm install bcryptjs --save
* salt => 같은비밀번호를 입력해도 다른 해시값이 저장되도록
import * as bcrypt from 'bcryptjs'
@Injectable()
export class UserRepository extends Repository<User>{
...
async createUser(authCredentialsDto : AuthCredentialsDto){
const {username, password} = authCredentialsDto;
const salt = await bcrypt.genSalt();
const hashedPassword = await bcrypt.hash(password, salt);
const user = this.create({username,password : hashedPassword}); //리포지토리.create => db저장용객체로 만들어줌
try {
await this.save(user);
...
}
* 로그인도 수정
if(!await bcrypt.compare(password, findMember.password)){
console.log('비밀번호 불일치');
return "redirect:user/login_failed";
}