설치 개요

Contexa는 Spring Boot 애플리케이션과 통합되는 AI Native Zero Trust 보안 플랫폼입니다. 이 가이드에서는 사전 요구 사항, 모듈 아키텍처, 설치 경로를 다룹니다.

사전 요구 사항

Contexa를 설치하기 전에 환경이 다음 요구 사항을 충족하는지 확인하세요:

요구 사항 최소 버전 비고
Java 21+ LTS 릴리스 (21)
Spring Boot 3.5.4 스타터 BOM으로 관리 (Jakarta EE 네임스페이스)
Spring Security 6.2+ Spring Boot Starter를 통해 전이적으로 포함
PostgreSQL 15+ Identity 저장소 및 pgvector에 필요
Redis Distributed 전용 7.0+ Distributed 모드 전용 — 공유 캐싱 및 이벤트 스트리밍에 필요

LLM 요구 사항 — Contexa는 최소 하나의 LLM 제공자가 필요합니다. 플랫폼은 Ollama(로컬), Anthropic, OpenAI를 지원합니다. 독립 개발 환경에서는 스타터가 기본값으로 채팅에 qwen3.5:9b, 임베딩에 mxbai-embed-large를 사용하는 Ollama를 설정합니다.

모듈 아키텍처

Contexa는 각각 고유한 보안 도메인을 담당하는 모듈식 레이어로 구성됩니다. Spring Boot Starter는 모든 모듈을 단일 의존성으로 통합합니다.

모듈 아티팩트 역할
Starter spring-boot-starter-contexa 통합 의존성; 모든 모듈과 자동 구성을 포함
Common contexa-common 공유 어노테이션(@EnableAISecurity, @Protectable), 열거형, 엔티티 모델, 캐시 추상화
Core contexa-core AI 파이프라인, LLM 오케스트레이션, HCAD 엔진, Zero Trust 평가, RAG 및 벡터 스토어 통합
Identity contexa-identity Identity DSL, 인증 흐름(폼, REST, OTT, 패스키), 적응형 MFA, 세션 관리
IAM contexa-iam XACML 정책 엔진, @Protectable 메서드 인터셉션, 동적 인가, 관리자 대시보드
Auto-Configure contexa-autoconfigure 모든 모듈의 Spring Boot 자동 구성; 클래스패스 및 속성에 기반한 조건부 빈 등록

인프라 모드

Contexa는 내부 컴포넌트(캐싱, 이벤트 처리, 데이터 저장소)의 프로비저닝 방식을 제어하는 두 가지 인프라 모드를 지원합니다:

Standalone 모드 기본값

모든 컴포넌트가 인메모리 구현으로 프로세스 내에서 실행됩니다. 개발, 테스트, 단일 인스턴스 배포에 적합합니다. PostgreSQL 외에 추가 인프라가 필요하지 않습니다.

Distributed 모드

컴포넌트가 분산 캐싱에 Redis, 이벤트 스트리밍에 Kafka, 외부 관측 파이프라인을 사용합니다. 수평 확장이 가능한 다중 인스턴스 프로덕션 배포에 필요합니다.

설치 경로

필요에 가장 적합한 경로를 선택하세요:

의존성 좌표

모든 Contexa 아티팩트는 ai.ctxa 그룹으로 게시됩니다. Starter 의존성이 권장 진입점입니다:

Gradle (Kotlin DSL)
implementation("ai.ctxa:spring-boot-starter-contexa:0.1.0")
Maven
<dependency>
    <groupId>ai.ctxa</groupId>
    <artifactId>spring-boot-starter-contexa</artifactId>
    <version>0.1.0</version>
</dependency>