전체 글29 SpringSecurity 란 SpringSecurity 란?Spring Security는 스프링 프레임워크(Spring Framework)에서 제공하는 보안 프레임워크로, 애플리케이션의 인증 및 권한 부여를 처리하는 데 사용됩니다. Spring Security는 강력한 인증 및 접근 제어 기능을 제공하며, 애플리케이션을 다양한 공격으로부터 보호하는 데 중요한 역할을 합니다.springsecuirty 는 사용해본 분들은 아시겠지만 편하고 검증된 보안기능을 빠르게 개발할 수 있는 라이브러리 입니다. 지금까지는 저도 단순하게 security를 사용하는데 급급했지만 시간이 남을때 좀 더 자세히 정리해 놓는게 좋을 듯 하여 구조와 라이프 사이클에 대해 정리해볼까 합니다. JWT 적용을 위한 SpringSecurity아래 그림은 기본적인 l.. 2025. 1. 26. JEUS 에러 ( marshalling the XML descriptor failed ) JEUS 문제 상황JEUS에서 발생한 오류로서, Spring Boot 3.2.2로 개발된 애플리케이션을 JEUS 8.5 환경에 배포하려 했습니다. springboot를 사용하지만 JEUS에 배포를 했어야 하므로, 일반적으로 boot와 함께 사용되는 Tomcat을 제외하고 직접 배포를 시도했는데, 이 과정에서 예상치 못한 에러가 발생했습니다. 특히 배포 과정 중 web-fragment.xml 파일을 처리하는 단계에서 문제가 발생했는데, 이는 단순한 구성 오류를 넘어서는 근본적인 호환성 문제였습니다.JEUS 에러 내용 [2025.01.12 23:10:01:959][0] [server1-27] [SERVER-0522] An exception occurred while processing [/home/jeus/.. 2025. 1. 13. openssh 오류 we did not send a packet, disable method 문제 상황최근 제가 개인적으로 진행하고 있는 프로젝트에서 소소한 오류가 발생했습니다. SSH 키를 정상적으로 설정했음에도 클라이언트 서버가 목표 타겟 서버에 접속하지 못하는 현상이 발생했는데요. 처음에는 네트워크 이슈나 키 생성 문제를 의심했지만, 실제 원인은 예상과는 다른 곳에 있었습니다. 오류 내용서버 로그를 확인해보니 다음과 같은 메시지가 반복적으로 나타났습니다."Authentication refused: bad ownership or modes for directory .ssh" "WARNING: UNPROTECTED PRIVATE KEY FILE!"직접 openssl 접속 테스트를 해봤고. 다음과 같은 에러가 발생했습니다. 키를 설정했음에도 클라이언트 서버에서 목표 타겟 서버에 접속하지 못하는.. 2025. 1. 6. Architectural Drivers ( 아키텍처 드라이버 ) 아키텍처 드라이버란 무엇인가?아키텍처 드라이버는 소프트웨어 설계의 방향을 결정짓는 핵심 요소들입니다. 마치 건축가가 건물을 설계할 때 부지의 특성, 예산, 용도 등을 고려하는 것처럼, 소프트웨어 아키텍트도 시스템 설계 시 여러 요소들을 종합적으로 고려해야 합니다. 이러한 요소들이 바로 아키텍처 드라이버이며, 이는 시스템의 성공과 실패를 가르는 결정적인 기준이 됩니다.이것을 실생활에 비유하자면, 집을 설계할 때 고려해야 하는 주요 요소들(예: 거주 인원, 예산, 기후 조건 등)과 비슷합니다.아키텍처 드라이버의 네 가지 핵심 요소아키텍처 드라이버는 크게 네 가지 카테고리로 나눌 수 있습니다: 1. 기능적 요구사항 (Functional Requirements) 이는 시스템이 '무엇'을 해야 하는지를 정의합니다.. 2025. 1. 5. GitLab ISSUE GitLab Issues란 무엇인가?GitLab Issues는 프로젝트의 작업, 버그, 개선 요청, 질문 등을 기록하고 관리할 수 있는 추적 도구입니다.각 이슈는 단일 작업 항목으로 취급되며, 이를 통해 프로젝트의 진행 상황과 우선순위를 명확히 알 수 있습니다. 주요 특징- 이슈 템플릿이슈를 생성할 때 특정 형식을 유지하도록 템플릿을 사용할 수 있습니다.템플릿 예: markdown코드 복사### 이슈 제목 [버그/기능 요청/질문] ### 설명 문제나 요청에 대한 자세한 설명을 작성하세요. ### 재현 방법 (버그의 경우) 1. 실행 단계 2. 예상 결과 3. 실제 결과 ### 추가 참고 자료 관련 스크린샷, 로그 파일 등을 첨부하세요.- 태그와 레이블레이블(Label): 이슈를 범주화하기 위한 도구입니다.. 2025. 1. 4. Design Pattern : Behavioral Patterns 실무 개발자가 바라보는 Behavioral 디자인 패턴의 모든 것개발자로 일하다 보면 코드의 구조화와 패턴에 대해 고민하는 시간이 참 많습니다. 오늘은 제가 실무, 개인 프로젝트에서 자주 사용하는 행위(Behavioral) 디자인 패턴에 대해 이야기해보려 합니다.행위 패턴, 왜 필요한가?처음 개발을 시작했을 때는 "왜 이렇게 복잡하게 해야 하지?"라는 생각을 많이 했습니다. 단순히 if-else로 처리하면 될 것을, 왜 이런 패턴들이 필요할까요? 하지만 프로젝트의 규모가 커지고, 요구사항이 복잡해질수록 이러한 패턴들의 진가가 드러나기 시작했습니다. 행위 패턴은 크게 세 가지 관점에서 우리의 코드를 개선해줍니다:책임을 적절히 분산시켜 각 클래스가 한 가지 일만 잘하도록 만들어줍니다.객체 간의 커뮤니케이션을.. 2024. 12. 2. 이전 1 2 3 4 5 다음