2024-01-26(35일차) - JSP_AM_2024_01

민짱·2024년 1월 26일

📅2024. 01. 26 35일차


수정, 삭제 권한 체크

문제점

  • 자신의 게시글이 아닌데도 수정, 삭제가 된다

💡띵킹타임

  • 수정, 삭제 servlet에서 게시글 작성했을 때의 memberId와 로그인한 loginedMemberId 비교하여 체크 확인해야 할 듯

  • 어떻게 할건데??? selelct해서 가져온 다음 비교하면 되지 않을까?? loginedMemberId는 sesstion에 저장했자나 그럼 그냥 가져와서 비교해~

문제해결

  • ArticleModifyServlet, ArticleDeleteServlet

밑에 있는 select 쿼리를 보내 가져온 다음 맵에 담고 sesstion에 저장한 loginedMemberId와 memberId 비교
수정, 삭제 되기 전에 조건을 걸어준다.

int id = Integer.parseInt(request.getParameter("id"));

			SecSql sql = SecSql.from("SELECT *");
			sql.append("FROM article");
			sql.append("WHERE id = ?;", id);

			Map<String, Object> articleRow = DBUtil.selectRow(conn, sql);
			
			int loginedMemberId = (int) session.getAttribute("loginedMemberId");

			if (loginedMemberId != (int) articleRow.get("memberId")) {
				response.getWriter().append(
						String.format("<script>alert('해당 글에 대한 권한이 없습니다.'); location.replace('list');</script>"));
				return;
			}

해결완료.

jspf???

  • 조각??

SPRING

  • 로그인 로그아웃
  • 회원가입
    • 중복체크 ajax
  • 회원정보 수정
    • 2단계 인증
  • 아이디, 비번 찾기
  • 관리자
  • 멀티 게시판(전체, 자유, 공지)
  • 검색, 페이징
  • 게시물 CRUD
  • 댓글 좋아요(스크랩)
  • 반응형 웹
    • 치트시트
  • 공공데이터
  • API
  • 연정's figma 강의

maven 과 grandle 차이

C, M, V

  • C(Controller) : 창구직원, 점원
  • M(Service, Repository, DB) :
  • V(JSP) :

/usr/home/main

  • UsrHomeController
  • UsrArticleController
  • UsrMemberController

/adm/home/main

  • AdmHomeController
  • AdmArticleController
  • AdmMemberController

문제풀이)

0개의 댓글