Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- emmet환경설정
- 회원탈퇴
- 권한변경
- 국취제
- 비밀번호암호화
- 페이징
- 페이지 재사용
- Git
- 인코딩
- jsp기본
- 로그아웃
- 검색기능
- 배열
- 국비학원
- 회원정보수정
- redirect
- forward
- 국민취업지원제도
- mvc
- live server 환경설정
- 비밀번호변경
- 별찍기
- jdbc설정
- 정처기
- 관리자회원조회
- jdbc환경설정
- 내일배움카드
- github
- 내배카
- 입력메소드
Archives
- Today
- Total
기록
*77일차 (회원정보수정 / 비밀번호 암호화) 본문
@내정보보기 - 회원정보수정
1. memverView.jsp
- action에 경로추가
- id는 수정불가로 readonly
- pw는 암호화처리로 제외하고 진행
- 유효성검사 작성 (이름,번호)
2. 정보수정에 해당하는 Sevlet 생성 - MemberUpdateServlet
- url mapping : /member/memberUpdate
- doPost
- birthday는 date, hobby는 string으로
3. MemberService.java에 update 추가
4. MemberDao.java에 update 추가
5. sql - properties에 update 추가
- db에는 수정완료
- 실제웹페이지에는 수정X
- 현재상황
→수정 후 session정보도 갱신하는 작업이 필요함
- memberUpdateServlet에 session 갱신
//세션정보갱신
Member updateMember = memberService.findByMemberId(memberId);
request.getSession().setAttribute("loginMember", updateMember);
@Filter
- method는 안봄
- URL만 봄
*필터처리순서
- web.xml에 등록된 순서대로 처리
- web.xml에 등록된 필터가 @WebFilter보다 우선순위 높음
1. 필터처리
- 모든 요청이 이 필터를 거침
- ServletRequest : HttpServletRequest의 부모타입
- ServletResponse : HttpServletResponse의 부모타입
2. 인코딩 필터
- 인코딩 필터 생성
- WebFilter가 하는 일 작성 (web.xml)
<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>common.filter.EncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
*Project Explorer - Deploy..~
-web에 적혀있어야 할 내용들
-동적으로 web.xml에 관리된다
3. 로그인 필터
- 로그인을 해야만 이용하는 기능
@비밀번호 암호화(Encryption)
- 암호 알고리즘에 의해 평문(1234) →암호문(dfer3r3l@3232)
1. 단방향 (hashing)
- 1234 → 암호문
- 역방향은 존재 X
- MD5 - SHA1 - SHA256 - SHA512 (256,512추천)
2. 양방향
- 평문 ↔ 암호문 가능
- 평 →암 : 암호화
- 암 → 평 : 복호화
- key값을 사용
- -암호화,복호화 할 때 사용하는 key와 동일 ? 대칭키 암호화
- -다르면 ? 비대칭키 암호화
*hashing
- digest : byte []
- encoding : String
-암호화처리 아님
-이진데이터를 문자열로 옮김
-base 64 (알파벳52 + 숫자10+ 2개 특문(+,/) )
*적용하기
1. memberEnrollServlet
// 단방향 암호화 처리
String password = HelloMvcUtils.encrypt(request.getParameter("password"), memberId);
2.static method
- package common - HelloMvcUtils
*salt
- 같은 비밀번호 1234여도 hash값은 다름
- 각각의 id를 salt로 사용해 hash해보기 (ex.같은 1234여도 hash값이 달라짐)
(4'17)
update member
set password = ' '
where member_id = ' ';
'학원 > 강의' 카테고리의 다른 글
*79일차 (UML) (0) | 2022.05.19 |
---|---|
*78일차 (비밀번호 변경 / 관리자회원 조회 / 권한변경 / 검색) (0) | 2022.05.18 |
*76일차 (회원가입 / 중복아이디 체크) (0) | 2022.05.16 |
*75일차 (로그인/로그아웃/session/cookie) (0) | 2022.05.13 |
*74일차 (2) (0) | 2022.05.12 |