Weitere Überlegungen zur Sicherheit
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
Es gibt weitere Dinge, die Sie beim Sichern von Pipelines berücksichtigen sollten.
Vertrauen auf PATH
Es ist nicht ratsam auf die PATH
-Einstellung des Agents zu vertrauen.
Sie zeigt nicht auf das erwartete Ergebnis, da ein vorheriges Skript oder Tool sie geändert haben könnte.
Verwenden Sie für sicherheitskritische Skripts und Binärdateien immer einen vollqualifizierten Pfad zum Programm.
Protokollierung von Geheimnissen
Azure Pipelines versucht, Geheimnisse nach Möglichkeit aus Protokollen zu bereinigen. Diese Filterung erfolgt nach bestem Bemühen und kann nicht jede Art und Weise abfangen, in der Geheimnisse aufgedeckt werden können. Geheimnisse sollten nicht an der Konsole ausgegeben, in Befehlszeilenparametern verwendet oder in Dateien protokolliert werden.
Sperren von Containern
Container verfügen über einige vom System bereitgestellte Volumebereitstellungszuordnungen in den Aufgaben, dem Arbeitsbereich und externen Komponenten, die für die Kommunikation mit dem Host-Agent erforderlich sind. Sie können keine oder alle diese Volumes als schreibgeschützt markieren.
resources:
containers:
- container: example
image: ubuntu:22.04
mountReadOnly:
externals: true
tasks: true
tools: true
work: false # the default; shown here for completeness
Die meisten Personen markieren meist die ersten drei als schreibgeschützt und belassen work
im Lese-/Schreibmodus.
Wenn Sie wissen, dass Sie nicht in das Arbeitsverzeichnis in einem bestimmten Auftrag oder Schritt schreiben, dann ändern Sie den Status von work
ebenfalls in schreibgeschützt.
Wenn Aufgaben in Ihrer Pipeline vorhanden sind, die sich selbst ändern, sollten Sie tasks
im Lese-/Schreibmodus belassen.
Steuern verfügbarer Aufgaben
Sie können die Möglichkeit zum Installieren und Ausführen von Aufgaben über den Marketplace deaktivieren. Dadurch haben Sie bessere Kontrolle über den Code, der in einer Pipeline ausgeführt wird. Sie können auch alle integrierten Aufgaben deaktivieren, mit Ausnahme von „Check-Out“, da dies eine besondere Aktion auf dem Agent ist. Es wird empfohlen, dass Sie in den meisten Fällen keine im Lieferumfang enthaltenen Aufgaben deaktivieren.
Aufgabe, die direkt unter tfx
installiert sind, sind immer verfügbar.
Wenn beide Features aktiviert sind, sind nur diese Aufgaben verfügbar.
Verwenden des Überwachungsdiensts
Viele Pipelineereignisse werden im Überwachungsdienst aufgezeichnet.
Überprüfen Sie das Überwachungsprotokoll in regelmäßigen Abständen, um sicherzustellen, dass keine schädlichen Änderungen übersehen wurden.
Hier finden Sie Informationen zum Einstieg: https://dev.azure.com/ORG-NAME/_settings/audit
.
Nächste Schritte
Kehren Sie zur Übersicht zurück, und stellen Sie sicher, dass Sie jeden Artikel durchgearbeitet haben.