Erstellen einer geschachtelten Vorlage
Eine geschachtelte Vorlage ist eine wiederverwendbare YAML-Datei mit einer Reihe von Aufgaben, die aus einer anderen YAML-Datei aufgerufen werden können. Dieser Ansatz kann die Wartung und Verwaltung der Pipeline im Laufe der Zeit vereinfachen und die Duplizierung in der Pipelinekonfiguration reduzieren.
In dieser Lerneinheit erfahren Sie, wie Sie mithilfe von YAML-Pipelines in Azure DevOps eine geschachtelte Vorlage erstellen.
YAML-Vorlagen und Sicherheitsvorteile
Die Verwendung von Vorlagen in YAML-Pipelines kann mehrere Sicherheitsvorteile bieten, z. B.:
- Verbesserte Geheimnisverwaltung: Geschachtelte Vorlagen können Ihnen helfen, vertrauliche Informationen wie Anmeldeinformationen, Geheimnisse und andere Konfigurationseinstellungen aus der Hauptbereitstellungspipeline zu abstrahieren, wodurch die Verwaltung und Sicherung dieser vertraulichen Elemente vereinfacht wird. Diese können an einem sichereren Speicherort oder in Azure Key Vault gespeichert werden, um die Offenlegung vertraulicher Informationen für nicht autorisierte Benutzer*innen zu verringern und unbefugten Zugriff auf kritische Ressourcen zu verhindern.
- Geringeres Risiko von Datenschutzverletzungen: Indem Sie vertrauliche Informationen aus der Hauptbereitstellungspipeline abstrahieren, verringern Sie das Risiko von Datenschutzverletzungen, die auftreten können, wenn vertrauliche Informationen für nicht autorisierte Benutzer*innen verfügbar gemacht oder an einem unsicheren Speicherort gespeichert werden.
- Vereinfachung von Berechtigungsverwaltung und Zugriff: Mit geschachtelten Vorlagen können Sie die Steuerung des Zugriffs auf die Vorlagen und Konfigurationsdateien besser verwalten und präzise steuern, wer auf bestimmte Pipelinekomponenten zugreifen und diese ändern kann.
- Bessere Pipelineversionskontrolle: Durch die Aufteilung der Pipelinekonfiguration in kleinere, besser handhabbareTeile sind Änderungen und die Versionskontrolle leichter zu verwalten. So können Fehler und Konflikte vermieden werden, die zu Sicherheitsproblemen führen können.
- Vereinfachte Pipelinewartung: Durch Anwenden der Vorteile geschachtelter Vorlagen ist es möglich, die Duplizierung in der Pipelinekonfiguration zu reduzieren und so die Wartung und Verwaltung der Pipeline im Laufe der Zeit zu vereinfachen.
Erstellen einer YAML-Datei für die geschachtelte Vorlage
Erstellen Sie in Ihrem Git-Repository eine YAML-Datei namens secure-template.yaml
. Diese Datei enthält die Aufgaben der Pipeline, die Sie in anderen YAML-Dateien wiederverwenden möchten.
parameters:
message: ''
steps:
- task: PowerShell@2
inputs:
targetType: Inline
script: |
Write-Host "${{ parameters.message }}"
Write-Host "$(Secure)"
In diesem Beispiel definieren wir einen Parameter message
und eine einzelne PowerShell-Aufgabe, die die Werte des Parameters ausgibt. Wir geben auch den Wert der Variablen Secure
aus. Diese Variable wird im nächsten Schritt definiert.
Erstellen einer YAML-Datei für die Hauptpipeline
Erstellen Sie eine YAML-Datei namens main-pipeline.yaml
für die Pipeline, die die geschachtelte Vorlage aufruft. Sie können die Eigenschaft template
verwenden, um die geschachtelte Vorlage aufzurufen.
name: 'Pipeline templates'
stages:
- stage: Build
displayName: 'Securing pipelines with templates'
jobs:
- job: Build
pool:
vmImage: windows-latest
variables:
- name: Secure
value: 'Secret!'
steps:
- template: '../.secure/secure-template.yaml'
parameters:
message: 'This is from the main template!'
In diesem Beispiel rufen wir die Datei secure-template.yaml
aus einem Ordner „.secure“ mithilfe der Eigenschaft template
auf und übergeben die Werte der Parameter message
und Secure
an die geschachtelte Vorlage.
Erstellen einer neuen Pipeline
Navigieren Sie zu Ihrem Azure DevOps-Projekt, und erstellen Sie eine neue Pipeline. Wählen Sie das Repository und den Branch aus, in dem Sie die Änderungen committet haben. Wählen Sie die YAML-Datei für die Hauptpipeline (main-pipeline.yaml
in unserem Beispiel) aus, und führen Sie die Pipeline aus.
Vergewissern Sie sich, dass die geschachtelte Vorlage aufgerufen wird und die Werte der Parameter ausgegeben werden.
Probieren Sie es aus!
Erstellen Sie eine wiederverwendbare Vorlage für eine allgemeine Aufgabe in der Bereitstellungspipeline Ihrer Organisation. Dies kann vom Erstellen einer Ressourcengruppe bis hin zur Bereitstellung einer bestimmten Anwendung alle Aufgaben umfassen.
- Identifizieren Sie eine Aufgabe, die in der Bereitstellungspipeline Ihrer Organisation häufig ausgeführt wird.
- Erstellen Sie eine Vorlage, die zum Automatisieren dieser Aufgabe verwendet werden kann.
- Testen Sie die Vorlage, indem Sie sie in einer einfachen Bereitstellungspipeline verwenden.
- (Optional) Erwägen Sie das Erstellen einer neuen YAML-Pipeline, die die von Ihnen erstellte Vorlage verwendet, und konfigurieren Sie sie für die Verwendung der Tokenisierung zum Schützen vertraulicher Informationen.
Weitere Informationen zu Vorlagen und YAML-Pipelines finden Sie hier: