View a markdown version of this page

Verwendung von Lambda MicroVMS als Sandbox für Claude Managed Agents - AWS Lambda

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwendung von Lambda MicroVMS als Sandbox für Claude Managed Agents

AWS Lambda MicroVMS ist ein Managed-Sandbox-Anbieter, der selbst gehostete Sandboxen für Claude Managed Agents bereitstellt. Dabei werden vertrauliche Dateien, Pakete und Dienste in der von Ihnen kontrollierten Infrastruktur gespeichert. Anthropic hostet den Agenten-Loop und das Claude-Modell, während die Lambda-MicroVM der Ort ist, an dem Ihre Tool-Aufrufe ausgeführt werden. Mit diesem Muster kontrollieren Sie die Ausführungsumgebung — was installiert ist, welcher Netzwerkzugriff verfügbar ist und auf welche Ressourcen der Agent zugreifen kann.

Jede MicroVM ist eine Firecracker-isolated virtuelle Maschine mit einem Snapshot-basierten Start in Sekundenbruchteilen. Sie läuft bis zu 8 Stunden und kann beendet werden, wenn die Sitzung endet. Sitzungen haben niemals denselben Status. Mit dem serverlosen Betriebsmodell erhalten Sie die Sicherheitsgrenzen einer virtuellen Maschine — Sie müssen keine Cluster verwalten, keine ungenutzten Kapazitäten, für die Sie bezahlen müssen. Sie können MicroVMs mit AWS Diensten orchestrieren, um die selbst gehostete Sandbox-Spezifikation wie unten beschrieben zu implementieren. Weitere Informationen finden Sie im Referenzbeispiel für Claude Managed Agents Self-Hosted Sandboxes on Lambda microVMS.

Funktionsweise

Eine Steuerungsebene startet eine MicroVM pro Claude-Sitzung:

  1. Eine Sitzung erreicht den Status Running und Anthropic sendet einen session.status_run_started Webhook an einen Endpunkt in Ihrem Konto.

  2. Eine Launcher-Lambda-Funktion überprüft die Webhook-Signatur und ruft dann auf. RunMicroVM

  3. Ihr Code auf der MicroVM beansprucht die Sitzung, führt Tool-Aufrufe (Bash, Lesen, Schreiben, Bearbeiten, Glob, Grep) in /workspace aus und sendet die Ergebnisse zurück an Anthropic.

  4. Die MicroVM wird angehalten oder beendet, wenn die Sitzung endet.

Ihr API-Schlüssel für die Organisation von Anthropic erreicht AWS niemals Compute. Der Launcher übergibt nur eine AWS Secrets Manager-Referenz auf Ihren Anthropic-Umgebungsschlüssel. Die Ausführungsrolle der MicroVM ermöglicht es dem Code, ihn zur Laufzeit zu lesen.

Die wichtigsten Eigenschaften

Eigenschaft Vorteil
Isolierung von Feuerwerkskörpern Hardware-virtualized Grenze pro Sitzung
Snapshot-based booten Fahren Sie vom Firecracker-Snapshot in Sekundenbruchteilen bis einstelligen Sekunden fort
IAM über IMDSv2 Verwendet kurzfristige Anmeldeinformationen mit den geringsten Rechten
Dauer, die dem Status entspricht Kann bis zu 8 Stunden bei vollem Festplatten- und Speicherzugriff laufen
Pay-per-session MicroVMs werden beendet, wenn die Sitzungen abgeschlossen sind. Dadurch endet die Abrechnung

Voraussetzungen

  • Ein AWS Konto mit Berechtigungen für Amazon Simple Storage Service (Amazon S3), AWS Identity and Access Management (IAM), Secrets Manager, AWS WAF, Lambda und Lambda MicroVMS

  • Ein Claude Managed Agents-Agent mit einer Umgebung self_hosted

  • Ein Umgebungsschlüssel und ein geheimer Webhook-Signaturschlüssel aus der Claude-Konsole

Bereitstellung der Referenzimplementierung

Architekturdiagramm, das die Referenzimplementierung von Claude Self-Hosted Sandboxes on Lambda MicroVMS zeigt.

Die Claude Managed Agents Self-Hosted Sandboxes im Lambda MicroVMS-Repository bieten eine minimale, funktionierende Bereitstellung. Sie umfasst:

  • Ein CloudFormation Stack (Amazon API Gateway, Launcher-Lambda-Funktion, Secrets Manager-Geheimnisse, Amazon S3-Bucket, IAM-Rollen)

  • Ein MicroVM-Image (Dockerfile, Node.js EnvironmentWorker Lifecycle-Hooks)

  • Ein Bereitstellungsskript und ein Überprüfungsskript

Schritte zur Bereitstellung:

  1. Stellen Sie den CloudFormation Stack bereit.

  2. Speichern Sie den Umgebungsschlüssel und das Signaturgeheimnis in den erstellten Secrets Manager-Geheimnissen.

  3. Erstellen Sie das MicroVM-Image.

  4. Registrieren Sie die Webhook-URL des Stacks in der Claude-Konsole.

  5. Überprüfen Sie dies, indem Sie eine Sitzung erstellen.

Eine ausführliche Anleitung finden Sie in der Readme-Datei des Repositorys.

Netzwerk

Lambda-MicroVMs verfügen standardmäßig über einen öffentlichen Internetzugang — es ist keine Konfiguration erforderlich, um dies zu erreichen. api.anthropic.com

Um auf private Ressourcen wie eine Amazon Aurora-Datenbank oder einen ElastiCache Amazon-Cluster zuzugreifen oder um Ihre eigenen Netzwerkeinschränkungen anzuwenden, fügen Sie beim Start einen VPC-Connector für ausgehenden Datenverkehr hinzu. Siehe Arbeiten mit ausgehenden Netzwerkverbindern.

Leerlaufrichtlinie

Stellen Sie suspendedDurationSeconds: 0 und autoResumeEnabled: false für microVMs pro Sitzung ein. Wird maximumDurationInSeconds als Obergrenze für festsitzende Sitzungen festgelegt (max. 28.800 s).

{ "maxIdleDurationSeconds": 120, "suspendedDurationSeconds": 0, "autoResumeEnabled": false }

Überwachen

Anwendungsprotokolle — Überprüfen Sie die Anwendungsprotokolle in CloudWatch den Protokollen:

aws logs tail /aws/lambda-microvms/claude-worker --follow

MicroVMs ausführen — Listet die laufenden MicroVMs in Ihrem Konto auf:

aws lambda-microvms list-microvms \ --image-identifier claude-worker \ --query 'items[].[microvmId,state,startedAt]' --output table

Fehlerbehebung

Symptom Ursache
Webhook gibt 401 zurück Unterschreiben, geheime Diskrepanz oder veraltete Lieferung
MicroVM wird nicht gestartet Webhook ist nicht registriertsession.status_run_started, oder für die Rolle zur Ausführung der Lambda-Funktion für den Launcher fehlt die Berechtigung RunMicroVM
MicroVM wird sofort beendet /runHook-Timeout — erhöhen runTimeoutInSeconds
Der Arbeiter geht sofort Ausgehendes HTTPS auf blockiert api.anthropic.com
Die Imageerstellung schlägt fehl S3_* Fehlkonfiguration der Build-Rolle oder des Buckets