5week
##중간고사를 위한 이론 정리
SpringSecurtiy
authehtication, authorization을 수행하기 위한 프레임워크의 일부이다. 접근권한을 활용할 때 사용하는 것이 spring security이다. SpringSecurtiy는 servlet filter에 기반으로 두고 있다. Filter는 request나 response를 intercept한다. 즉, 접근 권한 부여 판단을 하는 역할을 한다.
접근 권한 부여하기
우선 pom.xml에서 라이브러리(spring-security-core/web/config)를 추가해야한다.
web.xml에 내가 지정한 url 영역에 모든 request나 response를 intercept하겠다라는 것이다.
security-context.xml에서는 인증 권한을 설정한다.
<19:20 참고>
직접 회원을 추가해서 메모리에 저장할 수 있지만 DB를 통해서 자동으로 권한 부여와 인증을 수행 할 수 있다. 이 부분은 추후에 알아 볼 것이다. 이후 인증 권한을 설정한 security-context.xml을 web.xml에 설정을 등록 해주어야 한다.
Expression-Based Access Control
접근 권한에 관한 코드
<27:00 참고>
메모리에 저장하지 않고 DB에 저장할 수 있게 설정한다. 이후 스프링에서 DB에 무엇이 저장이 되었는지 확인하기 위해서는 스프링에 DB에 접근해서 원하는 데이터 값을 가져와 권한 인증 여부를 판단하는 과정을 거친다.
Custom Login Form
login절차는 스프링에서 이루어진다.
csrf(Cross-Site-Request-Forgery)란
csrf를 막기 위해서는 csrf token을 사용해서 막을 수 있다. 그래서 request할 때마다 token을 함께 보내줘야 한다.
c:if를 사용해서 에러가 있을 때 마다 사용자에게 주의를 줄 수 있다.
뭔가.. 전체적으로 로그인 되는 과정을 서술하라는 주관식 문제가... 나올 듯..한데...