<aside> 📢 무엇에 대해 배울 것인가? 목표는 무엇인가?
인증이란 누군가의 신원을 확인하는 것을 말하며, 특정 클라이언트가 주장하는 사용자임이 맞는지를 확인하는 과정이다. 유저가 누구인지 확인하는 절차로, 보통 사용자 이름와 암호를 통해 인증하게 된다.
클라이언트가 하고자 하는 행동이 허가되어 가능한 행동인지를 확인하는 것을 말하며, 접근 가능 대상과 편집 및 삭제가 가능한 대상 등 웹의 어느 부분에 접근이 가능한지 등을 체크한다. 유저에 대한 권한을 부여하는 것이기도 하며, 사용자가 인증된 후에 주로 일어나는 과정이다.
사용자를 인증하기 위해 사용자 이름과 암호, 패스워드, 비밀번호를 받았다면 그 사용자의 이름을 저장해야 한다. 그리고 절대로 암호를 원형으로 데이터베이스에 저장해서는 안된다. 다시 한번 강조하는데,
<aside> 🚨 절대로 암호를 원형으로 저장해서는 안된다.
</aside>
대신 우리는 암호를 **해시(Hash)
**할 것이다. 암호를 데이터베이스에 그대로 저장하는 대신, 해시 함수라는 것으로 암호를 처리한다. 이후 해시 함수의 결과를 데이터베이스에 저장하는 것이다.