전체 글 (88) 썸네일형 리스트형 JWT ( Json Web Token ) 이란? 목차 1. JWT 란? 2. JWT 구성요소 3. JWT 장단점 4. JWT 인증 방식 5. Access Token / Refresh Token JWT 란? JWT는 "JSON Web Token"의 약자로, 웹 및 애플리케이션 간에 정보를 안전하게 전송하기 위한 표준화된 방법 중 하나입니다. JWT는 클레임(claim) 기반의 토큰이며, 토큰 안에는 JSON 형식으로 데이터가 포함되어 있습니다. 이 토큰은 서버와 클라이언트 간의 정보 교환에 사용되며, 주로 사용자 인증 및 권한 부여에 활용됩니다. JWT 구조 JWT 는 Header, Payload, Signature 세 부분으로 구성되어있으며, 각 부분은 . 을 기준으로 나누어져 있으며, Json 형태로 Base64 URL 인코딩 되어 있습니다. Enc.. Vue 3 bootstrap 적용하기 부트스트랩 설치 npm install bootstrap-vue-3 설치 후 main.js 에 부트스트랩을 등록합니다. import { createApp } from 'vue' import App from './App.vue' //부트스트랩 import BootstrapVue3 from 'bootstrap-vue-3' import 'bootstrap/dist/css/bootstrap.css' import 'bootstrap-vue-3/dist/bootstrap-vue-3.css' const app = createApp(App); app.use(BootstrapVue3); app.mount('#app'); 세팅완료 부트스트랩 class 또는 vue 전용 태그를 사용하시면 됩니다!. ./gradlew bootjar 사용 시 permission denied 해결 방 git 에서 clone 후 gradlew를 사용하여 build 시 permission 오류가 발생하는 원인은 Window 에서 파일을 생성 한 후 리눅스 환경에서 실행하려고 할때 일 확률이 높습니다. 왜냐하면 Window 환경에서 파일 생성 시 파일 권한은 644로 설정되기 때문입니다. 아래 명령어를 통해 gradlew 의 권한을 확인 할 수 있습니다. $ git ls-tree HEAD 이처럼 644로 권한이 설정되어있을 경우 권한을 744로 수정하시면 실행 시킬 수 있습니다. $ git update-index --add --chmod=+x gradlew 변경후 git 에 push 후 다시 확인해보시면 755 로 변경된 것을 보실 수 있습니다. 이제 다시 ./gradlew bootjar 를 입력하시면 정.. Docker 컨테이너 이름 변경 docker 컨테이너를 실행할때 --name 속성을 지정해주지 않으면 랜덤한 값으로 이름이 지정됩니다. 해당 사진은 docker 로 postgresql 을 실행했을때의 모습입니다. --name 을 지정해주지 않아서 NAMES 에 임의의 값인 vigorous_faraday 라는 이름이 붙었습니다. 이 이름을 변경해보도록 하겠습니다. sudo docekr rename [old_name] [new_name] docker name 은 고유값이기 때문에 중복이 불가능합니다!. 저는 vigorous_faraday 를 postgres 로 변경해보도록 하겠습니다. sudo docker rename vigorous_faraday postgres 변경된 것을 보실 수 있습니다. Docker 설치 우분투 22.04 버전 / Ubuntu 22.04 기존에 설치된 docker 제거 sudo apt-get remove docker docker-engine docker.io 최신상태 업데이트 sudo apt-get update 도커 설치 sudo apt install docker.io 도커 모든 종속성 설치 sudo snap install docker 도커 설치 확인 docker -v 도커 테스트 hello-world 라는 이미지 실행 sudo docker run hello-world 여기서 run 명령어는 이미지가 없으면 pull 한 후 start 해줍니다. ( 도커 명령어는 따로 ) 도커 이미지 확인 sudo docker images 아까 전 내려받은 hello-world 가 있습니다. 컨테이너 확인 sudo docker ps -a 컨테이너 삭제 s.. Spring Security + Spring Boot / Rest API Login 구현 목차 1. 개요 2. 개발환경 3. 주요 클래스 4. Config 설정 5. 동작 흐름 6. 동작 결과 7. 참조 개요 Rest API 를 적용한 상태에서 JWT 방식에서 Session 방식으로 인증, 인가를 변경해야 했고, 스프링 시큐리티의 기본 설정인 Form 인증 방식을 Rest API 에 맞게 변경했던 방법을 공유하고자 포스팅을 하게 됐습니다. 개발환경 JDK 17 Spring Boot 3.1.3 Spring Security 6.1.3 DB Postgresql JPA 테스트 - Postman 주요 클래스 필터 관련 클래스 1. CustomAuthenticationFilter import lombok.Data; import com.fasterxml.jackson.databind.ObjectMappe.. 11. 방문자 패턴 Visitor Pattern 목차 1. Visitor Pattern 이란? 2. Visitor Pattern 클래스 다이어그램 예시 3. 코드 예시 4. 실행 결과 Visitor Pattern 이란? 데이터 구조와 데이터 처리를 분리해주는 패턴 입니다. 데이터 처리 방식을 기존의 소스 코드 변경 없이 새로운 클래스 추가만으로 확장할 수 있으므로 개방-폐쇠 원칙을 준수할 수 있습니다. 데이터 구조는 Composite Pattern 을 사용해 표현을 사용합니다. Visitor Pattern 클래스 다이어그램 예시 이름 내용 Unit 데이터 구조를 나타내는 클래스 Item 단일 데이터 하나의정수 값을 가진 클래스 ItemList Unit 타입의 객체를 여러개 가질수 있도록 하여 단일데이터나집합데이터를 포함할 수 있도록 하는 클래스 Vis.. 10. 데코레이터 패턴 / Decorator Pattern 목차 1. 데코레이터 패턴이란? 2. 데코레이턴 패턴 구조 예시 3. 코드 예시 4. 결과 5. 참조 데코레이터 패턴이란? Decorator Pattern 에서 Decorator 는 "장식하는 사람" 을 뜻하며, 우리가 크리스마트 트리에 여러가지 물건들을 Decoration 하듯, 기능을 계속해서 추가할 수 있는 패턴을 뜻합니다. Decorator Pattern 을 사용하면 실행 중에 동적으로 변경 또는 확장을 할 수 있게 됩니다. 데코레이터 패턴 구조 예시 이름 내용 Item 내용물(Strings) 과 장식(Decorator )을 다루기 위한 클래스 Strings Class 장식할 대상이 되는 클래스 Decorator Class Strings 를.. 이전 1 2 3 4 5 6 7 ··· 11 다음 목록 더보기