EasyTip
전체
OneCLI API KEY 보안 | AI 에이전트 전용 시크릿 금고, Rust 기반 오픈소스 게이트웨이 | EasyTip
EasyTip
전체경제·금융지식·교양여행·글로벌시사·세계생활·건강테크·IT
테크·IT

OneCLI API KEY 보안 | AI 에이전트 전용 시크릿 금고, Rust 기반 오픈소스 게이트웨이

2026년 3월 13일 00:48·61 views·9분 읽기
OneCLIAI 에이전트 보안시크릿 관리Rust 게이트웨이API 키 보안프록시 자격증명 주입오픈소스 금고HashiCorp Vault 대안에이전트 시크릿 금고AES-256-GCM

목차

1 OneCLI의 작동 원리와 핵심 아키텍처 2 기존 시크릿 관리 도구와의 비교 3 실전 활용 시나리오와 보안 고려사항
4 OneCLI의 현실적 한계와 보완 전략 5 자주 묻는 질문

AI 에이전트에게 API 키를 직접 넘기는 건 빈집에 현관 비밀번호를 써 붙이는 것과 다르지 않다. 2024년 한 해 동안 공개 GitHub 저장소에서 발견된 하드코딩된 시크릿은 2380만 건이며, 전년 대비 25% 증가했다. 유출된 키의 70%는 2년이 지나도 여전히 활성 상태로 남아 있었다. AI 에이전트가 자율적으로 수십 개의 API를 호출하는 시대에, 이 문제는 단순한 불편을 넘어 사업 존폐를 좌우하는 보안 리스크로 커졌다.

2025년 한 해에만 AI 관련 보안 사고가 1만 6200건 발생했고, 이는 전년 대비 49% 증가한 수치다. 88%의 조직이 AI 에이전트 보안 사고를 경험했다는 조사 결과도 나왔다. 에이전트의 자율성이 높아질수록 키 유출의 피해 반경은 기하급수적으로 넓어진다.

OneCLI는 이 문제에 정면으로 답하는 오픈소스 프로젝트다. Rust로 작성된 HTTP 게이트웨이가 AI 에이전트와 외부 서비스 사이에 위치하여, 에이전트가 실제 API 키를 보지 못한 채 정상적으로 서비스를 호출할 수 있게 해준다. Docker 한 줄이면 로컬에서 바로 실행 가능하다.

1

OneCLI의 작동 원리와 핵심 아키텍처

OneCLI의 설계 철학은 단순하다. 에이전트에게 가짜 키(placeholder)를 주고, 진짜 키는 암호화된 금고에 보관한다. 에이전트가 HTTP 요청을 보내면 OneCLI 프록시가 중간에서 가짜 키를 진짜 키로 교체하고, 요청을 외부 서비스로 전달한다. 에이전트는 진짜 키에 절대 접근하지 못한다.

구체적인 흐름은 이렇다. 먼저 OneCLI에 실제 API 자격증명을 저장한다. 에이전트에는 FAKE_KEY 같은 플레이스홀더를 할당한다. 에이전트가 게이트웨이를 통해 HTTP 호출을 하면, OneCLI 프록시가 요청의 호스트와 경로 패턴을 매칭하여 올바른 자격증명을 찾아낸다. 그 다음 FAKE_KEY를 REAL_KEY로 교체하고, AES-256-GCM으로 암호화되어 있던 진짜 키를 복호화하여 아웃바운드 요청에 주입한다.

아키텍처는 세 개의 핵심 컴포넌트로 구성된다. Rust로 작성된 HTTP 게이트웨이(포트 10255)가 요청을 가로채 자격증명을 주입한다. Next.js 기반 웹 대시보드(포트 10254)에서 에이전트, 시크릿, 권한을 관리한다. AES-256-GCM으로 암호화된 시크릿 스토어가 자격증명을 안전하게 보관하며, 요청 시점에만 복호화가 이루어진다.

💡 TIP

OneCLI는 외부 데이터베이스 없이도 작동한다. 내장된 PGlite(임베디드 PostgreSQL)로 바로 실행 가능하며, 팀 단위로 사용할 경우 별도의 PostgreSQL이나 Google OAuth를 연결하면 된다.

1.1

Docker 한 줄로 시작하기

설치는 놀라울 정도로 간단하다. docker run --pull always -p 10254:10254 -p 10255:10255 -v onecli-data:/app/data ghcr.io/onecli/onecli 명령 한 줄이면 프록시, 금고, 대시보드가 모두 포함된 단일 컨테이너가 실행된다. localhost:10254에서 대시보드를 열고, 에이전트를 생성하고, 시크릿을 추가한 뒤, 에이전트의 HTTP 게이트웨이를 localhost:10255로 지정하면 끝이다.

에이전트 쪽에서는 기존 코드를 변경할 필요가 없다. HTTPS_PROXY 환경변수를 설정하면 에이전트의 기존 HTTP 호출에 자격증명이 자동으로 주입된다. SDK도 래퍼도 필요 없다.

2

기존 시크릿 관리 도구와의 비교

AI 에이전트 시크릿 관리 영역에서는 이미 여러 솔루션이 경쟁하고 있다. 각각의 접근 방식과 한계가 뚜렷하게 다르므로, 프로젝트 환경에 맞는 선택이 중요하다.

2.1

OneCLI vs HashiCorp Vault

HashiCorp Vault는 엔터프라이즈 시크릿 관리의 사실상 표준이다. RBAC(역할 기반 접근 제어)과 최소 권한 원칙을 기반으로 설계되어 있으며, 동적 자격증명 발급이 가능하다. 하지만 핵심적인 한계가 있다. Vault는 시크릿을 안전하게 에이전트의 문 앞까지 전달하지만, 일단 에이전트가 키를 받은 순간 그 키는 에이전트의 메모리에 평문으로 존재한다. 프롬프트 인젝션 공격으로 에이전트가 키를 유출하도록 조작당할 수 있다.

OneCLI는 이 문제를 프록시 패턴으로 해결한다. 에이전트의 메모리에 진짜 키가 존재하지 않으므로, 프롬프트 인젝션으로 키 자체를 탈취하는 공격이 원천적으로 차단된다.

비교 항목OneCLIHashiCorp Vault
접근 방식프록시 기반 키 주입시크릿 전달 및 관리
에이전트 키 노출불가능메모리에 평문 존재
설치 난이도Docker 한 줄PKI 구성 필요
동적 자격증명미지원AWS IAM 등 지원
RBAC에이전트별 스코프정교한 정책 시스템
적합한 환경개인 개발자, 소규모 팀엔터프라이즈
라이선스Apache 2.0BSL(소스 사용 가능 라이선스)
2.2

OneCLI vs AgentSecrets vs Earl

AgentSecrets는 제로 지식(Zero-Knowledge) 자격증명 플랫폼으로, 클라이언트 측에서 X25519 키 교환과 AES-256-GCM으로 암호화한 뒤 서버에 저장한다. 팀 단위 워크스페이스와 클라우드 동기화를 지원하지만, OneCLI처럼 프록시 기반의 투명한 키 주입 방식은 아니다.

Earl은 또 다른 Rust 기반 CLI 도구로, OS 키체인에 시크릿을 저장하고 에이전트와 외부 서비스 사이에서 게이트웨이 역할을 한다. 요청 템플릿을 사전에 검토하는 방식이라 OneCLI보다 더 제한적이지만 그만큼 통제력이 높다.

비교 항목OneCLIAgentSecretsEarl
언어Rust + Next.jsTypeScriptRust
아키텍처HTTP 프록시 게이트웨이제로 지식 금고요청 템플릿 샌드박스
키 저장소내장 PGlite + AES-256-GCMOS 키체인 + 클라우드OS 키체인
팀 협업Google OAuth 지원팀 워크스페이스단일 사용자
프레임워크 호환모든 HTTP 기반Claude Code 등MCP 기반 에이전트
코드 변경 필요없음 (HTTPS_PROXY)SDK 연동 필요템플릿 정의 필요
⚠️ 주의

OneCLI는 키 유출은 차단하지만, 에이전트가 가짜 키로 잘못된 API 호출을 하는 것까지 막지는 못한다. 프롬프트 인젝션된 에이전트가 정상적인 경로로 악의적인 작업을 수행할 수 있는데, 이는 모든 프록시 기반 솔루션의 공통된 한계다. 요청 수준의 인가(authorization) 체계는 아직 업계 전반에서 해결되지 않은 과제다.

3

실전 활용 시나리오와 보안 고려사항

OneCLI가 실질적인 가치를 발휘하는 상황은 명확하다. 여러 AI 에이전트를 동시에 운용하면서, 각 에이전트가 서로 다른 API에 접근해야 하는 환경이다.

3.1

멀티 에이전트 환경의 키 관리

예를 들어 코딩 에이전트는 GitHub API에, 이메일 에이전트는 Gmail API에, 프로젝트 관리 에이전트는 Linear API에 접근해야 한다. 기존 방식이라면 각 에이전트의 환경 변수에 API 키를 하드코딩하거나, 별도의 시크릿 매니저에서 키를 가져와야 했다. OneCLI를 사용하면 하나의 금고에 모든 키를 저장하고, 호스트와 경로 패턴 매칭으로 각 에이전트에 필요한 키만 자동으로 주입된다.

에이전트별로 독립된 액세스 토큰이 발급되므로, 특정 에이전트의 권한을 즉시 회수하는 것도 가능하다. 기존에는 키를 회수하려면 모든 에이전트를 돌아다니며 환경 변수를 일일이 삭제해야 했지만, OneCLI에서는 대시보드에서 한 번만 클릭하면 된다.

3.2

호스트 스코핑으로 유출 반경 제한

Hacker News 토론에서 가장 호평받은 기능 중 하나가 호스트 스코핑이다. 각 자격증명이 특정 호스트와 경로 패턴에만 매칭되도록 설정할 수 있어서, 프롬프트 인젝션된 에이전트가 악의적인 외부 호스트로 키를 유출하려 해도 프록시가 이를 차단한다. GitHub 자격증명은 api.github.com으로만, Stripe 키는 api.stripe.com으로만 전달되는 식이다.

💡 TIP

HTTPS 요청의 경우, OneCLI는 MITM(Man-in-the-Middle) 인터셉션 방식으로 작동한다. Rust 게이트웨이가 TLS를 종단하고, 자격증명을 주입한 뒤, 새로운 TLS 연결로 외부 서비스에 요청을 전달한다. 이를 위해 에이전트의 인증서 저장소에 OneCLI의 프록시 인증서를 등록해야 한다.

3.3

감사 추적(Audit Trail)

OneCLI는 어떤 에이전트가, 언제, 어떤 API 호출을 했는지 모든 기록을 남긴다. 에이전트의 자율적 행동이 늘어날수록, 사후 추적 가능성은 보안의 핵심 요소가 된다. 웹 대시보드에서 실시간으로 요청을 승인하거나 거부하는 것도 가능하다.

💡 TIP

OneCLI는 OpenClaw, NanoClaw, IronClaw, Dify, n8n, OpenHands 등 사실상 모든 에이전트 프레임워크와 호환된다. HTTP 프록시 방식이므로 프레임워크에 종속되지 않는다.

4

OneCLI의 현실적 한계와 보완 전략

Hacker News 토론에서 개발자들이 지적한 한계점들을 정리하면 다음과 같다.

첫째, 프록시 기반 솔루션의 근본적 한계가 있다. 에이전트가 진짜 키를 보지 못하더라도, 가짜 키로 동일한 API 호출을 할 수 있다. 에이전트가 프롬프트 인젝션을 통해 악의적인 API 호출(예: GitHub에서 main 브랜치에 강제 푸시)을 수행할 수 있으며, OneCLI는 이를 차단하지 못한다. 키 유출 방지와 행동 통제는 별개의 문제다.

둘째, Node.js 환경에서 HTTP_PROXY 환경변수를 제대로 존중하지 않는 경우가 있다. 이 문제를 해결한 개발자들은 MITM 프록시를 별도 컨테이너에서 실행하고, iptables로 모든 요청을 강제 리다이렉트하는 방법을 사용했다.

셋째, AWS 액세스 키처럼 단순 교체가 불가능한 자격증명이 있다. AWS 요청은 SigV4 서명이 필요하므로, 키 교체 후 요청에 다시 서명해야 한다. OneCLI가 이를 지원하는지는 아직 확인되지 않았다.

넷째, 팀 환경에서의 확장성이다. CI/CD 파이프라인에는 localhost가 없고, 여러 개발자가 에이전트를 공유할 때는 접근 제어와 감사 추적이 필수다. OneCLI의 Google OAuth 지원이 이 부분을 일부 해결하지만, 엔터프라이즈 수준의 RBAC에는 HashiCorp Vault가 여전히 우위에 있다.

⚠️ 주의

OneCLI 프록시는 반드시 에이전트의 실행 샌드박스 외부에서 운영해야 한다. 에이전트가 프록시 프로세스의 메모리를 직접 읽을 수 있는 환경이라면 키 보호 효과가 무력화된다. Docker 컨테이너를 분리하거나, Kubernetes에서 사이드카 패턴을 사용하는 것이 안전하다.

4.1

보완 전략 체크리스트

OneCLI만으로 해결되지 않는 영역은 다른 도구와 조합해야 한다. 단기적으로는 호스트 스코핑을 철저히 설정하여 키 유출 반경을 제한하고, 에이전트별 독립된 액세스 토큰을 발급한다. 중기적으로는 작업(Task) 단위로 수명이 짧은 파생 토큰을 사용하여, 작업 완료 시 즉시 폐기하는 패턴을 도입한다. 장기적으로는 mTLS 사이드카 구성을 통해 에이전트의 네트워크 수준 인증을 강화하는 것이 권장된다.

AI 에이전트의 자율성은 점점 높아지고 있다. 코딩 에이전트가 GitHub에 코드를 커밋하고, 이메일 에이전트가 자동으로 회신하고, 데이터 에이전트가 프로덕션 DB에 쿼리를 날리는 시대가 이미 시작됐다. 이 흐름에서 보안은 속도의 반대말이 아니라 전제 조건이다.

OneCLI는 AI 에이전트 시크릿 관리라는 새로운 카테고리에서 가장 접근성 높은 출발점을 제공한다. Docker 한 줄이면 시작할 수 있고, 코드 변경 없이 기존 워크플로우에 투명하게 통합된다. Apache 2.0 라이선스의 오픈소스이므로 상업적 사용에도 제약이 없다.

다만 만능 해결책은 아니다. 키 유출 방지와 행동 통제는 별개의 문제이며, 프로덕션 환경에서는 호스트 스코핑, 단기 토큰, 감사 로그를 반드시 병행해야 한다. 에이전트에게 일을 맡기되, 신뢰는 검증 위에 쌓아야 하는 시대다.

지금 바로 Docker가 설치된 터미널을 열고, OneCLI를 실행해보자. 에이전트가 키를 보지 못하는 세상이 어떤 것인지, 5분이면 체험할 수 있다.

테크·IT 다른 글

  • 앤트로픽 소스코드 유출 사태앤트로픽 소스코드 유출 사태 | 클로드 코드부터 미토스까지 보안 사고 연대기2026년 3월 31일 12:02
  • 백그라운드에서 업데이트되었습니다 알림백그라운드에서 업데이트되었습니다 알림 | 원인과 대처법 6단계2026년 3월 31일 11:51
  • iOS 앱스토어 심사 통과 핵심 조건 8가지iOS 앱스토어 심사 통과 핵심 조건 8가지 | 리젝 방지 실전 노하우2026년 3월 31일 07:41
  • Sherlock OSINT 도구Sherlock OSINT 도구 | 유저네임 하나로 400개 이상 SNS 계정을 추적하는 방법2026년 3월 30일 17:21
  • AutoClaw로 OpenClaw 로컬 구동하기AutoClaw로 OpenClaw 로컬 구동하기 | 원클릭 AI 에이전트 설치와 활용법2026년 3월 30일 15:47