일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 코드트리조별과제
- 코드트리
- html form
- @configuration
- 백준
- 스프링
- 다형성
- 싱글톤
- 코딩테스트
- 티스토리챌린지
- JSON
- 추상클래스
- ocp
- 서블릿
- 오버라이딩
- DI
- 오블완
- 김영한
- 프록시
- 테스트코드
- 의존관계
- 인터페이스
- http 메시지 컨버터
- java
- fielderror
- equals()
- 스프링컨테이너
- objecterror
- HttpServletResponse
- 참조변수
- Today
- Total
목록2024/09/24 (3)
minOS
로그인 처리하기 - 서블릿 HTTP 세션1세션이라는 개념은 대부분의 웹 애플리케이션에 필요한 것이다. 어쩌면 웹이 등장하면서 부터 나온 문제이다. 서블릿은 세션을 위해 `HttpSession` 이라는 기능을 제공하는데, 지금까지 나온 문제들을 해결해준다. 우리가 직접 구현한 세션의 개념이 이미 구현되어 있고, 더 잘 구현되어 있다.HttpSession 소개서블릿이 제공하는 `HttpSession` 도 결국 우리가 직접 만든 `SessionManager` 와 같은 방식으로 동작한다. 서블릿을 통해 `HttpSession` 을 생성하면 다음과 같은 쿠키를 생성한다. 쿠키 이름이 `JSESSIONID` 이고, 값은 추정 불가능한 랜덤 값이다. `Cookie: JSESSIONID=5B78E23B513F50164..
로그인 처리하기 - 세션 동작 방식목표 쿠키에 중요한 정보를 보관하는 방법은 여러가지 보안 이슈가 있었다. 이 문제를 해결하려면 결국 중요한 정보를 모두 서버에 저장해야 한다. 그리고 클라이언트와 서버는 추정 불가능한 임의의 식별자 값으로 연결해야 한다. 이렇게 서버에 중요한 정보를 보관하고 연결을 유지하는 방법을 세션이라 한다.세션 동작 방식1)세션 로그인- 사용자가 `loginId` , `password` 정보를 전달하면 서버에서 해당 사용자가 맞는지 확인한다. 2)세션 생성 ,세션 관리- 세션 ID를 생성하는데, 추정 불가능해야 한다.- UUID는 추정이 불가능하다. ex)`Cookie: mySessionId=zz0101xx-bab9-4b92-9b32-dadb280f4b61`- 생성된 세션 ID와 ..
로그인 요구사항- 홈 화면 - 로그인 전 ㄴ회원 가입 ㄴ로그인 - 홈 화면 - 로그인 후 ㄴ본인 이름(누구님 환영합니다.) ㄴ상품 관리 ㄴ로그 아웃 - 보안 요구사항 ㄴ로그인 사용자만 상품에 접근하고, 관리할 수 있음 ㄴ로그인 하지 않은 사용자가 상품 관리에 접근하면 로그인 화면으로 이동- 회원 가입, 상품 관리 로그인 - 쿠키 사용쿼리 파라미터를 계속 유지하면서 보내는 것은 매우 어렵고 번거로운 작업이다. 쿠키를 사용해보자.쿠키서버에서 로그인에 성공하면 HTTP 응답에 쿠키를 담아서 브라우저에 전달하자. 그러면 브라우저는 앞으로 해당 쿠키를 지속해서 보내준다. 쿠키 종류- 영속 쿠키: 만료 날짜를 입력하면 해당 날짜까지 유지- 세션 쿠키: 만료 날짜를 생략하면 브라우..