일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 예약어
- 함수
- SQL
- 반복문
- spring 게시판 삭제
- 객체
- 비교 연산자
- 객체지향
- 식별자
- 자바의정석
- 연산자
- 배열
- 산술 연산자
- StringBuffer
- 상속
- 오버라이딩
- 인텔리제이 Web 애플리케이션
- 친절한 SQL
- SQL 튜닝
- @PreAuthorize("isAuthenticated()")
- 친절한 SQL 튜닝
- SQL튜닝
- java
- SpringSecurity 로그인
- 오버로딩
- join
- 스프링시큐리티 로그아웃
- SpringSecurity 로그아웃
- 논리 연산자
- 이클립스 설치
Archives
- Today
- Total
gi_dor
마이페이지 ver.1- SpringSecurity, MySQL , MyBatis @PreAuthorize("isAuthenticated()") 본문
Back_End/SpringBoot
마이페이지 ver.1- SpringSecurity, MySQL , MyBatis @PreAuthorize("isAuthenticated()")
기돌 2024. 4. 22. 12:45 @GetMapping("/mypage")
public String myPage(Model model , Principal principal) {
if (principal == null || principal.getName() == null ) {
return "redirect:/user/login ";
} else {
model.addAttribute("id",principal.getName());
return "redirect:/user/mypage";
}
}
Principal 객체를 사용해 현재 사용자의 정보를 가져옵니다.
사용자가 인증되지 않은 경우 principal이 null이거나 principal의 이름이 null인 경우 (둘다 같은말 아닌가 ?)
/user/login으로 리디렉션
Principal 객체는 사용자의 인증 정보를 나타내는데 사용되는데
사용자가 로그인하지 않은 상태라면 (principal이 null인 경우), 이것은 로그인되지 않은 상태를 나타냅니다
1차 변경된 코드
@GetMapping("/mypage")
public String myPage(Model model , Principal principal) {
if (principal == null ) {
return "redirect:/user/login ";
} else {
model.addAttribute("id",principal.getName());
return "redirect:/user/mypage";
}
}
@PreAuthorize("isAuthenticated()")
@PreAuthorize("isAuthenticated()")
Spring Security에서 제공하는 어노테이션 중 하나입니다. 이메서드 또는 클래스에 적용하여 해당 메서드 또는 클래스의
실행 전에 사용자가 인증되었는지를 확인합니다.
만약 사용자가 로그인되어 있지 않으면 해당 메서드 또는 클래스에 접근할 수 없게된다.
isAuthenticated()
Spring Security의 표현식 중 하나로 , 현재 사용자가 익명이 아닌, 로그인 상태라면 true를 반환
현재 사용자가 인증되었는지를 나타내는데
인증된 사용자는 로그인한 사용자를 의미하며, Spring Security의 인증 프로세스를 통해 확인된 사용자이다
2차 변경된 코드
@PreAuthorize("isAuthenticated()")
@GetMapping("/mypage")
public String myPage(Model model , Principal principal) {
model.addAttribute("id",principal.getName());
return "/user/mypage";
}
실습 중 발생한 에러
https://gi-dor.tistory.com/236
728x90
'Back_End > SpringBoot' 카테고리의 다른 글
회원가입 - 이메일 , 전화번호 <select> (0) | 2024.04.23 |
---|---|
회원탈퇴 - SpringSecurity, MySQL , MyBatis (0) | 2024.04.22 |
시큐리티로 로그인한 회원 정보 조회 , 수정 - SpringSecurity, MySQL , MyBatis (0) | 2024.04.17 |
로그아웃 - SpringSecurity, MySQL , MyBatis (0) | 2024.04.17 |
로그인 SpringSecurity, MySQL , MyBatis (0) | 2024.04.15 |