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.
Richten Sie eine Sandbox ein
Sandbox ist eine Vorschaufunktion, die dem AWS DevOps Agenten eine sichere, isolierte Linux-Umgebung bietet, in der er während der Ermittlungen Code schreiben und ausführen kann. Manche Probleme lassen sich mit Code schneller und zuverlässiger lösen als durch bloße Argumentation. Mit Sandbox ergänzt der Agent seine Argumentation durch Berechnungen — zum Beispiel, um eine große Protokolldatei zu analysieren, Statistiken für eine Reihe von Metriken zu berechnen oder während einer Untersuchung Daten aus mehreren Quellen zu analysieren und zu korrelieren.
Jede Sandbox ist kurzlebig und auf eine einzige Untersuchung beschränkt, sodass der Code, den der Agent ausführt, von Ihren anderen Ressourcen isoliert bleibt. Sie kontrollieren den ausgehenden Netzwerkzugriff der Umgebung und die Pakete, die vorinstalliert sind. Standardmäßig schränkt die Sandbox den ausgehenden Netzwerkzugriff ein: Solange Sie keinen Eintrag zur Liste der Netzwerkzulassungen hinzufügen, können nur Dienstendpunkte erreicht werden. AWS
Anmerkung
Sandbox ist in der Vorschauversion verfügbar und kann sich ändern.
In der Vorschauversion ist Sandbox nur in den folgenden AWS Regionen verfügbar:
USA Ost (Nord-Virginia)
us-east-1USA West (Oregon)
us-west-2Asien-Pazifik (Tokio)
ap-northeast-1Europa (Irland)
eu-west-1
Weitere Informationen finden Sie unter Verfügbarkeit von Features nach Region.
Wie funktioniert Sandbox
Wenn Sandbox für einen Agent Space konfiguriert ist, stellt der AWS DevOps Agent automatisch eine neue Linux-Umgebung bereit, während er an einer Untersuchung arbeitet. In dieser Umgebung kann der Agent Shell-Befehle ausführen und Dateien lesen und schreiben und die Ergebnisse dann wieder in seine Analyse einlesen. Die Umgebung ist nur für die Dauer dieser Untersuchung gültig, und keine zwei Untersuchungen teilen sich eine.
Die Umgebung enthält vorkonfigurierte AWS Profile für die AWS Konten, die mit Ihrem Agent Space verbunden sind. Der Agent kann diese Profile verwenden, um AWS CLI- und Boto3-Aufrufe (AWS SDK für Python) an diese Konten zu tätigen, für die dieselben Berechtigungen gelten, die der Agent bereits hat. Auf diese Weise kann der Agent AWS Ressourcen während einer Untersuchung programmgesteuert mit Code abfragen und korrelieren.
Der Agent kann auch HTTP-Anfragen von der Sandbox aus mithilfe von Befehlszeilentools oder Python und Node.js Bibliotheken an jeden Host und Pfad senden, der gemäß Ihrer Netzwerkrichtlinie zulässig ist.
Zwei Einstellungen steuern, was die Umgebung tun kann:
Netzwerkrichtlinie — Eine explizite Zulassungsliste der Hosts, HTTP-Methoden und Pfade, die die Umgebung erreichen kann. Bei einer leeren Zulassungsliste werden alle ausgehenden Anfragen mit Ausnahme von Dienstendpunkten abgelehnt. AWS
Pakete — Die
pipundnpmPakete, die in der Umgebung vorinstalliert sind. Der Code des Agenten kann sie importieren, ohne sie zur Laufzeit abzurufen.
Anmerkung
In der Vorschau verwendet der Agent Sandbox nur bei Untersuchungen. Unterstützung für Chat, benutzerdefinierte Agenten und andere DevOps Agentenfunktionen ist in Kürze verfügbar.
Isolierung der Sandbox-Umgebung
AWS DevOps Der Agent führt jede Sandbox in einer isolierten Lambda-MikroVM aus. Jede MicroVM ist einer einzigen Untersuchung zugeordnet und wird verworfen, wenn die Untersuchung abgeschlossen ist. Wenn der Agent AWS CLI- oder SDK-Aufrufe von der Sandbox aus tätigt, leitet er diese Aufrufe über einen Proxy weiter. Dieser Proxy beschränkt die Aufrufe auf schreibgeschützte Operationen, sodass Sandbox-Code Ihre Ressourcen nicht ändern oder löschen kann. AWS
Fähigkeiten in der Sandbox
Wenn Sandbox aktiviert ist, liest der Agent Ihre Daten DevOps Fähigkeiten von Agenten aus dem Dateisystem der Sandbox und nicht aus einem virtuellen Dateisystem. Dies verändert die Art und Weise, wie der Agent mit Fähigkeiten umgeht, auf zweierlei Weise:
Suchen und Lesen mit Befehlszeilentools — Der Agent kann Standard-Befehlszeilentools verwenden, um Ihre Fähigkeiten zu durchsuchen und deren Dateien zu lesen, anstatt sie über ein virtuelles Dateisystem zu laden. Das hilft ihm, die richtigen Fähigkeiten für die jeweilige Aufgabe zu finden und anzuwenden.
Gebündelten Code ausführen — Der Agent kann Code, der mit einem Skill gebündelt ist, ausführen und anpassen. Ohne Sandbox kann ein Skill nur nicht ausführbare Dateien wie Markdown-Anweisungen, Referenzen und Datendateien enthalten. Mit Sandbox kann ein Skill ausführbaren Code enthalten, den der Agent in der Umgebung ausführen kann.
Bevor Sie beginnen
Sandbox ist standardmäßig nicht konfiguriert, sodass der Agent keinen Code ausführen kann, bis Sie sich anmelden. Die folgende Abbildung zeigt den Abschnitt Sandbox, bevor Sie ihn konfigurieren.
Bevor Sie Sandbox konfigurieren, stellen Sie Folgendes fest:
Die Hosts, HTTP-Methoden und Pfade, die der Agentencode erreichen muss, falls vorhanden. Bis Sie einen Allowlist-Eintrag hinzufügen, kann die Sandbox nur AWS Dienstendpunkte erreichen.
Die
npmPaketepipund, die Sie in der Umgebung vorinstallieren möchten.
Konfigurieren Sie Sandbox für einen Agent Space
Melden Sie sich an der AWS Managementkonsole an und öffnen Sie die AWS DevOps Agentenkonsole.
Wählen Sie Ihren Agentenbereich aus und klicken Sie auf die Registerkarte Funktionen.
Wählen Sie im Abschnitt Sandbox die Option Konfigurieren aus.
Konfigurieren Sie eine Netzwerkrichtlinie und vorinstallierte Pakete, wie in den folgenden Abschnitten beschrieben.
Speichern Sie Ihre Konfiguration.
Nachdem Sie Sandbox konfiguriert haben, werden im Abschnitt Sandbox Ihre vorinstallierten npm Pakete pip und die Anzahl der Allowlist-Einträge angezeigt. Informationen zum späteren Entfernen der Konfiguration finden Sie unter Sandbox entfernen. #remove-sandbox
Konfigurieren Sie die Netzwerkrichtlinie
Die Sandbox beschränkt ausgehende Anfragen auf eine explizite Zulassungsliste. Eine leere Zulassungsliste lehnt alle ausgehenden Anfragen mit Ausnahme von Dienstendpunkten ab. AWS Damit die Umgebung jeden anderen Host erreichen kann, fügen Sie einen Allowlist-Eintrag für diesen hinzu.
Wählen Sie Eintrag hinzufügen und konfigurieren Sie dann Folgendes für den Allowlist-Eintrag:
Hostmuster — Der Host, für den der Eintrag gilt. Ein teilweiser Labelabgleich wird nicht unterstützt. Verwenden Sie eines der folgenden Formulare:
**— Alle Gastgeber.*.example.com— Eine Subdomain-Ebene.**.example.com— Jede Subdomain-Tiefe.example.com— Ein exakter Host.
HTTP-Methoden — Die für diesen Host zulässigen HTTP-Methoden. Wählen Sie eine oder mehrere Methoden aus der Dropdownliste aus
OPTIONS, z. B.GETund.Pfadmuster — Die für diesen Host zulässigen Pfade. Wählen Sie Pfad hinzufügen, um ein oder mehrere Muster hinzuzufügen:
*entspricht einem Segment, z./repos/*/pullsB.Teilweiser Abgleich ist zulässig, z.
/users/aws-*/B./**erlaubt alle Unterpfade.Abfrageparameter werden ignoriert.
Die folgende Abbildung zeigt einen abgeschlossenen Allowlist-Eintrag.
Wählen Sie Eintrag hinzufügen für jeden weiteren Host, den der Agentencode erreichen muss. Um einen Eintrag zu entfernen, wählen Sie Entfernen.
Konfigurieren Sie vorinstallierte Pakete
Geben Sie im Abschnitt Pakete die npm Pakete pip und an, die in der Sandbox-Umgebung vorinstalliert werden sollen. Der Code des Agenten kann diese Pakete dann direkt importieren, und die Umgebung benötigt keinen ausgehenden Zugriff auf eine Paketregistrierung, um sie zu verwenden. Die folgende Abbildung zeigt den Abschnitt Pakete mit konfigurierten Beispielpaketen.
Pip-Pakete — Wählen Sie Paket hinzufügen und geben Sie für jedes Python-Paket, das vorinstalliert werden soll, einen Paketnamen wie
requestsoderpandasein.npm-Pakete — Wählen Sie Paket hinzufügen und geben Sie einen Paketnamen ein, z. B. für jedes Node.js Paket
axios, das vorinstalliert werden soll.
Um ein Paket zu entfernen, klicken Sie neben dem Paket auf Entfernen.
Sandbox entfernen
Um sich abzumelden, entfernen Sie die Sandbox-Konfiguration: Wählen Sie Ihren Agentenbereich aus, gehen Sie zur Registerkarte Funktionen und wählen Sie im Abschnitt Sandbox die Option Entfernen aus. Nachdem Sie die Konfiguration entfernt haben, stellt der Agent keine Sandbox-Umgebungen mehr für neue Untersuchungen bereit.
Grenzwerte für die Sandbox-Konfiguration
Die folgenden Beschränkungen gelten für jede Sandbox-Konfiguration in der Vorschau.
| Limit | Wert |
|---|---|
| Pip-Pakete | 50 |
| npm-Pakete | 50 |
| Einträge auf der Zulassungsliste für Netzwerke | 100 |
| Pfadmuster pro Eintrag auf der Zulassungsliste | 50 |
| HTTP-Methoden pro Allowlist-Eintrag | Mindestens 1 |
Sicherheitsüberlegungen
AWS DevOps Der Agent isoliert jede Untersuchung in seiner eigenen Sandbox-Umgebung, sodass Code und Daten aus einer Untersuchung niemals mit einer anderen geteilt werden. AWS DevOps Der Agent überprüft und filtert den gesamten Datenverkehr, der die Sandbox verlässt, sodass nur sichere, zulässige Anfragen ihr Ziel erreichen. Es erlaubt Anfragen an AWS Service-Endpunkte und Hosts, die Ihrer Netzwerk-Zulassungsliste entsprechen, und lehnt alle anderen Anfragen ab.
Der Agent generiert Code in der Sandbox und führt ihn aus. Beachten Sie bei der Konfiguration Folgendes:
Halten Sie die Zulassungsliste minimal. Bei einer leeren Zulassungsliste erreicht die Sandbox nur AWS Dienstendpunkte. Fügen Sie Allowlist-Einträge nur für die spezifischen Hosts, Methoden und Pfade hinzu, die der Agent benötigt.
Schränken Sie den Geltungsbereich von Allowlist-Einträgen ein. Verwenden Sie exakte Hostmuster und bestimmte Pfadmuster statt allgemeiner Platzhalter wie
**und und/**gewähren Sie nur die HTTP-Methoden, die erforderlich sind.Pre-install Pakete, anstatt Registrierungen zuzulassen. Wenn Sie die Pakete vorinstallieren, die der Agent benötigt, vermeiden Sie, zur Laufzeit ausgehenden Zugriff auf eine Paketregistrierung zu gewähren.
Weitere Informationen zum AWS DevOps Agenten-Sicherheitsmodell finden Sie unter. AWS DevOps Agentensicherheit