AI-translated from English; not yet reviewed by a fluent editor.
# 에이전트가 생성한 명령을 위한 MXC 정책 설정 방법
> Microsoft의 MXC SDK를 사용하면 개발자가 명령과 파일 및 네트워크 정책을 선언할 수 있습니다. 이 문서는 Node V1 작성 경로, 진단 모드, 백엔드 제한을 소개하는 문서 기반 가이드입니다.
By BIG CHANGE Editorial
Published: 2026-10-08T05:14:55.341Z
Updated: 2026-10-08T05:14:55.341Z
Canonical: https://bigchange.ai/blog/mxc-agent-command-containment-guide

AI-generated conceptual illustration by BIG CHANGE; no MXC product interface, hardware, security test or enforcement result is depicted.
Microsoft는 2026년 10월 7일 Microsoft Execution Containers(MXC)의 정식 출시를 발표했습니다. AI 에이전트가 제안한 명령을 실행하는 팀은 명령에 어떤 파일과 네트워크 연결이 필요한지, 그리고 어떤 MXC 백엔드가 그 한계를 적용할 수 있는지 확인해야 합니다. Microsoft의 [출시 게시물](https://blogs.windows.com/windowsdeveloper/2026/10/07/microsoft-execution-containers-policy-driven-containment-for-ai-agents/)은 격리의 목표를 설명하고, [저장소의 사용자 문서](https://github.com/microsoft/mxc)는 설정 세부 사항을 안내합니다. 이 가이드는 해당 문서를 따릅니다. BIG CHANGE는 MXC를 설치하거나 격리된 워크로드를 실행하지 않았습니다.
## 큰 변화
- **달라진 점:** 개발자는 명령과 리소스 정책을 하나의 MXC SDK 인터페이스에 전달할 수 있으며, 인터페이스가 지원되는 호스트 백엔드를 선택합니다. 10월 7일 출시는 모델이 자발적으로 정책을 따르길 기대하는 대신, 에이전트 도구에 사용할 수 있는 문서화된 통합 경로를 제공합니다.
- **중요한 이유:** 팀은 코딩 명령이 작업 디렉터리에 접근하도록 허용하면서 다른 파일 위치와 외부 연결은 해당 워크로드의 권한 밖에 둘 수 있습니다. 효과는 선택한 백엔드와 호스트에 따라 다르므로, 제한을 신뢰하기 전에 백엔드가 실제로 무엇을 적용하는지 확인해야 합니다.
- **살펴볼 점:** Microsoft의 정책 작성 모드는 지원되는 Windows ProcessContainer 호스트에서 차단된 작업을 진단하는 데 도움이 됩니다. 다음으로 검토할 실무적 판단은 제안된 권한이 필요한지, 그리고 정책을 좁힌 뒤 프로덕션 실행이 적용 모드를 사용하는지입니다.
## 호스트와 명령부터 확인하기
MXC는 워크로드를 시작하는 애플리케이션에 통합하는 라이브러리입니다. [README](https://github.com/microsoft/mxc)에는 Rust, .NET, Node용 SDK와 SDK를 포함할 수 없는 애플리케이션을 위한 네이티브 실행 파일이 나열되어 있습니다. Node 패키지에는 네이티브 런타임 리소스가 포함되며 Node.js 24 이상이 필요합니다. Windows에서 네이티브 stdio 전송을 사용하려면 저장소가 Node 24.21.0 이상 또는 26.8.0 이상을 지정합니다. 공개 API는 패키지 루트가 아니라 `@microsoft/mxc-sdk/v1`에서 가져옵니다. .NET 패키지에도 네이티브 리소스가 포함됩니다. Rust 크레이트는 SDK, 엔진, 선택한 백엔드를 사용하는 애플리케이션에 함께 빌드합니다. 네이티브 실행 파일을 사용하려면 해당 플랫폼용 저장소 빌드가 필요합니다.
정책을 작성하기 전에 백엔드를 선택하세요. 저장소에 따르면 Windows 11의 기본값은 `processcontainer` 이고, Linux의 기본값은 `bubblewrap` 이며, macOS의 기본값은 `seatbelt` 입니다. Windows에는 `wslc`와 `isolation_session`도 있습니다. `windows_sandbox`, `microvm`, `hyperlight`는 실험 단계로 표시되어 있습니다. Linux에서는 기본 백엔드인 Bubblewrap처럼 선택한 런타임이 필요합니다. [Windows 버전 표](https://github.com/microsoft/mxc/blob/main/docs/backends/process-container/os-version-support.md)에는 ProcessContainer와 IsolationSession의 최소 빌드가 나와 있습니다. 작업을 실행할 컴퓨터에서 호스트를 사용할 수 있는지, 요청한 정책 기능을 지원하는지 검증해야 합니다.
실제 명령, 작업 디렉터리, 읽어야 할 파일, 변경해야 할 파일, 필요한 네트워크 목적지를 기록하세요. 이를 애플리케이션이나 운영자가 제공하는 정책 입력값으로 취급합니다. Microsoft는 정책이 에이전트 워크로드 외부에 있으므로 생성된 코드가 자체 권한을 늘릴 수 없다고 설명합니다. 명령의 일반적인 출력은 stdout, stderr, 종료 상태이며, SDK가 반환하는 경고나 선택적 메타데이터가 추가될 수 있습니다. 활동 보고서는 지원되는 Windows ProcessContainer 호스트에서 문서화된 진단 모드로 실행할 때만 사용할 수 있습니다.
## Node SDK로 최소 권한 정책 선언하기
다음 [Node SDK 가이드](https://github.com/microsoft/mxc/blob/main/sdk/node/README.md)는 다음 V1 형식을 문서화합니다. 지원되는 Node 버전으로 실행되는 애플리케이션에 SDK를 설치하세요:
```bash
npm install @microsoft/mxc-sdk
```
이 예시는 Microsoft의 완료 시까지 실행하는 샘플을 바탕으로, 애플리케이션의 현재 디렉터리에는 읽기 전용 접근을 요청하고 외부 연결은 차단합니다. 명령은 한 줄만 출력하므로 어느 제한도 시험하지 않습니다. 이는 문서에 있는 시작점이지 BIG CHANGE의 테스트가 아닙니다. 격리할 워크로드에 맞게 명령과 경로를 바꾸고, `readwritePaths`는 반드시 수정해야 하는 디렉터리에만 사용하세요.
```typescript
import { getPlatformSupport, run } from '@microsoft/mxc-sdk/v1';
import type { ContainerRequest } from '@microsoft/mxc-sdk/v1';
if (!getPlatformSupport().isSupported) {
throw new Error('MXC is not available on this host');
}
const request: ContainerRequest = {
command: 'node -e "console.log(\'hello from container\')"',
filesystem: { readonlyPaths: [process.cwd()] },
network: { egress: { default: 'deny' } },
timeoutMs: 30_000,
};
const result = await run(request);
console.log(result.stdout, result.stderr, result.exitCode, result.warnings);
```
`run`는 캡처된 stdout과 stderr, 종료 코드, 시간 초과 상태, 경고를 반환합니다. 파일 접근이 차단되면 워크로드에는 일반적인 접근 거부 오류처럼 보일 수 있습니다. 정상 종료만으로 의도한 제한을 모두 시험했다고 볼 수는 없습니다. 과제의 성공 기준을 확인하려면 지원되는 대상 백엔드에서 허용된 리소스를 사용하는 신뢰할 수 있는 워크로드를 실행하고, 별도로 권한이 없는 리소스에 의도적으로 접근해 보세요. 에이전트 생성 명령에 정책을 적용하기 전에 작업 결과와 진단 정보를 확인하세요. [SDK 샘플](https://github.com/microsoft/mxc/blob/main/samples/README.md)에는 파일 시스템 권한, 네트워크 차단, 출력 캡처, 거부 기록 예제가 있습니다. 준비된 호스트가 필요합니다. BIG CHANGE는 이 단계를 실행하지 않았습니다.
네이티브 실행기 사용자를 위한 [안정화된 JSON 스키마](https://github.com/microsoft/mxc/blob/main/docs/schema.md)는 `1.0.0`이며 전체 요청에는 `version`, 격리 방식 선택, `process.commandLine`가 필요합니다. 현재 개발 스키마는 `1.1.0-alpha`입니다. V1 SDK가 전송 계약을 직접 선택하므로, 형식이 지정된 `ContainerRequest`에 네이티브 스키마 버전을 넣지 마세요. 스키마 가이드에 따르면 `network.defaultPolicy` 및 `allowedHosts` 같은 이전 필드는 폐기되었습니다. 현재 정책은 방향이 구분된 `network.egress`와 `network.ingress`를 사용합니다. 직접 규칙과 런타임 프록시는 동작 방식과 백엔드 지원 범위가 서로 다릅니다.
## 거부를 진단한 뒤 정책 적용하기
Microsoft의 [10월 7일 모드 표](https://blogs.windows.com/windowsdeveloper/2026/10/07/microsoft-execution-containers-policy-driven-containment-for-ai-agents/)는 세 가지 결과를 구분합니다. **적용 모드**는 허용되지 않은 접근을 차단하고 활동 보고서를 만들지 않습니다. **학습 모드**는 허용되지 않은 접근을 차단하고 기록합니다. **허용 모드**는 정책에 따라 거부될 접근을 기록하면서도 계속 진행하도록 허용합니다. Microsoft의 [거부 캡처 참고자료](https://github.com/microsoft/mxc/blob/main/docs/logging-access-denied.md)는 이러한 학습 기능을 AppContainer 기반 Windows ProcessContainer 경로로 제한합니다. 공통 정책 필드를 받아들인다는 이유만으로 다른 호스트가 같은 보고 기능을 제공하는 것은 아닙니다.
정책을 작성하는 동안 신뢰할 수 있는 도구를 사용할 경우 Windows 네이티브 실행기는 정책 산출물을 만들 수 있는 `--audit` 흐름을 지원합니다. Microsoft는 분석 중인 워크로드의 샌드박스 보안을 끄므로 신뢰할 수 없는 명령에는 적합하지 않다고 경고합니다. 호스트가 지원한다면 차단과 기록을 함께 하는 캡처가 더 안전한 진단 경로입니다. 접근 시도는 차단된 상태로 유지되고 보고서에는 거부된 항목이 표시됩니다. 기록된 각 경로나 기능이 작업에 필요한지 검토하고, 명령에 필요한 권한만 부여한 뒤 최종 워크로드를 적용 모드로 실행하세요. 보고서에 민감한 리소스 이름이 드러날 수 있으므로 적절히 보호해야 합니다.
백엔드 선택에 따라 정책이 보장할 수 있는 내용도 달라집니다. [스키마 가이드](https://github.com/microsoft/mxc/blob/main/docs/schema.md)에 따르면 `isolation_session`는 네트워크를 제한할 수 없으며 네트워크를 명시적으로 제한하지 않는 설정이 필요합니다. 또한 UI 제한은 Windows ProcessContainer와 macOS Seatbelt에서 적용되며 다른 백엔드는 이를 구현하지 않습니다. WSLC와 IsolationSession은 전달된 UI 정책을 거부합니다. [Seatbelt 가이드](https://github.com/microsoft/mxc/blob/main/docs/backends/seatbelt/seatbelt-backend.md)는 macOS 네이티브 프로필이 개별 원격 호스트를 필터링할 수 없다고 설명하고, [Bubblewrap 가이드](https://github.com/microsoft/mxc/blob/main/docs/backends/bwrap/bubblewrap-backend.md)는 Linux 런타임과 네트워크의 전제 조건을 다룹니다. 따라서 여러 SDK 형식이 같은 JSON 필드를 받아들여도 모든 백엔드에서 똑같이 적용된다는 뜻은 아닙니다. 선택한 백엔드 가이드를 확인하고 대상 호스트에서 요청을 검증하세요.
Microsoft 저장소에는 MIT 라이선스가 적용되지만, 사용자 문서에는 MXC 패키지 가격이 나와 있지 않습니다. 호스트, 컴퓨팅 리소스, 모델 제공업체의 비용은 각각 별도입니다. Windows 발표는 MXC가 정식 출시되었다고 설명하지만 몇몇 백엔드 옵션은 아직 실험 단계이고 네이티브 개발 스키마는 알파입니다. 워크로드를 실행할 위치를 정할 때 출시 단계를 구분해 고려하세요.
## 출처 및 추가 자료
- [Microsoft Windows Developer Blog, 2026년 10월 7일](https://blogs.windows.com/windowsdeveloper/2026/10/07/microsoft-execution-containers-policy-driven-containment-for-ai-agents/)는 출시 주장, 에이전트 활용 의도, 세 가지 모드의 정의를 뒷받침합니다. Microsoft의 제품 설명이며 BIG CHANGE의 보안 테스트는 아닙니다.
- [MXC 저장소 README](https://github.com/microsoft/mxc)에는 SDK, 호스트 기본값, 실험적 백엔드, 빌드 전제 조건, 네이티브 실행기 경로가 나와 있습니다. 저장소와 함께 내용이 바뀌므로 세부 사항은 2026년 10월 8일 확인했습니다.
- [Node SDK 사용자 가이드](https://github.com/microsoft/mxc/blob/main/sdk/node/README.md)에는 Node 전제 조건, V1 가져오기, 형식화된 요청, 캡처 출력이 명시되어 있습니다. 위 코드는 이 샘플을 바탕으로 수정했으며 여기서 실행하지 않았습니다.
- [구성 스키마 가이드](https://github.com/microsoft/mxc/blob/main/docs/schema.md)는 안정된 네이티브 JSON `1.0.0`과 변경 중인 `1.1.0-alpha`를 구분하고 정책 필드와 백엔드별 한계를 설명합니다.
- [학습 모드 및 거부 캡처 참고자료](https://github.com/microsoft/mxc/blob/main/docs/logging-access-denied.md)는 Windows ProcessContainer 진단과 허용 모드 감사에 대한 경고를 설명합니다. 보고서는 호스트와 모드에 따라 달라집니다.
- [백엔드 가이드](https://github.com/microsoft/mxc/tree/main/docs/backends)와 [Windows 버전 표](https://github.com/microsoft/mxc/blob/main/docs/backends/process-container/os-version-support.md)는 특정 호스트에서 확인할 자료입니다. 이 문서는 독자 컴퓨터의 어떤 구성도 인증하지 않습니다.
## Sources
- [Microsoft Execution Containers 출시](https://blogs.windows.com/windowsdeveloper/2026/10/07/microsoft-execution-containers-policy-driven-containment-for-ai-agents/) — 정식 출시 발표, 워크로드와 리소스 경계, 세 가지 모드의 정의. 공급업체 주장은 독립적인 테스트 결과가 아닙니다.
- [MXC 저장소 README](https://github.com/microsoft/mxc) — SDK, 호스트 기본 백엔드, 실험적 백엔드 표시, 네이티브 실행기 경로, 소스 라이선스, 빌드 전제 조건.
- [MXC Node SDK README](https://github.com/microsoft/mxc/blob/main/sdk/node/README.md) — V1 가져오기, Node 최소 버전, 형식화된 요청, 실행 출력, 호스트 검색. 예시는 수정했으며 실행하지 않았습니다.
- [MXC 스키마 가이드](https://github.com/microsoft/mxc/blob/main/docs/schema.md) — 안정된 네이티브 JSON 1.0.0 및 개발 버전 1.1.0-alpha 계약, 네트워크 정책, 백엔드 및 UI 제한.
- [MXC 거부 캡처 가이드](https://github.com/microsoft/mxc/blob/main/docs/logging-access-denied.md) — Windows ProcessContainer의 Learning 및 Permissive 동작, --audit 보안 경고, 출력 제한.
- [MXC SDK 샘플](https://github.com/microsoft/mxc/blob/main/samples/README.md) — 공식 파일 시스템, 네트워크, 출력 캡처, 거부 캡처 샘플 목록.
- [MXC Windows OS 버전 지원](https://github.com/microsoft/mxc/blob/main/docs/backends/process-container/os-version-support.md) — ProcessContainer와 IsolationSession의 최소 Windows 빌드.
- [MXC Bubblewrap 백엔드 가이드](https://github.com/microsoft/mxc/blob/main/docs/backends/bwrap/bubblewrap-backend.md) — Linux 기본 백엔드의 전제 조건 및 네트워크 지원.
- [MXC Seatbelt 백엔드 가이드](https://github.com/microsoft/mxc/blob/main/docs/backends/seatbelt/seatbelt-backend.md) — macOS 네이티브 프로필 및 원격 호스트 필터링의 제한.
BIG CHANGE 뉴스레터
큰 그림을 나만의 속도로.
AI와 로봇공학에 관한 최신 기사, 주목할 변화, 활용할 수 있는 실용적인 아이디어입니다. 일일 브리핑, 주간 다이제스트 또는 월간 전망을 선택하세요.
베오그라드 시간 09:00에 발송: 매일, 월요일 또는 매월 1일. 확인 후 다음 예정된 발송 시 첫 호가 도착합니다.
개인정보는 이용자가 선택합니다.
필수 저장소는 사이트 보안을 지원하고 선택 사항을 기억합니다. 선택 사항인 Google Analytics는 허용하기 전까지 꺼져 있습니다. 필수 저장 기능만 사용해 모든 기사를 읽을 수 있습니다. 개인정보 보호 세부 정보