본문 바로가기

spring boot10

[Spring Boot]OAuth2: Authorization-Server (Custom 인증 서버 구축)(2) OAuth2: Authorization-Server (Custom 인증 서버 구축)(2)지난 포스팅에 이어서, Spring Security에서 제공하는 spring-oauth2-authorization-server 를 나의 Application에 맞게 수정해 볼 예정이다.  Spring Security 에서 제공하는 기본적인 Security Config 라던지, 기본적인 개념은 아래의 글을 참고하는 것을 추천한다. https://lucas-owner.tistory.com/79 [Spring boot] OAuth2: Authorization-Server (인증 서버 구축)(1)OAuth2: Authorization-Server (인증 서버) 개요요즘 사용하는 대부분의 web, app 에서는 사용자를 인증 .. 2024. 11. 20.
[Spring boot] Spring Boot 3.x^ - Swagger 적용(2) Spring Boot 3.x 버전 Swagger 적용 Spring boot 3.x 이전 버전에서의 Swagger 적용 및 Test 관련 사항은 아래 링크에서 확인하세요! https://lucas-owner.tistory.com/28 [SpringBoot] Swagger API 문서 자동화 간단 연동, 테스트하기Swagger-ui 를 활용한 문서 자동화 - 개발한 Rest API 들의 목록을 확인하고 테스트 할 수있는 Swagger-UI를 Spring Boot 프로젝트에 연동(설정)하고 사용 하는 방법을 알아보자. ○ Swagger란 ? Swagger는 개발한lucas-owner.tistory.com Spring Boot 를 3.x 이상 버전에서는 이전버전의 Swagger 와 별도로, Springdoc O.. 2024. 11. 14.
[Spring boot] OAuth2: Authorization-Server (인증 서버 구축)(1) OAuth2: Authorization-Server (인증 서버) 개요요즘 사용하는 대부분의 web, app 에서는 사용자를 인증 하고 그에 맞는 권한을 부여하여 자원에 접근가능하게 한다.이러한 인증, 인가는 보안에 있어서 가장 핵심적인 문제이고 설계부터 신경을써서 해야한다. 애플리케이션만의 고유한 인증, 인가 체계가 존재한다면 좋겠지만, 필자의 경우에는 여러개의 앱,웹 애플리케이션에 독자적인 인증,인가 기능 구현에 시간을 쏟는것보다는 독자적인 Auth Server 를 통해 비지니스에 집중하기 위해 서버를 만들기로 결정했다. 또한 이렇게 구현했을때의 장점도 존재한다 SSO(Single Sign on) 을 통해 한번의 로그인으로 여러개 사이트에 접속하여 이용할 수 있다는것이다.  그렇다면 비슷한 역할을 해.. 2024. 11. 13.
[Spring Boot] WireMock - API Test WireMock을 이용한 API 서버 Test- 다양한 프로젝트를 진행하다보면 Server To Server 통신을 진행해야만 하는 상황들이 발생한다(소셜로그인, MSA 아키텍처구조 ...)이럴때 테스트 대상이되는 모든 서버를 Local 에 구동시킨채 Test 를 진행하기에는 많은 자원낭비, 많은 시간소요 등 불편한점이 많다.특히 Test Code 를 작성해서 테스트마저 자동화를 많이 하고 있는 추세이기 때문이다.  WireMock 이란- Http 기반의 API 서비스를 Mocking 하기 위한 라이브러리이다.즉, 외부 서비스에 의존하는 테스트를 진행할때, 외부 서비스의 Response(응답)을 Mocking 하여 테스트를 진행할 수 있게 해준다.(외부 서비스에서 받아올 응답을 미리 지정해둔 형태로 Te.. 2024. 10. 29.
[ElasticSearch] 버전별 Spring Boot 설정 변화 및 정리 [ElasticSearch] 버전별 Spring Boot 설정 정리- 최근의 IT 를 보게되면 고성능 고효율의 하드웨어, 그리고 고수준의 소프트웨어들이 사용됨에 따라 수많은 데이터들이 생성되게 되었다.이런 빅데이터를 실시간으로 처리하고 검색, 분석하는 능력이 중요해짐에 따라 수많은 솔루션들이 나오게 되었다. 그 중 ElasticSerach 는 빅데이터 처리, 실시간 로그분석 및 텍스트 검색에 중점을 두었다. ElasticSearch는 이런 장점을 기반으로 APM(애플리케이션 성능 모니터링), 데이터 분석, 검색어 실시간 자동 완성 등장점을 살린도구로 자리잡았다. 그렇기에 ElasticSearch 를 적용하기위해서 공부를 하는 사람들이 많이 보이는 추세이다.다만 필자가 Spring boot 와의 연동을 위.. 2024. 10. 17.
[Spring Boot]Jasypt 원리 및 사용방법(yml 설정 암복호화, Boot 3.x^) +String Util Class Jasypt 암복호화 라이브러리프로그래밍 공부를 하고 있는 사람들이라면, 보안에 관련된 수많은 얘기들을 듣고는 한다. 각종 정보들은 보안에 신경써야 한다고 말이다. (DB 접속정보, 사용자 정보, 파라미터 등등)서버간 통신시 암호화가 필요한 경우 라이브러리를 사용하기도 하고, 직접 암복호화 유틸을 만들어서 사용하기도 한다. 우리는 yml 의 DB 정보에 대해서 암호화를 진행해보고, 원리를 간단하게 살펴 보도록 하겠다. 공식문서를 살펴보며 유틸이나, 다른 활용방법에 대해서도 보면 좋을것 같다. 해당글에서는 다루지 않겠다.http://www.jasypt.org/general-usage.html 암호화에 대한 정보는 아래의 글에서 확인!https://lucas-owner.tistory.com/70 AES-25.. 2024. 8. 14.
[JPA] Java로 JPA 설정시 주의할점(.yml 설정 무시) 프로젝트 설정중, application.yml 파일의 JPA 설정이 무시되는 상황이 발생했다. @Entity 기준으로 Table 을 생성하게 해주는 옵션인 ddl-auto 를 Create 로 변경 후 Server 를 실행 시켰는데Create table 쿼리 출력 X, DB에 table 생성 X 상황이 발생한것.  프로젝트에 Multiple Datasource 설정과, 다른 몇몇 설정들을 추가하기전엔 잘 동작하고 있었던 설정이었다. 프로젝트 구조는 대략적으로 아래와 같다.1. Multi module 환경    - core (Entity, service, Repository)    - api (Controller)api 모듈은 core 모듈을 의존하고, scan 하여 사용중. 문제없었음.2. Multiple.. 2024. 8. 12.
[Java & Spring] Version 비교 방법 - version4j Spring (Java) Version 비교 방법 - version4j다양한 상황에서 버전 체크, 비교를 해야하는 경우가 존재한다. git, 앱 버전, java, 자체 프로그램 버전 등등,,  1. Version 이란? version 은 특정 매체에서 제작, 또는 수정이 이루어질때의 제작되거나, 수정된 각각의 판본을 뜻한다.소프트웨어에서의 버전은 수정사항, 기능의 추가사항, 버그수정 등 다양한 작업이후 배포될때 각각의 의미에 맞는 버전을 올리고 배포 작업이 이루어 지게 된다.  Version 은 (.) dot(점) 을 기준으로 구분되며, 다음과 같은 순서에 의해 정의되어있다.Major Version . Minor Version . Build or Maintenance Version = 1.0.1 Majo.. 2024. 6. 25.
[Redis] Redis를 이용한 임시번호 발급(OTP, 임시비밀번호, 인증문자) - Spring Boot 목차 Random String(임시 인증 번호 생성 OTP) Redis에 OTP(임시번호) 저장 유효 OTP 인증 추가적인 흐름 개요 임시 비밀번호 발급, 제한시간내에 발송된 SMS, LMS 와 같은 기능 구현을 위해 테스트 코드 작성. 요건 영어 대,소문자 + 숫자 조합 n자 Random String 인증번호 발급 이후 n분 후 파기 환경 Spring Boot 2.7.10 Redis 7.0.10 Docker 기본적인 Spring Boot 환경 + Redis 연동 및 설정 완료 기준으로 작성합니다. * 연동 설정 관련은 아래 포스팅 참고 https://lucas-owner.tistory.com/57 [Redis] Redis + Spring boot 연동 (2) 1. Redis + Spring Boot 연.. 2024. 3. 23.