분류 전체보기
-
웹보안WEB/BACK 2025. 7. 4. 08:43
웹 보안의 중요성에 대해 이야기해보겠습니다. 오늘은 SOP(동일 출처 정책)와 CORS(교차 출처 자원 공유)에 대해 알아보겠습니다. 웹 애플리케이션을 개발할 때 보안은 매우 중요한 요소입니다. 특히, 다양한 출처에서 자원을 요청할 때 발생할 수 있는 보안 문제를 해결하기 위해 SOP와 CORS가 필요합니다.### 1. 웹 보안의 중요성웹 보안은 사용자 데이터 보호와 웹 애플리케이션의 신뢰성을 높이는 데 필수적입니다. 해커들이 웹 애플리케이션의 취약점을 이용해 데이터를 탈취하거나 악성 코드를 주입할 수 있기 때문에, 이를 방지하기 위한 다양한 보안 정책이 필요합니다.### 2. SOP(동일 출처 정책) 이해하기SOP는 웹 브라우저가 다른 출처의 자원에 접근하는 것을 제한하는 보안 정책입니다. 동일 출처란..
-
springboot dynamic datasource, 동적 데이터 (AbstractRoutingDataSource)WEB/BACK 2025. 2. 21. 14:41
요구사항1. 동적으로 db등록2. 등록한 db에서 쿼리 실행 기존에 application.properties에다가spring.datasource.url=jdbc:postgresql://xspring.datasource.driverClassName=org.postgresql.Driverspring.datasource.username=spring.datasource.password= 이런식으로 db정보를 입력해 자동으로spring boot가 bean을 생성하도록 뒀던것과는 다르게 사용자로부터 입력받아서 그 디비에서 쿼리 실행되도록하기 AbstractRoutingDataSource는 Connection이 필요한 시점에 원하는 DataSource로 Routing해주는 DataSource의 구현체이다. det..
-
EFK(ElasticSearch, fluentd, kibana), fluent-logger, springbootWEB/BACK 2025. 1. 15. 16:24
그중에 fluentd를 윈도우에서 테스트 진행 goal : springboot2.7버전의 로그를 fluentd에서 확인 1. fluentd (플루언트 디) installhttps://docs.fluentd.org/installation/install-by-msi Install by .msi Installer (Windows) | FluentdLast updated 2 months agodocs.fluentd.org 여기서 다운로드하고, fluentd.conf파일을 관리자권한으로 열어서 아래와같이 수정 @type forward port 24224 bind 0.0.0.0 @type stdout @type json 2. springboot프로젝트의 pom.xml에 추가 org.flue..
-
EFK (Elasticsearch, Fluentd, Kibana)WEB/BACK 2025. 1. 13. 13:38
마이크로 서비스 아키텍처에서 중앙 집중식 로깅 컴포넌트를 쉽게 설명하자면, 여러 개의 서비스를 한곳에서 관찰하고 문제를 추적할 수 있게 도와주는 **"통합 노트"**라고 생각하면 돼요. 왜 필요할까? 마이크로 서비스 아키텍처에서는 여러 개의 서비스가 독립적으로 동작하죠. 그런데 각각의 서비스가 자기 로그만 따로 저장하면, 서비스 간 문제가 생겼을 때 어디서부터 잘못됐는지 찾기가 매우 어려워요. 중앙 집중식 로깅은 뭐야? 이럴 때 중앙 집중식 로깅은 모든 서비스의 로그를 한곳에 모아주는 역할을 해요. 이렇게 되면 마치 여러 개의 일기를 한 권의 다이어리로 정리한 것처럼, 각 서비스의 로그를 한곳에 모아서 필요한 정보를 한눈에 확인할 수 있도록 만들어 주는 거예요. 대표적인 구현 도구로는 ELK Stack ..
-
aws marketplace 연동 , aws credential 자격증명 설정,entitlementsWEB/BACK 2024. 11. 29. 13:38
1. 사전준비 pom.xml필요한 구성 요소만 가져오기 software.amazon.awssdkbom2.27.9pomimport software.amazon.awssdkmarketplacemetering software.amazon.awssdkmarketplaceentitlement 1. aws credential 자격증명 설정final String accessKey = ""; final String secretKey = ""; final String endPoint = ""; final String regionName = ""; @Test public void test() throws Exception { // 자격 증명 설정 AwsBasicCredentials aws..
-
query DSL 적용방법정리 & 자동 빌드WEB/BACK 2024. 11. 29. 13:30
1. 의존성 추가pom.xml에 QueryDSL 관련 의존성을 추가 com.querydslquerydsl-aptprovidedcom.querydslquerydsl-jpa com.mysema.mavenapt-maven-plugin1.1.3processsrc/main/generatedcom.querydsl.apt.jpa.JPAAnnotationProcessor 2. Q-Class 생성QueryDSL은 엔티티 클래스에 대한 Q-Class를 생성합니다. JPA 엔티티 클래스를 작성한 후, IDE의 빌드를 통해 Q-Class가 생성됩니다.예를 들어, Hello 엔티티가 있다면, QHello 클래스가 생성됩니다.Maven install 3. Repository 설정 동적쿼리 예시 4. 컨트롤러 설정
-
프로젝트에 등록된 모든 oauth-clients 확인 APIWEB/BACK 2024. 11. 29. 13:26
clientRegistrationRepository를 통한 동적 조회@Autowiredprivate ClientRegistrationRepository clientRegistrationRepository;@GetMapping("/oauth-clients")public String getOAuthClients() {StringBuilder clients = new StringBuilder();for (ClientRegistration registration : ((Iterable) clientRegistrationRepository)) {clients.append("Client: ").append(registration.getClientName()).append("\n");}return clients.to..