목록전체 글 (75)
ㅇ.ㅇ

최근에 라이브러리 취약점 관련 이슈가 많이 나왔다. 관련 내용을 찾아보다가 SBOM이라는 개념을 알게 되어 정리를 해본다. 1. SBOM이란?SBOM(Software Bill of Materials)은 소프트웨어를 구성하는 모든 라이브러리, 패키지, 의존성, 버전 정보를 정리한 문서다.SBOM이 담고 있는 정보어떤 라이브러리를 쓰고 있는지 (패키지 이름, 버전, 공급업체)오픈소스 라이선스 정보 (MIT, Apache 2.0 등)코드 출처 및 무결성 검증용 해시 값즉, SBOM이 있으면 소프트웨어 보안, 라이선스 관리를 더 효과적으로 할 수 있다. 2. SBOM이 중요한 이유보안 강화사용 중인 라이브러리를 한눈에 파악Log4j 같은 보안 취약점 발생 시 즉시 대응 가능!라이선스 준수오픈소스 라이선스 (MI..

데이터베이스를 다루다 보면 NULL 값을 만나게 된다. NULL은 값이 없는 상태를 의미하며, 연산이나 조건문에서 예상치 못한 결과를 초래할 수 있다. Oracle에서는 NULL을 처리할 수 있도록 몇 가지 함수를 제공한다. NVL, NVL2, COALESCE 함수의 사용법과 차이점을 정리해 보자. 1. NVL : NULL이면 지정한 값 반환NVL(값, 대체값)(1) 값이 NULL이면 대체값을 반환(2) 값이 NULL이 아니면 원래 값 반환--------------------------------------(1) 예제SELECT NVL(NULL, 'DEFAULT') AS result FROM dual;// 결과RESULT--------DEFAULT--------------------------------..

sso 관련 기능들을 커스텀하면서 좀 더 제대로 개념 정리를 해야할 것 같아 이렇게 정리를 하게 되었다. SSO(Single Sign-On)란?SSO는 한 번의 로그인으로 여러 시스템이나 서비스에 접근할 수 있도록 해주는 인증 방식이다. 사용자 경험을 개선하고 보안을 강화하는 데 중요한 역할을 한다. SSO가 필요한 이유1. 편의성 증가사용자는 한 번만 로그인하면 여러 서비스에 접근 가능.로그인할 때마다 비밀번호를 입력할 필요 없음.2. 보안 강화여러 개의 비밀번호를 사용하지 않아 보안 위험 감소.보안 정책을 중앙에서 일괄 적용 가능 → 관리 효율성 증가.3. 관리 비용 절감기업에서 계정 관리 및 비밀번호 재설정 요청 감소.IT 부서의 업무 부담 경감. SSO의 동작 방식SSO는 일반적으로 토큰 기반 ..

최근에 분명 방화벽 때문에 접속이 안 되는 것 같은데, 매번 사용하는 firewalld 명령어가 안 먹혀서 확인해 보니 해당 서버는 ufw로 관리되고 있었다. 그때 찾아보면서 다양한 방화벽이 있다는 걸 알게 되어 간단히 정리를 해본다. 방화벽(Firewall)이란?방화벽(Firewall)은 네트워크 트래픽을 제어하여 불필요하거나 악의적인 접근을 차단하는 보안 시스템이다. 예를들어 서버에서 특정 포트(예: 80, 443, 22, 8080 등)만 허용하고, 나머지는 차단하여 보안을 강화시킬 수 있다. Linux에서 사용되는 대표적인 방화벽 종류1) firewalld (CentOS, RHEL 기본)CentOS/RHEL에서 기본적으로 사용되는 방화벽 관리 도구.동적 규칙 관리 가능 → 설정 변경 후 별도의 재..

로그와 메트릭, 실무에서 왜 중요한가?로그는 개발하면서 자주 들여다보기 때문에 익숙한 한편, 나는 서비스가 아닌 솔루션을 개발하기 때문에 '메트릭'은 많이 만나보지 못했다. 그러다가 작년말쯤 인프런에서 프로메테우스, 그라파나를 실습하는 강의를 보며 메트릭에 대해 알게 되었다. 로그는 서버가 동작할 때 서버의 상태와 동작 정보를 시간 경과에 따라 기록한 결과이며, 시스템의 오류와 문제를 추적하는 데 유용하다. 반면, 메트릭은 시스템의 성능과 상태를 수치화한 통계 데이터로, 시스템의 현재 상태를 쉽게 파악하고 사업 현황을 분석하는 데 활용할 수 있다. 이번 글에서는 이러한 로그와 메트릭에 대해 간략하게 정리해보려고 한다. 로그(logs)란?로그는 애플리케이션이나 시스템이 동작하는 동안 발생하는 이벤트를 기..

에러 내용org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 에러 파악톰캣에서 출력되는 이 로그 메시지는 TLD(Tag Library Descriptor) 파일을 포함하지 않은 JAR 파일이 검색되었다는 뜻..

개발을 하다 보면 JDK, Gradle, Maven 같은 다양한 도구를 설치하고 버전을 관리해야 할 일이 많다. 특히, 여러 버전의 Java를 오가며 작업할 때마다 매번 수동으로 환경변수 설정하는 게 상당히 번거롭다.. 이럴 때 SDKMAN!을 사용하면 Java뿐만 아니라 Gradle, Maven 등 여러 개발 도구의 버전을 쉽게 설치하고 전환할 수 있다. 이번에는 SDKMAN!의 설치방법, 사용방법을 간단히 적어보려고 한다. 1. SDKMAN!이란?SDKMAN!(Software Development Kit Manager)은 JDK, Gradle, Maven, Scala 같은 다양한 개발 도구를 간편하게 설치하고 관리할 수 있는 CLI 기반의 버전 관리 도구다. 기본적으로 Linux/macOS용으로 설계..

Tomcat의 bin 디렉토리 안에는 다양한 파일들이 있어서, 오늘 한번 찾아보며 정리를 하려고 한다. Tomcat의 bin 디렉터리에는 다양한 스크립트 및 실행 파일이 포함되어 있다. 이 파일들은 Windows와 Linux(macOS 포함)에서 Tomcat을 실행하고 제어하는 데 사용된다.1. Tomcat 시작 및 종료 관련 파일 파일명 설명 실행 환경 catalina.shTomcat 서버 실행 및 관리하는 메인 스크립트 (Linux/macOS용)Linux/macOS (SH)catalina.batTomcat 서버 실행 및 관리하는 메인 스크립트 (Windows용)Windows (BAT)startup.shTomcat을 백그라운드에서 실행하는 스크립트 (catalina.sh start와 동일)Linux/..