보안 구성

Zero Trust, HCAD 탐지, SecurityPlane 에이전트 설정을 포함한 Contexa 보안 엔진의 구성 속성입니다.

Zero Trust 속성

contexa.security.zerotrust 아래의 속성으로, SecurityZeroTrustProperties에 바인딩됩니다. Zero Trust 결정 모드, 핵심 임계값, hot-path 처리, 캐시 기간, 요청 추적 동작을 제어합니다. HCAD는 별도의 hcad 접두사에서 구성합니다.

속성타입기본값설명
contexa.security.zerotrust
.enabledbooleantrueZero Trust 엔진 활성화
.modeSecurityModeENFORCE실행 모드: SHADOW(관찰) 또는 ENFORCE(차단)
.max-block-mfa-attemptsint2차단 우회 MFA 최대 시도 횟수
contexa.security.zerotrust.sampling
.ratedouble1.0요청 샘플링 비율 (0.0–1.0)
contexa.security.zerotrust.hotpath
.enabledbooleantruehot-path 빠른 결정 활성화
contexa.security.zerotrust.thresholds
.skipdouble0.3점검 생략 임계값 (이하)
.optionaldouble0.5선택적 인증 임계값
.requireddouble0.7필수 인증 임계값
.strictdouble0.9엄격 차단 임계값
contexa.security.zerotrust.protectable
.rapid-reentry-window-mslong5000보호 자원 재진입 윈도우(ms)
contexa.security.zerotrust.redis
.timeoutint5Redis 작업 타임아웃(초)
.update-interval-secondsint30Redis 상태 업데이트 간격(초)
contexa.security.zerotrust.threat
.initialdouble0.3초기 위협 점수
contexa.security.zerotrust.cache
.ttl-hoursint24결정 캐시 TTL(시간)
.session-ttl-minutesint30세션 캐시 TTL(분)
.invalidated-ttl-minutesint60무효화 캐시 TTL(분)
contexa.security.zerotrust.session
.tracking-enabledbooleantrue세션 추적 활성화

관련 문서: Zero Trust 플로우

HCAD 속성

hcad 접두사 아래의 속성으로, HcadProperties에 바인딩됩니다. 계층적 컨텍스트 인식 탐지(HCAD) 필터 파이프라인과 기준선 학습을 구성합니다.

속성 타입 기본값 설명
hcad
.enabled boolean true HCAD 필터 파이프라인 활성화 또는 비활성화
.filter-order int 100 서블릿 필터 체인에서의 HCAD 필터 순서
hcad.resource
.sensitive-patterns List<String> [] 강화된 분석이 필요한 민감 리소스 URL 패턴
hcad.analysis
.max-age-ms long 3600000 캐시된 분석 결과의 최대 보관 시간(ms)
hcad.threshold
.base double 0.7 기본 이상 탐지 임계값
.min double 0.3 적응 조정 후 최소 임계값
.max double 0.95 적응 조정 후 최대 임계값
.adjustment-rate double 0.01 피드백 주기당 임계값 적응 속도
.sensitivity double 1.0 탐지 감도 전역 배율
.warn double 0.7 차단 전 경고 임계값
hcad.cache
.max-size int 100000 캐시된 분석 항목 최대 수
.ttl-ms long 300000 캐시 항목 TTL(밀리초)
.clear-on-startup boolean false 애플리케이션 시작 시 모든 캐시 항목 삭제
.local.ttl-minutes int 10 로컬 캐시 TTL(분)
hcad.baseline
.min-confidence double 0.3 기준선 데이터 최소 신뢰도
.update-alpha double 0.1 기준선 업데이트용 지수이동평균 알파
.learning.enabled boolean true 실시간 트래픽으로부터의 기준선 학습 활성화
.learning.alpha double 0.1 온라인 기준선 적응 학습률
.bootstrap.enabled boolean true 초기 기준선 구축을 위한 부트스트랩 모드 활성화
.bootstrap.initial-samples int 10 적용 전 필요한 초기 샘플 수
.bootstrap.max-anomaly-score double 0.85 부트스트랩 단계 최대 이상 점수
.statistical.enabled boolean true 통계적 기준선 분석 활성화
.statistical.min-samples int 20 통계 분석 최소 샘플 수
.statistical.z-score-threshold double 3.0 이상치 탐지 Z-점수 임계값
.redis.ttl-days int 30 Redis 기준선 데이터 TTL(일)
hcad.feedback
.learning-rate double 0.1 임계값 조정을 위한 피드백 루프 학습률
.retrain-threshold double 0.7 모델 재학습을 트리거하는 정확도 임계값
.window-size int 1000 피드백 수집 슬라이딩 윈도우 크기
hcad.orchestrator
.enabled boolean true 조율된 분석을 위한 HCAD 오케스트레이터 활성화
.feedback-interval int 300 피드백 처리 간격(초)
.sync-batch-size int 50 기준선 동기화 배치 크기
hcad.vector
.embedding-dimension int 384 행동 분석용 임베딩 벡터 차원
.similarity-threshold double 0.85 행동 패턴 매칭 유사도 임계값
.scenario-detection-enabled boolean true 벡터 기반 시나리오 이상 탐지 활성화
hcad.session
.cookie-name String JSESSIONID HCAD 추적용 세션 쿠키 이름
.header-name String X-Session-Id 무상태 모드에서의 세션 ID 헤더 이름
hcad.signal
.chi-square-threshold double 14.07 신호 이상 탐지 카이제곱 임계값
.history-size int 100 보관할 과거 신호 수
.geoip.provider String api GeoIP 제공자: api 또는 local
hcad.adaptive
.adjustment-rate double 0.1 적응형 임계값 조정 속도
.cusum.threshold double 5.0 CUSUM 변화점 탐지 임계값
.cusum.slack double 0.5 CUSUM 드리프트 허용 슬랙 파라미터
.baseline.window int 100 적응형 기준선 윈도우 크기
hcad.geoip
.enabled boolean false GeoIP 기반 위치 분석 활성화
.db-path String data/GeoLite2-City.mmdb MaxMind GeoLite2 데이터베이스 파일 경로
hcad.redis
.key-prefix String hcad:baseline:v2: HCAD 기준선 데이터의 Redis 키 접두사

현재 OSS 코드에 추가로 존재하는 HCAD 필드

속성기본값설명
hcad.baseline.statistical.update-interval10통계 기준선 갱신 간격
hcad.feedback.baseline.update-threshold0.95피드백을 기준선에 반영하는 임계값
hcad.orchestrator.performance-trackingtrue오케스트레이터 성능 추적 활성화
hcad.vector.cache-ttl-hours24행동 임베딩 캐시 TTL(시간)
hcad.vector.max-cached-embeddings1000캐시할 임베딩 최대 수
hcad.signal.covariance.min-samples30공분산 분석 최소 샘플 수
hcad.signal.geoip.api-urlhttps://ipapi.co/{ip}/json/원격 GeoIP API URL 템플릿
hcad.signal.timing.bucket-count7타이밍 버킷 수
hcad.signal.timing.interval.history-size100타이밍 구간 이력 크기
hcad.sampling.random.floor0.01최소 랜덤 샘플링 비율
hcad.sampling.random.ceiling0.03최대 랜덤 샘플링 비율
hcad.sampling.composite.identifier.enabledtrue복합 식별자 샘플링 활성화
hcad.similarity.hot-path-threshold0.7hot-path 판단에 사용하는 유사도 임계값
hcad.adaptive.min.trust.score0.7적응형 제어 최소 신뢰 점수
hcad.pre-trigger.enabledtrue전체 분석 전 pre-trigger 휴리스틱 활성화
hcad.pre-trigger.cooldown-seconds15반복 pre-trigger cooldown
hcad.pre-trigger.in-flight-ttl-seconds15in-flight pre-trigger TTL
hcad.pre-trigger.negative-cache-seconds3negative cache 유지 시간
hcad.pre-trigger.redline-score70redline 위험 점수
hcad.pre-trigger.high-risk-score50고위험 임계값
hcad.pre-trigger.medium-risk-score30중위험 임계값
hcad.pre-trigger.low-baseline-confidence-threshold0.35낮은 기준선 신뢰도 임계값
hcad.pre-trigger.failed-login-burst-threshold3실패 로그인 폭주 임계값
hcad.pre-trigger.request-burst-threshold12요청 폭주 임계값
hcad.pre-trigger.rapid-request-interval-ms1000급격한 요청 간격 윈도우
hcad.pre-trigger.sensitive-path-indicators[/admin/, /export, /download, /sensitive/, /critical/]민감 경로 패턴 (포함 매칭)

구성 예제

YAML
hcad:
  enabled: true
  filter-order: 100
  resource:
    sensitive-patterns:
      - /admin/api/security-test/sensitive/**
      - /admin/api/security-test/critical/**
  threshold:
    base: 0.7
    sensitivity: 1.0
  baseline:
    learning:
      enabled: true
      alpha: 0.1
    bootstrap:
      enabled: true
      initial-samples: 10
  geoip:
    enabled: false
    db-path: data/GeoLite2-City.mmdb

세션 보안 속성

contexa.security.session 아래의 속성으로, SecuritySessionProperties에 바인딩됩니다. 토큰 생성, 헤더/베어러 추출, hijack 이벤트 wiring, 쿠키 이름, 세션 이상 탐지에 사용하는 위험 임계값을 구성합니다.

속성타입기본값설명
contexa.security.session.create.allowedbooleantrue세션/토큰 생성 허용
contexa.security.session.header.nameStringX-Auth-Token토큰 전달 헤더 이름
contexa.security.session.bearer.enabledbooleantrueBearer 토큰 파싱 활성화
contexa.security.session.cookie.nameStringSESSION세션 쿠키 이름
contexa.security.session.hijack.channelStringsecurity:session:hijack:eventHijack 이벤트 채널 이름
contexa.security.session.hijack.detection.enabledbooleantrueHijack 탐지 활성화
contexa.security.session.threat.ip-change-riskdouble0.4IP 변경 위험 가중치
contexa.security.session.threat.ua-change-riskdouble0.3User-Agent 변경 위험 가중치
contexa.security.session.threat.rapid-access-threshold-msint100짧은 간격 접근 임계값
contexa.security.session.threat.rapid-access-riskdouble0.2짧은 간격 접근 위험 가중치
contexa.security.session.threat.thresholds.monitoringdouble0.5모니터링 임계값
contexa.security.session.threat.thresholds.grace-perioddouble0.7유예 구간 임계값
contexa.security.session.threat.thresholds.invalidationdouble0.9세션 무효화 임계값

관련 문서: 상태 관리 참조

Step-Up 속성

contexa.security.stepup 아래의 속성으로, SecurityStepUpProperties에 바인딩됩니다. 다요소 인증(MFA) 또는 추가 승인이 필요한 고위험 작업 시 Step-Up 인증의 최대 시도 횟수 및 잠금 시간을 정의합니다.

속성타입기본값설명
contexa.security.stepup
.max-attemptsint3Step-Up 인증 실패 시 허용되는 최대 시도 횟수
.lockout-durationint300최대 실패 시도 횟수 초과 시 계정 잠금 기간 (초)

Decision Plane 속성

contexa.saas 아래의 속성으로, Contexa SaaS Decision Plane 서비스와의 통합을 제어합니다. 로컬 결정 결과를 피드백 및 성능 메트릭과 함께 원격 Decision Plane으로 전송하기 위한 엔드포인트, 주기, 재시도 정책 및 OAuth2 클라이언트를 구성합니다.

속성타입기본값설명
contexa.saas
.enabledbooleanfalseSaaS Decision Plane으로의 의사결정 포워딩 활성화 여부
.endpointStringhttps://saas.ctxa.aiSaaS Decision Plane 기본 엔드포인트 URL
.include-reasoningbooleanfalse포워딩 데이터에 결정 근거 포함 여부
.include-raw-analysis-databooleanfalse포워딩 데이터에 원시 분석 데이터 포함 여부
.outbox-batch-sizeint50아웃박스 이벤트 전송 배치 크기
.max-retry-attemptsint10전송 실패 시 최대 재시도 횟수
.retry-initial-backoff-mslong1000재시도 최초 대기 시간 (밀리초)
.retry-max-backoff-mslong60000재시도 최대 대기 시간 (밀리초)
.dispatch-interval-mslong30000이벤트 디스패치 간격 (밀리초)
.pseudonymization-secretStringdefault-dev-secret-change-in-prod데이터 가명화용 솔트/비밀키
.global-correlation-secretStringdefault-dev-correlation-secret글로벌 상관관계 ID 생성용 비밀키
contexa.saas.oauth2
.enabledbooleantrueOAuth2 클라이언트 연동 활성화 여부
.registration-idStringcontexa-saas-clientOAuth2 클라이언트 등록 식별자
.token-uriStringhttps://saas.ctxa.ai/oauth2/tokenOAuth2 토큰 요청 URI
.client-idStringdev-client클라이언트 ID
.client-secretStringdev-secret클라이언트 시크릿
.scopeStringsaas.xai.decision.ingest,...OAuth2 요청 스코프 목록 (쉼표 구분)
.expiry-skew-secondsint30액세스 토큰 만료 판정 보정 시간 (초)

Distributed Enforcement 속성

contexa.security.tiered 아래의 속성으로, TieredStrategyProperties에 바인딩됩니다. 로컬 에이전트와 클라우드/협업 에이전트 간의 계층형(Tiered) 보안 분석 및 통제 실행 정책을 구성합니다. 계층별 활성화 상태, 트런케이션 버퍼, 검색 제한, 보안 정책을 상세 튜닝합니다.

속성타입기본값설명
contexa.security.tiered
.enabledbooleantrue계층형 분석 및 통제 전략 활성화 여부
.native-structured-output-enabledbooleantrue구조화된 출력(JSON/Schema)에 대한 LLM 네이티브 지원 활용 여부
.telemetry-enabledbooleantrueTiered 보안 텔레메트리 발행 여부
.trusted-proxy-validation-enabledbooleantrue신뢰 프록시 IP 검증 활성화 여부
contexa.security.tiered.layer1 / layer2 (분석 계층 설정)
.layer1.enabledbooleantrue1계층(로컬 신속 분석) 활성화 여부
.layer1.default-budget-profileStringCORTEX_L1_INTERACTIVE_STRICT1계층 기본 리소스 예산 프로필
.layer2.enabledbooleanfalse2계층(클라우드 정밀 분석) 활성화 여부
.layer2.default-budget-profileStringCORTEX_L2_EXPERT_STRICT2계층 기본 리소스 예산 프로필
.layer2.enable-soarbooleanfalse2계층 정밀 분석 결과에 따라 SOAR 액션 자동 트리거 여부
contexa.security.tiered.security (보안 의사결정 세부 튜닝)
.security.vector-search-limitint3위협 판단 시 유사의사결정 벡터 검색 매칭 건수 상한
.security.max-similar-eventsint2유사 위협 탐지를 위해 비교할 최근 이벤트 최대 수
.security.max-rag-documentsint3의사결정 보완을 위해 RAG로 주입할 컨텍스트 문서 상한
.security.timeout-mslong70002계층 원격 요청 처리 타임아웃 (밀리초)