회원가입으로 사용자 정보를 DB에 저장
그럼 로그인 창이 뜨는데
여기서 로그인 성공 여부를 판단해
맞으면 로그인을 성공 시키는게 인증이다
코드로는
loadUserByUsername(username)DB에서 사용자 가져와서 Spring Security에게 사용자 정보 전달
passwordEncoder.encode(password)
로 비교한다
로그인 성공 후에 권한을 부여 받고 다음 페이지로 넘어 갈 수 있다
이게 바로 인가이다.
코드를 보면
.requestMatchers("/admin").hasRole("ADMIN")
그런데 지금 admin이 아니여서
.anyRequest().authenticated()이 코드에 써진 것 같이 main으로 갔다.
아이디가 admin@test.com면 admin 역할을 얻게 설정해 두었다
UPDATE member_table SET role = 'ROLE_ADMIN' WHERE member_email = 'admin@test.com';
로그인 해보겠다
/admin으로 뜬다
코드는
User.builder()
.username(member.getMemberEmail())
.password(member.getMemberPassword())
.authorities(member.getRole())
이걸로 권한 부여
.requestMatchers("/admin/**").hasAuthority("ROLE_ADMIN")이걸로 검사




