작동 방식

세 구성요소가 모든 접속을 통제하고 기록합니다

게이트웨이가 통제와 기록을 하고, Management 가 정책을 정해 내려보내고, 데스크톱 에이전트가 접속하는 사람을 증명합니다. Management 는 접속 경로에 있지 않습니다.

구성요소

세 구성요소가 하는 일

모든 접속에 세 구성요소가 다 필요한 것은 아닙니다. 에이전트를 설치할 수 없는 접속은 발급 주소나 가상 키로 게이트웨이에 직접 닿습니다.

사내망인터넷운영 DB망서버망DMZManagement관리 콘솔, 정책, 계정감사 저장소OpenSearch 등, SIEM 으로 사본이상 행위 탐지서명된 정책감사 기록게이트웨이 클러스터DAC노드 3대게이트웨이 클러스터Server Gateway노드 2대게이트웨이 클러스터AI Gateway노드 2대OraclePostgreSQLMySQLweb-01web-02batch-01OpenAIAnthropicGoogle Gemini외부 AI 서비스DB 도구ssh, sftpAI 앱직원 PC데스크톱 에이전트가 서비스마다 담당 클러스터로 터널을 엽니다가상 키사내 앱, 배치가상 키로 LLM API 호출
  • 통제되는 접속
  • 정책 배포
  • 감사 기록

통제와 감시 · Data plane

게이트웨이 Gateway

DB, 서버, AI 서비스 앞에서 동작하는 프록시 서버입니다. 통제와 기록이 실제로 일어나는 곳입니다.

하는 일

  • DB 의 통신 규약을 직접 해석해서 접속, SQL 문장, 조회 결과를 읽습니다.
  • SSH 를 양쪽에서 종단해서 서버 명령과 파일 전송을 읽습니다.
  • 접속, 문장, 명령, AI 요청을 정책에 따라 허용하거나 막습니다.
  • 조회 결과와 AI 요청의 민감한 값을 마스킹합니다.
  • 감사 기록을 저장소에 직접 기록합니다.
위치
보호할 DB 와 서버가 있는 망, AI 서비스로 나가는 출구. 망마다 클러스터를 만들고 필요한 만큼 여러 대에 설치하여 실행합니다.
사용하는 사람
직접 다루는 사람은 없습니다. 운영자가 설치하고 Management 가 관리합니다.

관리 · Control plane

Management 관리 콘솔 포함

정책과 계정을 관리하는 서버입니다. 관리자가 사용하는 웹 화면인 관리 콘솔이 함께 들어 있습니다.

하는 일

  • 사용자와 그룹을 관리하고 사내 인증 시스템과 연동합니다.
  • 보호할 서비스를 등록하고 접근 규칙, 마스킹, SQL 통제를 정의합니다.
  • 정책에 서명해서 담당 게이트웨이에 배포합니다.
  • 접근 신청의 결재를 진행하고 감사 기록을 보여 줍니다.
  • 감사 기록에서 이상 행위를 탐지하고 소명과 검토를 진행합니다.
위치
한 대. 게이트웨이와 에이전트가 접속할 수 있는 곳에 설치합니다.
사용하는 사람
보안 관리자, DBA, 서버 관리자

신원 · 사용자 PC

데스크톱 에이전트 Desktop Agent

직원 PC 에 설치하는 앱입니다. 접속하는 사람이 누구인지 게이트웨이에 증명합니다.

하는 일

  • 회사 계정으로 로그인하고 서명된 신원 증명을 받습니다.
  • 등록된 서비스로 가는 접속만 가로채서 담당 게이트웨이로 보냅니다.
  • 접속마다 신원 증명을 붙여 DB 계정을 함께 사용해도 사람을 구분합니다.
  • 접속할 수 있는 서비스 목록을 보여 주고 접근 신청을 받습니다.
위치
직원 PC. macOS 와 Windows 를 지원합니다.
사용하는 사람
DB 도구, SSH, AI 도구를 사용하는 직원
  • Management 는 접속 경로에 있지 않습니다

    DB, 서버, AI 서비스로 가는 데이터는 게이트웨이만 지나갑니다. Management 가 멈춰도 동작 중인 게이트웨이는 이미 받은 정책으로 통제와 기록을 계속합니다.

  • 에이전트는 접속을 막는 장치가 아닙니다

    에이전트는 접속을 게이트웨이로 보내고 신원을 증명합니다. 다른 길을 닫는 것은 DB 와 서버의 방화벽입니다.

  • 사용자는 접속 주소를 변경하지 않습니다

    DB 도구와 ssh 에는 실제 주소와 평소의 계정을 그대로 넣습니다. 에이전트에 로그인하면 가로채기가 자동으로 켜집니다.

처리 과정

접속 한 번이 처리되는 과정

개발자가 PC 의 DB 도구로 운영 DB 에 접속해서 조회하는 경우를 따라가 봅니다.

  1. 1

    로그인

    사용자가 데스크톱 에이전트에 회사 계정으로 로그인합니다. Management 는 접속할 수 있는 서비스 목록과 서명된 신원 증명을 내려줍니다.

  2. 2

    접속 시도

    사용자가 DB 도구에 실제 DB 주소와 DB 계정을 넣고 접속합니다. 에이전트는 등록된 서비스로 가는 접속만 가로챕니다.

  3. 3

    터널

    에이전트가 담당 게이트웨이로 상호 TLS(mTLS) 터널을 열고, 맨 앞에 신원 증명과 원래 목적지를 실어 보냅니다.

  4. 4

    접속 판정

    게이트웨이가 이 사람이 이 서비스에 이 DB 계정으로 접속해도 되는지, 위치와 시간대까지 판정합니다. 허용되지 않으면 DB 에 닿기 전에 끊습니다.

  5. 5

    로그인 중계

    게이트웨이가 DB 에 연결하고 로그인 과정을 그대로 전달합니다. 패스워드가 맞는지는 DB 가 판단합니다.

  6. 6

    SQL 통제

    문장을 실행할 때마다 금지된 종류의 문장인지 확인합니다.

  7. 7

    결과 마스킹

    DB 가 돌려준 결과에서 민감한 값을 마스킹한 뒤 사용자에게 전달합니다.

  8. 8

    감사 기록

    세션, 문장, 판정 결과, 행 수를 사용자 이름과 함께 감사 저장소에 기록합니다.

접속이 유지되는 동안에도 게이트웨이는 주기적으로 다시 판정합니다. 허용된 시간이 지나거나 정책이 변경되면 열려 있는 세션을 끊습니다.

설치 형태

서버 한 대에서 여러 망의 클러스터까지

어디에 설치하든 실행되는 것은 Management 하나와 게이트웨이입니다. 망마다 게이트웨이 클러스터를 설치하고 Management 한 대가 전체를 관리합니다.

설치 형태상태내용
서버 한 대(Docker Compose)제공Management, 게이트웨이, PostgreSQL, Caddy 를 호스트 한 대에 설치합니다. 설치 스크립트가 설치, 버전 변경, 되돌리기를 맡습니다. 폐쇄망에는 한 묶음으로 반입합니다.
게이트웨이를 Linux VM 에(systemd)제공컨테이너 없이 게이트웨이 노드를 VM 에 설치합니다. 관리 콘솔에서 교체를 지시하면 노드가 새 버전을 받아 스스로 교체합니다.
Kubernetes(Helm), AWS, Azure준비 중설치 템플릿을 실제 환경에 배포할 수 있도록 마무리하고 있습니다.

설계 원칙

모든 접속이 지나가는 제품은 그 자체가 믿을 만해야 합니다

BeeHind 의 설계는 다섯 가지 원칙을 따릅니다.

  1. 01

    DB 패스워드를 한곳에 보관하지 않습니다

    게이트웨이는 사용자의 DB 로그인을 대신하지 않고 그대로 전달합니다. 패스워드가 맞는지는 DB 가 판단합니다. 패스워드를 한곳에 보관하면 그곳이 공격 목표가 되기 때문입니다.

  2. 02

    모르면 막습니다

    해석하지 못한 문장이나 내용을 볼 수 없는 접속을 통과로 처리하지 않습니다. 마스킹해야 할 컬럼이 결과의 어느 칸에 있는지 계산하지 못하면 그 문장을 거부합니다.

  3. 03

    Management 가 멈춰도 통제는 계속됩니다

    Management 는 접속 경로에 있지 않습니다. 동작 중인 게이트웨이는 이미 받은 정책으로 판정을 계속하고, 감사 기록도 저장소에 직접 기록합니다.

  4. 04

    정책은 서명을 확인한 뒤에만 적용합니다

    Management 가 정책에 서명하고, 게이트웨이는 서명을 검증한 정책만 적용합니다. 스키마를 읽는 조회 계정의 패스워드와 AI 서비스의 API 키는 정책에 넣지 않고, 암호화해서 담당 게이트웨이에만 따로 전달합니다.

  5. 05

    감사에는 실제로 일어난 일만 적습니다

    확인하지 못한 것은 확인하지 못했다고 기록합니다. 행 수를 세지 못했으면 0 이 아니라 "알 수 없음"으로 남깁니다. 기록을 해시 체인으로 연결하므로 중간 기록을 고치면 검증할 때 드러납니다.

지원 환경

지원하는 DB, 서버, AI 서비스, 운영 환경

실행 중에 외부 네트워크를 호출하지 않으므로 폐쇄망에 반입해서 사용할 수 있습니다.

2026년 10월 기준

보호 대상 DB
MySQL, MariaDB, PostgreSQL, Oracle, SQL Server
보호 대상 AI 서비스
OpenAI 호환 API(OpenAI, Google Gemini, DeepSeek 등), Anthropic API, claude.ai 웹 앱, MCP 서버(Streamable HTTP)
AI 연결 대상
Amazon Bedrock, Google Vertex AI, Claude Platform on AWS, Microsoft Foundry, Azure OpenAI
서버 접속
SSH(접속 통제, 명령 통제와 감사, 세션 녹화와 재생, 포트 포워딩 목적지 제한), SFTP(파일 전송 통제와 파일별 감사), TCP 포트(준비 중)
데스크톱 에이전트
macOS 13.4 이상(Apple Silicon), Windows 10, Windows 11(x64)
로그인 연동
LDAP, Active Directory, OIDC, SAML 2.0, SCIM 2.0, 패스키
감사 저장소
OpenSearch, Elasticsearch, 관계형 DB(PostgreSQL, MySQL, MariaDB, Oracle)
SIEM 전달
syslog(RFC 5424), Splunk HEC
이상 행위 탐지
탐지 규칙 프리셋 9종, 사람별 검토와 소명, 월간 점검 보고서, SIEM 전달

용어

자주 나오는 용어

제품 화면과 문서에 자주 나오는 말입니다.

게이트웨이 클러스터gateway cluster
같은 서비스를 함께 맡는 게이트웨이 노드의 묶음입니다. 망마다 클러스터를 만들고, 서비스마다 담당 클러스터를 정합니다.
인터셉트interception
데스크톱 에이전트가 등록된 서비스로 가는 접속을 PC 안에서 가로채 게이트웨이로 보내는 것입니다. 사용자는 접속 주소를 변경하지 않습니다.
에이전트리스agentless
에이전트 없이 발급받은 접속 주소로 게이트웨이에 직접 접속하는 경로입니다. 협력사 PC, BI 도구, 배치 서버가 사용합니다.
신원 증명assertion
Management 가 로그인한 사용자에게 서명해서 내주는 짧은 수명의 증명입니다. 게이트웨이가 서명을 확인해 사람을 특정합니다.
인증 중계authentication relay
게이트웨이가 DB 로그인을 대신하지 않고 클라이언트와 DB 사이에서 그대로 전달하는 것입니다. 패스워드는 DB 가 확인합니다.
대리 로그인credential injection
게이트웨이가 보관한 패스워드나 SSH 키, 또는 접속마다 만든 인증서로 대상 서버에 대신 로그인하는 것입니다. 사용자는 서버의 패스워드를 몰라도 됩니다.
TLS 종단TLS termination
암호화된 접속을 게이트웨이가 풀어서 내용을 확인한 뒤 다시 암호화해 DB 로 보내는 것입니다.
계보lineage
조회 결과의 각 항목이 어느 원본 컬럼에서 왔는지를 계산한 것입니다. 별칭이나 함수 뒤에 숨은 민감 필드를 찾는 근거입니다.
값 패턴value pattern
주민등록번호, 카드 번호처럼 모양이 정해진 값을 찾는 규칙입니다. DB 결과와 AI 요청에 함께 사용합니다.
가상 키virtual key
BeeHind 가 사용자와 애플리케이션에 발급하는 키입니다. 게이트웨이가 요청을 보낼 때 회사의 실제 키(조직 키)로 교체합니다.
fail-closed
판단할 수 없을 때 허용하지 않고 거부하는 방식입니다. "모르면 막는다"는 원칙의 다른 이름입니다.

우리 환경에서 BeeHind 를 확인해 보십시오

보호할 DB, 서버, AI 서비스와 망 구성을 알려 주시면 맞는 구성과 도입 순서를 안내해 드립니다. 서버 한 대로 시작할 수 있습니다.