본문 바로가기

서버구축 (WEB,DB)396

728x90
PostgreSQL 테이블 접근 권한 제어 Row-Level Security (RLS) 기능 Row-Level Security (RLS)는 PostgreSQL에서 사용자의 권한에 따라 특정 행(row)의 접근을 제한하는 기능입니다. 일반적인 테이블 수준의 접근 제어(GRANT, REVOKE)와 달리, 특정 조건을 만족하는 행만 조회/수정/삭제 가능하도록 설정할 수 있습니다.RLS 개념 및 동작 방식RLS의 주요 특징행 단위 보안: 특정 테이블 내에서도 개별 행(row)마다 접근 권한을 다르게 설정 가능.정책 기반 접근 제어: SQL 정책(pg_policy)을 생성하여 행별 접근 제어 규칙을 설정.슈퍼유저도 기본적으로 제한 가능: FORCE ROW LEVEL SECURITY를 사용하면, 슈퍼유저도 RLS를 우회할 수 없음.사용자/역할(Role) 기반 정책 적용 가능.RLS 적용 시나리오멀티 테넌트.. 2025. 2. 13.
Redis 명령어 작동 원리: 고성능 데이터 관리의 시각적 이해 Redis에서 자주 사용되는 주요 명령어 각각의 설명과 활용법을 명령어 옵션 및 코드 예제와 함께 정리한 내용입니다.1. SET 명령어용도: 문자열 값을 특정 키에 저장합니다. 키가 이미 존재하면 기존 값을 덮어씁니다.옵션EX : 지정된 시간(초) 동안만 키가 유지됨.PX : 지정된 시간(밀리초) 동안만 키가 유지됨.NX: 키가 존재하지 않을 때만 설정.XX: 키가 존재할 때만 설정.예제# 단순 저장SET user:1001 "session_data"# 유효 시간 10초 설정SET user:1002 "temp_data" EX 10# 키가 없을 때만 저장SET user:1003 "new_data" NX결과OK: 성공적으로 저장됨.nil: 조건(NX 또는 XX) 만족 못할 때.2. GET 명령어용도: 특정 키.. 2025. 1. 31.
Prometheus와 Grafana로 이상 탐지 자동화: 알림과 시각화 통합 Prometheus를 활용하여 대규모 환경에서 효율적으로 이상 탐지를 수행하기 위한 방법론과 예제입니다. 이를 통해 실시간으로 메트릭을 수집하고 이상 감지를 자동화하여 신속한 대응 체계를 구축할 수 있습니다.1. Prometheus 이상 탐지의 필요성핵심 목표실시간으로 문제를 탐지하여 서비스 가용성을 유지.대규모 메트릭 데이터를 효율적으로 처리하고 분석.자동화된 알림 시스템으로 운영자의 대응 시간 단축.대규모 환경의 도전 과제데이터 볼륨 증가로 인한 성능 저하.복잡한 패턴과 주기적 이상을 동시에 처리.2. Prometheus 이상 탐지 시스템 구성아래와 같은 기본 구조를 기반으로 이상 탐지 시스템을 구성합니다.메트릭 수집: Exporter, Pushgateway, ServiceMonitor 등으로 데이터.. 2025. 1. 29.
Elasticsearch에서 Agent 수집된 로그의 유형별 집계 및 관리 방법 Elastic Agent로 수집된 로그 데이터를 Elasticsearch에서 유형별로 집계하고, 최근 30일 간의 일별 카운트를 집계하는 과정을 단계별로 설명합니다. 아래에 제시된 명령어와 옵션은 Kibana의 Dev Tools에서 사용할 수 있습니다.1단계: 데이터 구조 확인Elasticsearch에 저장된 로그 데이터의 필드 구조를 확인해야 합니다.Elastic Agent가 수집한 로그에는 일반적으로 log.type 또는 event.dataset과 같은 필드가 사용됩니다.@timestamp 필드는 로그의 시간 정보를 나타냅니다.샘플 쿼리GET /your-index-pattern-*/_mapping위 명령어를 실행하면 인덱스의 매핑 정보가 반환됩니다. 여기에서 사용할 필드 이름(log.type 또는 e.. 2025. 1. 28.
Kubernetes RBAC 사용자 생성 및 역할 기반 액세스 권한 제어 쿠버네티스에서 사용자별로 특정 네임스페이스에 대한 권한을 제어하려면 RBAC(Role-Based Access Control)를 활용해야 합니다. 아래는 사용자에게 특정 네임스페이스에 권한을 부여하는 방법입니다.1. 사용자 생성 및 인증서 발급쿠버네티스는 기본적으로 사용자 관리를 제공하지 않으므로, 인증서를 통해 사용자를 식별합니다.# 사용자 개인 키 생성openssl genrsa -out username.key 2048# CSR(Certificate Signing Request) 생성openssl req -new -key username.key -out username.csr -subj "/CN=username"# CSR을 쿠버네티스 CA로 서명하여 인증서 발급openssl x509 -req -in us.. 2025. 1. 26.
728x90
728x90