Show HN: Agent Vault – 에이전트를 위한 오픈 소스 자격 증명 프록시 및 볼트
요약
Agent Vault는 AI 에이전트가 API를 호출할 때 발생하는 자격 증명 유출 위험을 근본적으로 해결하는 오픈소스 솔루션입니다. 기존 방식처럼 비밀번호를 에이전트에 직접 전달하지 않고, 로컬 프록시(Local Proxy)를 통해 네트워크 계층에서 필요한 인증 정보를 주입합니다. 이를 통해 에이전트가 어떤 종류의 공격(예: Prompt Injection)을 받더라도 민감한 자격 증명이 노출될 위험이 없습니다. AES-256-GCM으로 암호화되며, 모든 요청 로그는 기록되지만 본문이나 헤더 같은 민감 정보는 제외하여 보안과 가시성
핵심 포인트
- 에이전트가 비밀번호를 직접 보유하지 않도록 설계되어 Prompt Injection 등 자격 증명 유출 위험을 원천 차단합니다.
- 로컬 프록시(Local Proxy)를 통해 HTTP 요청을 가로채어 네트워크 계층에서 필요한 인증 정보를 주입하는 '브로커링 액세스' 방식을 사용합니다.
- 자격 증명은 AES-256-GCM으로 암호화되어 저장되며, 패스워드 없이도 운영 가능한(passwordless) 모드를 지원합니다.
- 모든 요청에 대한 메타데이터(메서드, 호스트, 경로, 상태 등)를 기록할 수 있어 감사 추적(Audit Trail)이 가능하며, 민감한 내용은 제외됩니다.
HTTP 자격 증명 프록시 및 볼트
Infisical에서 제공하는 오픈 소스 자격 증명 브로커(credential broker)로, 사용자의 에이전트와 에이전트가 호출하는 API 사이에 위치합니다.
에이전트는 자격 증명을 보유해서는 안 됩니다. Agent Vault는 브로커링된 접근 방식을 통해 자격 증명 유출 위험(credential exfiltration risk)을 제거합니다.
기존의 비밀 관리 방식(secrets management)은 자격 증명을 호출자에게 직접 반환하는 것에 의존합니다. 이는 AI 에이전트와 같은 비결정론적 시스템에서는 문제가 됩니다. 이러한 시스템은 프롬프트 주입(prompt injection)에 취약하여, 공격자가 에이전트가 비밀을 유출하도록 속일 수 있기 때문입니다.
Agent Vault는 다른 접근 방식을 취합니다: Agent Vault는 볼트에 저장된 자격 증명을 에이전트에게 절대 노출하지 않습니다. 대신, 에이전트는 로컬 프록시를 통해 HTTP 요청을 라우팅하며, 이 프록시가 네트워크 계층(network layer)에서 적절한 자격 증명을 주입합니다.
- 검색 방식 접근(Brokered access), 검색 아님 - 사용자의 에이전트는 스코프가 지정된 세션(scoped session)과 로컬
HTTPS_PROXY를 받습니다. 에이전트는 목표 API를 정상적으로 호출하며, Agent Vault는 네트워크 계층에서 적절한 자격 증명을 주입합니다. 자격 증명은 에이전트에게 절대 반환되지 않습니다. - 모든 에이전트와 작동 - 사용자 정의 Python/TypeScript 에이전트, 샌드박스화된 프로세스(sandboxed processes), Claude Code, Cursor, Codex 같은 코딩 에이전트를 포함하여 HTTP를 사용하는 모든 것과 작동합니다.
- 저장 시 암호화(Encrypted at rest) - 자격 증명은 무작위 데이터 암호화 키(random data encryption key, DEK)를 사용하여 AES-256-GCM으로 암호화됩니다. 선택적 마스터 비밀번호는 Argon2id를 통해 이 DEK를 감싸며(wraps), 따라서 비밀번호를 변경해도 자격 증명을 재암호화할 필요가 없습니다. PaaS 배포 환경을 위해 비밀번호 없는 모드(passwordless mode)도 제공됩니다.
- 요청 로그(Request logs) - 프록시된 모든 요청은 볼트별로 메서드, 호스트, 경로, 상태, 지연 시간(latency), 그리고 관련된 자격 증명 키 이름과 함께 영구 저장됩니다. 본문(Bodies), 헤더(headers), 쿼리 문자열(query strings)은 기록되지 않습니다. 보존 기간은 볼트별로 설정할 수 있습니다.
전체 세부 정보는 설치 가이드를 참조하십시오.
curl -fsSL https://get.agent-vault.dev | sh
agent-vault server -d
macOS(Intel + Apple Silicon) 및 Linux(x86_64 + ARM64)를 지원합니다.
docker run -it -p 14321:14321 -p 14322:14322 -v agent-vault-data:/data infisical/agent-vault
비대화형 환경(Docker Compose, CI, detached mode)의 경우, 마스터 비밀번호를 환경 변수(env var)로 전달하십시오:
docker run -d -p 14321:14321 -p 14322:14322 \
-e AGENT_VAULT_MASTER_PASSWORD=your-password \
-v agent-vault-data:/data infisical/agent-vault
Go 1.25+ 및 Node.js 22+가 필요합니다.
git clone https://github.com/Infisical/agent-vault.git
cd agent-vault
make build
sudo mv agent-vault /usr/local/bin/
agent-vault server -d
서버는 14321 포트에서 HTTP API를, 14322 포트에서 TLS 암호화된 투명 HTTPS 프록시(transparent HTTPS proxy)를 시작합니다. 웹 UI도 이용 가능합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 HN AI Posts의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기