[Spring Security] Authentication의 구조
·
Web & Android/Spring Security
Spring에서 로그인을 한다는 것은 SecurityContext가 authenticated가 true인 Authenticaiton(인증) 객체를 갖고 있는 상태 → 이때 authintication(인증)은 AnonymousAuthenticationToken이 아니어야 함! SecurityContextHolder(인증보관함 보관소)는 인증을 보관하는 보관소이며 Authentication(인증)을 갖고 있는 SecurityContext(인증보관함)를 보관 AuthenticationProvider(인증 제공자)은 Authentication(인증)을 제공하며 이는 여러개가 존재할 수 있음 AuthenticationProvider(인증 제공자)를 관리하는 Interface를 AuthenticationManage..
[Spring Security] Jwt Token 사용
·
Web & Android/Spring Security
Jwt Token 로그인 💡 Use Case Specification (명세서) 우선 login, join을 제외한 페이지를 전부 막는다. 사용자가 login하면 id, pw를 검증하고 Token을 생성하여 발급한다. 발급 받은 Token 권한에 따라 해당 페이지를 접근할 수 있다. 💡 [build.gradle] implementation 'io.jsonwebtoken:jjwt:0.9.1' implementation 'javax.xml.bind:jaxb-api:2.3.0' implementation 'org.springframework.boot:spring-boot-starter-security' SourceCode & Explanation configuration AuthenticationConfig ..
[Spring Security] Security 사용
·
Web & Android/Spring Security
// gradle 추가 implementation 'org.springframework.boot:spring-boot-starter-security:3.0.1' 애플리케이션을 만들기 위해서는 보통 인증/인가 등의 보안이 필요 웹에서 인증이란 해당 리소스에 대해서 작업을 수행할 수 있는 주체인지 확인하는 것 인가는 인증 과정 이후에 일어나며 리소스에 접근 시 인가된 유저인지 확인(접근 권한 확인) → 시큐리티를 추가 후 웹페이지에 접속하면 해당 화면이 뜸 → user, 화면에 찍히는 비밀번호로 로그인 → 한 번 로그인하면 서버가 계속 기억을 하고 있기 때문에 로그인이 되는지 확인하려면 http://localhost:8000/logout 로 접속하여 로그아웃을 해줘야 함! → 비밀번호가 복잡하..
[Thymeleaf] 날짜 변환
·
Web & Android/Thymeleaf
1. String타입을 Date타입으로 포맷하는 방법 2. Date타입을 Date타입으로 포맷하는 방법
[Thymeleaf] 기본 문법
·
Web & Android/Thymeleaf
th:text 화면에 데이터 출력 textarea에 넘겨받은 변수값을 표시할 때 사용한다. th:value로 하면 안뜬다. 예제1 Hello World!!! 스프링 부트 수업 중 @Controller public class ThymeleafController { @GetMapping("/thymeleaf/ex1") public String ex1(Model model) { model.addAttribute("data", "SpringBoot Study"); return "thymeleaf/ex1"; } } // 출력 결과 // SpringBoot Study 예제2 Hello World!!! 스프링 부트 수업 중 @Controller public class ThymeleafController { @GetM..
[Thymeleaf] 페이지 레이아웃
·
Web & Android/Thymeleaf
// 의존성 추가 implementation 'nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:3.2.0' header, footer, menu 등 공통적인 페이지 구성 요소들을 페이지 레이아웃 기능을 통해서 1개로 관리 예제 header.html 헤더 영역입니다. Shop 상품 등록 상품 관리 장바구니 구매이력 로그인 로그아웃 Search footer.html Footer 페이지 2023 Spring Shopping Mall Project layout1.html temp.html LayoutTest 중 입니다.