[Spring] 스프링 시큐리티 설정이 @Bean 기반 구성으로 바뀐 이유
·
Spring Security
Spring Security에서 WebSecurityConfigurerAdapter를 @Bean 기반 구성으로 변경한 이유📌 서론Spring Security는 스프링 서버를 구성하면서 보안을 적용하는 데 많이 사용된다. 특히, 요즘처럼 클라이언트 측 렌더링(Client-Side Rendering, CSR)을 많이 사용하는 환경에서 JWT(JSON Web Token)를 사용하여 인증 및 인가를 구현하는 애플리케이션에서 Spring Security는 매우 중요한 역할을 한다. Spring Security 5.7부터는 시큐리티의 클래스 구성 방식이 기존과는 상당히 달라졌다. 이 글에서는 그 변화를 간단히 설명하고, 새로운 보안 구성 클래스의 작성 방법을 간단히 알아보도록 하자. 1. WebSecurityCo..
[Docker] 단일 단계 빌드 vs 다단계 빌드
·
DevOps/Docker
Docker에서 단일 빌드와 다단계 빌드의 차이점을 알아보자📌 서론사이드 프로젝트를 진행하면서 SpringBoot로 백엔드 서버를 구성했고 K8s를 통해 관리하고 있다. 이때 Spring 프로젝트를 Docker로 빌드하여 그 이미지를 pod에 올려서 배포하고 있는데 이 과정에서 스프링부트를 이미지화시키는 Dockerfile을 작성하면서 어떻게 작성해야 Dockerfile을 잘 작성했다고 할 수 있을지에 대한 고민이 생겼다.그래서 여러 가지 작성 방식을 알아보다가 "단일 단계 빌드, 다단계 빌드"가 존재한다는 것을 알게 되었다.이번 포스트에서는 이 내용들에 대해서 간단하게 정리해 보도록 하겠다. 1. Dockerfile 코드단일 단계 빌드 Dockerfile# 사용할 Java 이미지FROM eclipse..
[k8s] M1 mac에서 k8s, k8s dashboard 구성하기
·
DevOps/k8s
M1에서 k8s 환경을 구성하고 k8s dashboard까지 세팅해 보자📌 서론최근 새로운 회사로 이직한 후 회사 적응에 집중하기로 정하여 한동안 글을 작성하지 못했습니다.한 달쯤 지난 지금 그동안 스스로의 미래에 대해 많은 생각과 고민을 했으며 저는 개발, DevOps를 모두 해보고 싶다는 생각이 들어 다시 개인 공부를 시작했습니다.그래서 이 모든 것을 할 수 있는 개인 프로젝트를 하나 만들었고 이 프로젝트의 로컬 인프라 구성을 k8s로 정했습니다. 이번 포스트는 제가 Apple silicon chip 맥북(M2 max)에서 k8s를 설치한 후 k8s 대시보드까지 세팅해 보는 과정을 설명하고자 합니다. 이 과정 중 많은 블로그들을 확인했지만 그중 한 블로그의 도움을 많이 받았으며 저는 그 과정을 그대..
평가와 리뷰에 대한 생각
·
기타
최근 공부를 하면서 나는 무언가를 아는 것 같으면서도 잘 모르는 것 같다는 생각을 많이 한다. 이것들이 리뷰나 평가가 없기 때문이 아닐까? 라는 고민을 하게 되었다. 이번에 트러블 슈팅 관련 게시글에 좋은 말씀을 해주신 분이 계신데 이 댓글을 보면서 리뷰에 대한 중요성을 느꼈다. 나는 트러블 슈팅이라는 말의 의미조차 제대로 알지 못한 채 글을 작성했다. 나의 미숙함이 그대로 글 속에서 나타났다. 이전까지는 내가 해왔던 것 중에 어떤 것이 잘못되었는지 뭐가 이상한지 어떤 방향이 옳은지 알 수 없었다. 이제는 다른 누군가 해주는 평가를 깊이 새겨들어야겠다. 좋은 평가든 나쁜 평가든 중요한 건 누군가가 평가를 해준다는 것이 소중하게 느껴지고 기분 나쁠 수도 있지만 이것이 발전을 위한 것이라는 생각이 든다. 오..
AWS Message-Driven 완성 3편: SNS와 SQS 연동 및 테스트 전략
·
AWS/SNS, SQS
이번 포스트에서는 SNS와 SQS를 연동해 보도록 하자 1. SNS 주제(Topic) 구독 생성 1. SQS로 들어가기 구독을 위해서는 SNS가 아닌 SQS에서 구독하는게 더 확실하다. 하단과 같이 우측의 메뉴바에서 “대기열”을 클릭하자 1-2. 대기열 이름 클릭하기 대기열에 보이는 목록중에 이름을 클릭해서 들어간다. 이름을 클릭해서 세부 정보 페이지로 들어왔다면 하단의 "SNS구독"이라는 목록을 확인하자 1-3. Amazon SNS주제(topic) 구독하기 하단의 Amazon SNS 주제 구독 버튼을 누른다. 1-4. SQS가 구독할 SNS의 주제 선택하기 하단 박스처럼 내가 SNS의 주제를 선택해서 구독할 수가 있다. 1-5. 주제 구독완료 저장 버튼을 누르면 아래와 같은 팝업창이 나오면서 주제 구독..
AWS RDS로 PostgreSQL 데이터베이스 생성하기
·
AWS/RDS
이번 포스트에서는 AWS에서 지원하는 DB서비스인 RDS(Amazon Relational Database Service)에서 PostgreSQL을 생성해 보도록 하자 1. RDS (Amazon Relational Database Service)를 사용하는 이유 1-1. 관리의 편리성 RDS는 데이터베이스 관리 작업들, 예를 들어 하드웨어 프로비저닝, 데이터베이스 설정, 패치 적용 그리고 백업 같은 작업들을 자동화해 준다. 1-2. 확장성 사용자의 요구에 맞춰서 컴퓨팅 리소스나 스토리지를 쉽게 확장할 수 있다. 1-3. 가용성과 내구성 RDS는 멀티 AZ(Availability Zone) 배포를 지원해서 데이터베이스의 고가용성을 보장한다. 또한 자동 백업, 데이터베이스 스냅샷, 자동 호스트 교체 같은 기능..
Java I/O: BufferedReader, BufferedWriter, Buffer 사용법
·
JAVA
스프링 부트를 통해 개발을 진행하다 I/O작업에서 주로 사용되는 BufferedReader, BufferedWriter에 대한 궁금증이 생겼다. 이에 이번에는 이것들에 대해서 알아봤다. BufferedReader와 BufferedWriter는 자바(Java) 프로그래밍 언어에서 입출력(I/O) 작업을 효율적으로 수행하기 위해 사용되는 클래스이다. 이 클래스들은 버퍼를 사용하여 데이터를 읽고 쓰는 작업을 최적화한다. 1. BufferedReader 1-1. BufferedReader란? BufferedReader는 텍스트 파일이나 입력 스트림에서 문자를 읽을 때 사용된다. 이 클래스는 내부 버퍼를 사용하여 한 번에 여러 문자를 읽어 들이므로, 매번 디스크나 네트워크에서 직접 읽는 것보다 훨씬 빠르다. tr..
Matomo Analytics (웹 분석도구): 데이터의 미래를 설계하다
·
DevOps/웹분석tool (GA, Matomo)
회사에서 프로젝트를 진행하면서 GA를 사용하지 않고 사이트에 대한 분석을 할 수 있는 tool이 필요해서 이것저것 오픈소스를 조사하던 도중 내가 데이터를 가지고 있을 수 있으며 온프레미스 구축이 가능한 Matomo라는 Analytics 를 발견했다. 이에 Matomo가 무엇인지 설명하고 필요한 사람들을 위해 구축방법을 설명한다. 1. Matomo란 무엇인가? Matomo는 웹 분석을 위한 오픈 소스 플랫폼이다. 처음에는 Piwik라는 이름으로 알려져 있었으며, 사용자의 웹사이트 방문, 페이지 뷰, 이벤트 등 다양한 웹 사용 패턴을 추적하고 분석한다. Matomo의 가장 큰 장점은 오픈 소스라는 점으로, 자체 서버에서 운영할 수 있어 데이터 보안에 더 유리하다는 점이다. 오픈 소스 웹 분석 플랫폼이다. 웹..