분류 전체보기 71

🌐HTTP Status Code

HTTP 상태 코드는 RFC 9110 (HTTP Semantics)에 정의된 3자리 정수 응답 코드로, 서버가 클라이언트의 요청을 어떻게 처리했는지를 나타낸다.상태 코드의 첫 번째 자릿수는 응답의 클래스(class) 를 구분하며, 총 5개의 클래스로 나뉜다.Class범위의미1xx100–199Informational — 요청 수신, 처리 계속2xx200–299Successful — 요청 정상 처리3xx300–399Redirection — 추가 동작 필요4xx400–499Client Error — 클라이언트 측 오류5xx500–599Server Error — 서버 측 오류 1. 1xx — InformationalCodeReason Phrase설명100Continue클라이언트가 Expect: 100-conti..

💡 Tech Note 2026.03.23

AI 프롬프트 역할(Role) | 업무별 AI 역할 정리

역할 프롬프팅(Role Prompting)AI에게 특정 전문가의 관점, 우선순위, 사고방식을 부여하는 기법Specific (특정성) : 도메인에 딱 맞는 구체적 직함/전문 분야 명시Detailed (상세성) : "Senior Engineer" 보다 "10년 경력의 Java 백엔드 시니어 엔지니어, 대용량 트래픽 설계 전문" 수준Context-aware (맥락 연동) : 현재 기술 스택, 팀 규모, 제약 조건 함께 제공1. 개발 프로세스 단계별 역할단계역할핵심 지시 키워드추천 모델요구사항 정의Product ManagerPRD 작성, User Story, Acceptance CriteriaGPT-4.1설계Software Architect기술 스펙 설계, 코드 미포함, 통합 포인트 분석GPT-5, Gemini..

Day 57 (1/8) - [AWS 기초] 리눅스 쉘(Shell) 표준 입출력 및 필수 명령어 요약

[AWS 기초] 리눅스 쉘(Shell) 표준 입출력 및 필수 명령어 요약한 줄 요약: 서버 제어를 위한 리눅스 표준 입출력(I/O) 흐름 이해와 권한, 패키지, 파일 관리 핵심 명령어 정리 1. 쉘(Shell)과 표준 입출력(Standard Streams)sh: 쉘(Shell)을 의미하며 운영체제와 사용자 간의 명령어 해석 인터페이스 역할 수행0 (stdin): Standard Input (표준 입력)으로 주로 키보드를 통한 시스템 입력 처리1 (stdout): Standard Output (표준 출력)으로 명령어의 정상적인 실행 결과를 화면에 노출2 (stderr): Standard Error (표준 에러)로 실행 중 발생한 오류 메시지 전용 출력실무 활용 팁: 1>log.out 2>err.out과 같..

소프트웨어 개발 보안 핵심 가이드

1. 소프트웨어 개발 보안의 핵심 목표소프트웨어 보안의 궁극적인 목표 : 정보 자원의 '보안 삼각형'인 기밀성, 무결성, 가용성 유지성공적인 보안 아키텍처는 이 세 가지 핵심 요소가 균형을 이루어야 하며, 어느 한 요소라도 부족하면 전체 시스템의 보안에 심각한 위험이 발생할 수 있음보안 목표정의주요 위협보호 대책 (예시)기밀성인가되지 않은 개인이나 시스템의 접근으로부터 정보 공개 차단무단 접근, 데이터 유출, 도청 등암호화, 접근 제어, 데이터 마스킹, 강력한 인증무결성정보가 무단으로 변경되지 않고 완전하며 정확하게 유지됨데이터 변조, 위조, 삭제, 오용 등디지털 서명, 해시 함수, 데이터 유효성 검사가용성권한을 가진 사용자가 필요할 때 정보를 접근하고 서비스를 지속적으로 사용할 수 있음DoS/DDoS ..

💡 Tech Note 2026.02.27

[서버 보안] API 키 관리 전략 및 환경변수 설정

1. 다층 방어 체계 및 접근 제어 메커니즘IAM 기반 사용자 식별 및 권한 할당의 논리적 격리 수행TLS 1.3 및 AES-256 기반 데이터 암호화 표준 준수SAST, DAST, SCA 도구의 CI/CD 파이프라인 통합 및 상시 가동Audit Trail 구축을 통한 트래픽 전수 로깅 및 추적 체계 운용2. 자산 중요도 기반 리스크 매트릭스등급주요 관리 대상 자산침해 사고 시 기대 손실 규모CriticalAWS Root Key, DB Master인프라 전면 마비 및 데이터 삭제HighJWT Signing Key, PG API Key권한 탈취 및 데이터 무결성 파괴MediumPublic API Key, Internal Token가용성 저하 및 트래픽 비용 급증LowMaps API Key, SNS Clie..

💡 Tech Note 2026.02.27

Day 56 (1/7) - AWS 서버 자동화 배포 및 Crontab 무중단 재시작 스크립트 구현

AWS 서버 자동화 배포 및 Crontab 무중단 재시작 스크립트 구현한 줄 요약: EC2 환경 내 Spring Boot 자동 배포 파이프라인 구성 및 cron 기반 프로세스 감시·재시작 로직 구축 1. 초기 환경 세팅 및 빌드 프로세스파일 전송 및 압축 해제: Xftp를 활용해 서버로 전송된 아카이브 파일(deploy.tar) 압축 해제 및 불필요한 원본 삭제초기 쉘 스크립트 가동: 서버 타임존 설정(timezone.sh) 및 사용자 정의 초기화 스크립트(myScript.sh) 실행디렉토리 구조화: 프로세스 모니터링을 위한 cron-restart 전용 디렉토리 생성 및 제어 스크립트 복사의존성 설치 및 빌드: JDK 21 설치, Git Clone 후 gradlew 권한 부여 및 프로젝트 빌드 수행sud..

Day 55 (1/6) - Spring Boot 프로젝트 배포 및 원격 제어 도구 활용

[AWS CI/CD] Spring Boot 프로젝트 배포 및 원격 제어 도구 활용한 줄 요약: EC2 환경 내 JDK 설치부터 프로젝트 빌드, nohup을 이용한 무중단 실행 및 Xshell/Xftp를 활용한 서버 제어 과정 정리 1. 인프라 환경 구성 및 소스 코드 빌드소스 코드 복제: git clone [저장소 URL] 명령어로 원격 저장소 프로젝트 파일 로컬 환경 다운로드JDK 21 환경 구축: 최신 패키지 업데이트(sudo apt update) 진행 후 자바 21 버전 설치(sudo apt install openjdk-21-jdk -y) 완료 및 버전 검증(java --version)빌드 권한 및 실행: 디렉토리 이동(cd aws-v1) 후 chmod +x gradlew로 실행 권한 부여, ./g..

Day 54 (1/5) - [AWS & Git] 리눅스 vi 에디터 및 권한 관리 핵심 명령어

📅 2026-01-02 프로젝트 마이그레이션📅 2026-01-05 vi 에디터 및 권한 관리 핵심 명령어한 줄 요약: AWS CI/CD 실무에 필수적인 리눅스 vi 에디터 조작법과 파일 권한 제어(chmod) 및 디렉토리 이동 명령어 정리 1. vi 에디터 주요 모드 및 단축키일반 모드마우스 우클릭: 외부 복사 코드 붙여넣기Shift + v: 텍스트 블록 지정x: 현재 커서 위치 문자 삭제dd: 현재 위치한 행 전체 삭제yy: 현재 위치한 행 복사p: 복사한 데이터 붙여넣기Home / $: 해당 행의 맨 처음 / 맨 끝으로 커서 이동Ctrl + b / Ctrl + f: 화면 기준 위 / 아래로 스크롤 이동입력 모드진입 단축키: a 또는 i 입력 시 텍스트 수정 가능 상태로 진입명령행 모드진입 단축키:..

Day 52 (12/31) - [AWS 기초] 우분투(Ubuntu) EC2 인스턴스 가이드

📅 2025-12-30 프로젝트 핵심 기능 및 로드맵 점검1. 프로젝트 필수 구현 항목 (Required)CRUD 개발: 데이터의 생성(Create), 조회(Read), 수정(Update), 삭제(Delete)를 아우르는 웹 서비스의 핵심 기본 프로세스 완비페이징 처리: 대규모 데이터 노출 시 사용자 편의성 증대 및 서버 부하 분산을 위한 페이지네이션 로직 적용2. 프로젝트 선택 구현 항목 (Optional)댓글 시스템: 게시물 내 사용자 간 상호작용을 위한 비동기 기반 댓글 기능 추가로그인 및 보안 (Spring Security): 인증(Authentication)과 인가(Authorization) 체계 구축을 통한 서비스 안정성 및 사용자 데이터 보호 강화 📅 2025-12-31 AWS EC2 초..

Day 50 (12/29) - 개발 일지: Spring AOP 심화 및 부트 환경 구축

📅 2025-12-29 개발 일지: Spring AOP 심화 및 부트 환경 구축핵심 요약: 스프링 AOP와 트랜잭션의 구조적 이해를 바탕으로 Spring Boot 쇼핑몰 프로젝트 착수 및 효율적인 개발 환경 설정 1. Spring 6 Legacy: AOP 및 트랜잭션 복습AOP (Aspect Oriented Programming): 관점 지향 프로그래밍을 통한 핵심 로직과 부가 기능(로깅, 보안 등)의 분리주요 설정 및 어드바이스(Advice):@Before: 타겟 메서드 실행 전 공통 로직 수행 (JoinPoint 파라미터 활용)@Around: 메서드 실행 전후를 모두 제어하는 가장 강력한 어드바이스트랜잭션(Transaction) 관리:spring-tx 라이브러리를 통한 선언적 트랜잭션 설정데이터 무..