Google 11

Kotlin Springboot Rest API 만들기 5 - jwt token, Spring Security로 인증 인가, 로그인 만들기

이전 포스팅에서는 Entity를 토대로 회원가입을 만들어보았습니다. 동시에 i18n을 포함한 Common Response body를 만들었습니다. 이번 포스팅에서는 jwt token, SpringSecurity로 로그인 만들기를 할겁니다. 전체 코드는 여기에 있습니다. API를 만들고 인터넷에 열어두면 위험 소지가 있습니다. 로그인, 회원가입 이외에 다른 API를 그냥 호출하면 401 오류가 나오게 설정하고 headers에 jwt 기반의 token 을 넣어야만 호출이 되도록 설정할 예정입니다. 여기서 사용될 Filters는 아래와 같습니다. A Review of Filters Spring Security는 공격에 대한 인증, 권한 부여 및 보호 기능을 제공하는 프레임워크입니다. SpringSecurity..

Kotlin 2023.01.23

springboot로 Rest api 만들기(5) API 인터페이스 및 결과 데이터 구조 설계

전체 소스코드 https://github.com/GHGHGHKO/Springboot/tree/main/pepega_chapter_5 GitHub - GHGHGHKO/Springboot: 블로그에 업로드 된 소스코드 블로그에 업로드 된 소스코드. Contribute to GHGHGHKO/Springboot development by creating an account on GitHub. github.com 이전 포스팅에는 swagger를 활용하여 API 문서를 자동화하는 웹페이지를 제작했다. ​ 이번 포스팅에는 API 서버 개발을 본격적으로 진행해 보기 위해 현재 API 인터페이스 및 결과 데이터의 구조를 살펴보고 확장 가능한 형태로 설계할 것이다. ​ API는 제공 대상이 클라이언트 APP이나 WEB 개..

SpringBoot 2021.10.22

SpringBoot redis 활용(.haskey, .set, .get)

토큰 제한시간은 30분 만료시간 10분 이내에 재발급 하면 토큰이 재생성 되는 방식이다. 만료시간 이전에 토큰을 발급하면 바뀌지 않은 기존의 토큰이 발급된다. 위 내용을 예시로 진행할 예정이다. OS : Windows 10 Redis : docker, P3X Redis UI Java 14 redis 위주의 코드를 적을 계획이다. @Configuration public class RedisConfig { @Value("${spring.redis.host}") private String redisHost; @Value("${spring.redis.port}") private int redisPort; @Bean public LettuceConnectionFactory lettuceConnectionFacto..

DB 2021.10.22

cmd, ssh 원격접속 오류 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

ssh 접속시 RSA 공유키 충돌로 인해 접속이 안되는 경우 ​ 보통 호스트가 서버에 접속할 때 생기는데 서버의 ssh나 OS를 설치, 재설치 했을 때 생기는 문제이다 ​ 호스트에선 서버의 IP와 RSA 키를 가지고 있는데 서버의 ssh, OS를 재설치 함으로써 RSA키가 바뀌어 위와 같은 현상이 생기곤 한다 ​ 방법은 ssh-keygen -R [IP or DomainName] ssh-keygen -R 111.111.111.111 이후 다시 ssh 명령어로 접속하면 된다 ​ 그래도 안될경우 ​ known_hosts 파일을 지워야 하는데 ​ cmd의 경우 C:\Users\계정명\.ssh 안에있는 파일을 지우면 된다 2019-06-04 오후 07:35 . 2019-06-04 오후 07:35 .. 2019-0..

프린터 외부 공유 | IP 대역이 다른 프린터 공유

A : 공유기, 자동 IP 설정 (서버), Windows 10 B : 고정 IP (클라이언트) B -> A 접근 후 출력 ​ 공유기 : ipTIME A2004NS, 프린터 : SINDOH N606 ​ ​ 192.168.0.1 접속 192.168.0.1 페이지 관리도구 클릭 ​ ​ 고급 설정 -> 특수기능 -> DDNS 설정 ​ ​ 호스트 이름, testtest.iptime.org 사용자 ID, 사용중인 이메일 주소 사용자 암호, 알아서 입력 ​ 이후 등록 클릭 다른 사용자의 이름이라 나오면 이미 있는 이름이므로 다른이름으로 바꿀 것 ​ 정상 등록 포트포워드 설정 NAT/라우터 관리 -> 포트포워드 설정 ​ 내부 IP 주소 : 공유할 컴퓨터 IP 입력 규칙 이름 : 마음대로(나중에 포트 이름에 넣어야 함)..

springboot로 Rest api 만들기(4) Swagger API 문서 자동화

전체 소스코드 https://github.com/GHGHGHKO/Springboot/tree/main/pepega_chapter_4 GitHub - GHGHGHKO/Springboot: 블로그에 업로드 된 소스코드 블로그에 업로드 된 소스코드. Contribute to GHGHGHKO/Springboot development by creating an account on GitHub. github.com ​ 이전 포스팅에는 H2 Database를 활용하여 GET, POST 방식으로 데이터를 출력하고 도출하는 방법을 진행했었다. ​ 이번 포스팅에는 프론트앤드 개발자가 편하게 참고할 수 있는 문서인 Swagger라는 것을 활용하여 API 문서 자동화를 진행해보려 한다. ​ ​ 시작 ​ ​ build.grad..

SpringBoot 2021.10.21

springboot로 Rest api 만들기(3) H2 Database 연동

전체 소스코드 https://github.com/GHGHGHKO/Springboot/tree/main/pepega_chapter_3 GitHub - GHGHGHKO/Springboot: 블로그에 업로드 된 소스코드 블로그에 업로드 된 소스코드. Contribute to GHGHGHKO/Springboot development by creating an account on GitHub. github.com 전 포스팅에서는 boot를 활용하여 HelloWorld를 GetMapping, ResponseBody로로 출력해보았다. ​ 이번 포스팅에는 SpringBoot에 Database를 연동하는 실습을 포스팅하겠다. ​ Database는 H2 database를 활용할 예정이다. ​ ​ H2 Database H2..

SpringBoot 2021.10.21