2023.12.26 - [spring · spring boot] - [spring] security ① - 기본 파일 생성
인증(Authentication)과 인가(Authorization)
- 인증(Authentication)
- 자신을 증명하는 것 => 내가 다른사람에게 확인할 수 있는 무엇인가를 전달하는 것
- 사용자아이디 (userid -> username) 시큐리티에서는 아이디의 정보를 username에 저장
- 기존의 아이디정보, 이름정보를 변경 필요있음
- -사용자(user -> MemberVO) 시큐리티에서의 user이름은 인증정보와 권한을 저장하는 객체로 정의되어있음
- 단순 사용자의 정보를 저장하는 형태의 이름으로 사용을 금한다.
- 인가(Authorization) = (권한부여)
- 다른사람이 나에게 어떤 자격을 부여
p616
security-context.xml
시큐리티 웹 설정
member를 부를때만 로그인창으로 바뀜(뷰도, 컨트롤러도 만든적없음)
security:form-login 때문에 갈 수 있음
ROLE_MEMBER가 있어야지 갈 수 있음
권한 받아가는 방법
인증에 관한 모든 설정은 여기서
ROLE_MEMBER를 인가하겠다.
noop: 인코딩안해도된다. → 인코딩 없이 비밀번호 인증하겠다.
관리자도 해보장
403이 뜬다.
→ 브라우저 모두 닫고 다시 켜면 됨
사용자아이디(userid → username)
시큐리티에서 id대신 name으로 사용한다.
403이 뜬다.
→ 브라우저 모두 닫고 다시 켜면 됨
사용자아이디(userid → username)
시큐리티에서 id대신 name으로 사용한다.
접근거부 처리(403)
CommonsController 생성
views/accessErr 생성
403이 아닌 우리가 만든 뷰페이지 볼 수 있음
CommonsController
매개변수 추가
log4j
security/CustomAccessDeniedHandler생성
- 접근권한이 없을때 발생하는 오류 처리하는 클래스
- 주소와 뷰페이지가 일치 (특정 쿠키,세션접근 처리가능)
security-context
reference를 쓰려면 객체가 이미 만들어져있어야한다.
beans를 봐도 관련 객체가 없음
시큐리티 웹 설정 바깥에 객체를 생성하자
security-context
reference를 쓰려면 객체가 이미 만들어져있어야한다.
beans를 봐도 관련 객체가 없음
시큐리티 웹 설정 바깥에 객체를 생성하자
log4j
security-context
접근권한 확인하기위한 로그인페이지(기본값)
404에 메시지가 없음
컨트롤러 자체에 매핑이 안되있음
CommonsController
views/customLogin 생성
이게 없다
토큰 추가
input태그에 토큰 정보가 들어가있다
이상태에서 관리자 로그인 하면 로그인된다.
사이트간 위조방지 토큰!~!~!
'spring · spring boot' 카테고리의 다른 글
[spring] security ④ - 로그아웃 (0) | 2023.12.27 |
---|---|
[spring] security ③ - 로그인 성공시 권한별로 페이지 이동 (1) | 2023.12.27 |
[spring] security ① - 기본 파일 생성 (1) | 2023.12.26 |
[spring] 썸네일 만들기 (1) | 2023.12.26 |
[spring] 예외발생 처리 (0) | 2023.12.22 |