AWS, Google Cloud, Microsoft Azure, and Cloudflare now all offer agent sandboxes. None built them the same way.

The New Stack · 2026.07.27
AWS, Google Cloud, Microsoft Azure, and Cloudflare now all offer agent sandboxes. None built them the same way.

클라우드 벤더별 에이전트 샌드박스, 왜 지금 주목해야 하는가

AWS, Google Cloud, Microsoft Azure, Cloudflare — 주요 클라우드 벤더 4사가 모두 에이전트 샌드박스(Agent Sandbox) 환경을 제공하기 시작했다. 이 흐름은 단순한 신기능 경쟁이 아니다. 자율적으로 코드를 실행하는 에이전트 워크로드가 현실 인프라에 올라오기 시작했다는 신호이며, 백엔드 개발자 입장에서는 실행 환경 설계 전략을 다시 검토해야 할 시점이다.

에이전트 샌드박스란 코드나 명령을 격리된 환경에서 안전하게 실행하기 위한 런타임 경계를 의미한다. 외부 입력을 받아 동적으로 코드를 실행하는 워크로드에서 보안 격리, 자원 제한, 실행 결과의 예측 가능성은 핵심 요건이다. 특히 신뢰할 수 없는 코드가 실행될 가능성이 있는 에이전트 파이프라인에서는 샌드박스가 없다면 호스트 시스템 전체가 공격 표면이 된다.

벤더마다 다른 구현 전략, 이식성 문제로 이어진다

주목할 점은 4개 벤더가 서로 다른 방식으로 샌드박스를 구현했다는 것이다. Google Cloud는 이미 검증된 컨테이너 실행 플랫폼인 Cloud Run을 기반으로 샌드박스를 구성했다. WeAreDevelopers World Congress에서 퍼블릭 프리뷰로 공개된 이 방식은 기존 Cloud Run의 격리 모델 위에 에이전트 실행 컨텍스트를 얹는 구조다.

반면 AWS, Azure, Cloudflare는 각자의 격리 및 실행 철학에 따라 다른 접근을 택했다. 이 차이는 단순한 API 명세의 차이가 아니라, 격리 단위(프로세스/컨테이너/VM/엣지 워커), 자원 제한 방식, 네트워크 정책, 실행 수명주기 관리 등 근본적인 설계 결정의 차이다. 동일한 에이전트 로직을 두 클라우드에 배포하더라도 동작 방식이 달라질 수 있다는 뜻이다.

// 샌드박스 실행 요청 예시 (추상화된 인터페이스 관점)
SandboxExecutionRequest request = SandboxExecutionRequest.builder()
    .code(untrustedCode)
    .timeoutSeconds(10)
    .memoryLimitMb(256)
    .networkPolicy(NetworkPolicy.NONE)
    .build();

SandboxResult result = sandboxClient.execute(request);

벤더별 구현이 다르다는 것은 추상화 레이어 없이 특정 벤더 SDK에 직접 의존할 경우, 향후 클라우드 전환이나 멀티클라우드 전략 수립 시 상당한 마이그레이션 비용이 발생할 수 있음을 의미한다.

백엔드 설계 관점에서 실질적으로 고려할 것

에이전트 샌드박스를 서비스 아키텍처에 도입할 때 백엔드 개발자가 짚어야 할 포인트는 다음과 같다.

  • 격리 수준(Isolation Level): 프로세스 수준인지, 컨테이너 수준인지, VM 수준인지에 따라 보안 강도와 콜드 스타트 지연이 달라진다. 실행 빈도와 보안 요구사항을 함께 고려해야 한다.
  • 실행 시간 및 자원 제한: 에이전트 코드는 예측 불가능한 루프나 메모리 사용을 유발할 수 있다. 타임아웃과 메모리 상한을 명시적으로 설정하고 초과 시 강제 종료 전략을 갖춰야 한다.
  • 운영 일관성: 로컬 개발 환경과 클라우드 샌드박스 환경 간 동작 차이를 최소화하기 위해, 컨테이너 이미지 기반의 실행 단위를 표준화하는 것이 유리하다.
  • 벤더 종속 최소화: 실행 요청·결과 처리 로직을 인터페이스로 추상화하고, 벤더별 구현체를 분리하는 헥사고날 아키텍처 패턴 적용을 검토할 만하다.
// 벤더 추상화 인터페이스 예시
public interface AgentSandboxClient {
    SandboxResult execute(SandboxExecutionRequest request);
}

// Google Cloud Run 구현체
public class CloudRunSandboxClient implements AgentSandboxClient { ... }

// AWS 구현체
public class AwsSandboxClient implements AgentSandboxClient { ... }

정리

  • 4대 클라우드 벤더가 모두 에이전트 샌드박스를 제공하기 시작했으나, 격리 전략과 실행 모델이 벤더마다 상이하므로 이식성 리스크를 사전에 고려해야 한다.
  • 격리 수준, 타임아웃, 자원 제한은 신뢰할 수 없는 코드를 실행하는 에이전트 파이프라인에서 설계 초기부터 명시적으로 결정해야 할 요소다.
  • 벤더 종속을 줄이려면 샌드박스 실행 인터페이스를 추상화하고 구현체를 분리하는 구조적 접근이 실질적인 대안이 된다.
Source
The New Stack
원문 보기 →
← 목록으로 돌아가기