Verwenden sicherer Dateien

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

In diesem Artikel werden sichere Dateien und ihre Verwendung in Azure-Pipelines beschrieben. Sichere Dateien sind eine Möglichkeit, Dateien zur Verwendung in Pipelines zu speichern, ohne sie in Ihr Repository übernehmen zu müssen.

Sie können die Bibliothek für sichere Dateien verwenden, um Dateien wie die folgenden zu speichern:

  • Signaturzertifikate.
  • Apple-Bereitstellungsprofile.
  • Android-Schlüsselspeicherdateien.
  • SSH-Schlüssel.

Die Größenbeschränkung für jede sichere Datei beträgt 10 MB.

Sichere Dateien werden auf dem Server in verschlüsselter Form gespeichert und können nur von einer Pipelineaufgabe genutzt werden. Sichere Dateien sind eine geschützte Ressource. Sie können Genehmigungen, Überprüfungen und Pipelineberechtigungen verwenden, um den Zugriff auf die Dateien einzuschränken. Sichere Dateien können auch Rollen im Bibliothekssicherheitsmodell verwenden.

Voraussetzungen

  • Ein Azure DevOps-Projekt, in dem Sie über Berechtigungen zum Erstellen von Pipelines verfügen und Bibliothekselemente hinzufügen können.
  • Zertifikate, Schlüsselspeicher oder Bereitstellungsdateien, die Sie auf sichere Weise in Ihrer Pipeline verwenden möchten.

Hinzufügen einer sicheren Datei

  1. Navigieren Sie in Ihrem Azure DevOps-Projekt zu Pipelines>Bibliothek, und wählen Sie die Registerkarte Sichere Dateien aus.

    Screenshot der Auswahl der Registerkarte „Sichere Dateien“.

  2. Um eine sichere Datei hochzuladen, wählen Sie + Sichere Datei aus. Suchen Sie dann Ihre Datei, um sie hochzuladen oder per Drag & Drop abzulegen.

    Screenshot, der das Hochladen einer Datei zeigt.

  3. Wählen Sie OK aus. Nach dem Upload der Datei können Sie diese löschen, aber nicht ersetzen.

Definieren von Sicherheitsrollen und Berechtigungen

Sie können Sicherheitsrolleneinschränkungen und -berechtigungen für alle Elemente oder für einzelne Elemente in einer Bibliothek definieren.

  • Wenn Sie Sicherheitsrollen für alle Elemente in einer Bibliothek zuweisen möchten, wählen Sie Sicherheit auf der Seite Bibliothek aus.

  • So definieren Sie Berechtigungen für eine einzelne Datei:

    1. Wählen Sie die Datei aus der Liste Sichere Dateien aus.
    2. Wählen Sie oben auf der Seite Sichere Datei Folgendes aus:
      • Sicherheit zum Festlegen der Benutzer*innen und Sicherheitsrollen, die auf die Datei zugreifen können.
      • Pipelineberechtigungen zum Auswählen der YAML-Pipelines, die auf die Datei zugreifen können.
      • Genehmigungen und Überprüfungen zum Festlegen der genehmigenden Personen und anderer Überprüfungen zur Verwendung der Datei. Weitere Informationen finden Sie unter Genehmigungen und Überprüfungen.

    Legen Sie die Pipelinesicherheit für sichere Dateien fest.

Autorisieren einer YAML-Pipeline zur Verwendung einer sicheren Datei

Um eine sichere Datei in YAML-Pipelines zu verwenden, müssen Sie die Pipeline zur Verwendung der Datei autorisieren. Alle klassischen Pipelines können auf sichere Dateien zugreifen.

So autorisieren Sie eine Pipeline oder alle Pipelines zur Verwendung einer sicheren Datei:

  1. Wählen Sie oben auf der Seite für die sichere Datei Pipelineberechtigungen aus.
  2. Wählen Sie auf dem Bildschirm Pipelineberechtigungen den Eintrag + und dann die Projektpipeline aus, die autorisiert werden soll. Wenn Sie alle Pipelines zur Verwendung der Datei autorisieren möchten, wählen Sie das Symbol für Weitere Aktionen, Zugriff öffnen und dann erneut Zugriff öffnen aus, um dies zu bestätigen.

Verwenden einer sicheren Datei in einer Pipeline

Um sichere Dateien in einer Pipeline zu nutzen, verwenden Sie das Hilfsprogramm Sichere Datei herunterladen. Der Pipeline-Agent muss Version 2.182.1 oder höher ausführen. Weitere Informationen finden Sie unter Agent-Version und -Upgrades.

Im folgenden Beispiel für eine YAML-Pipeline wird eine sichere Zertifikatdatei heruntergeladen und in einer Linux-Umgebung installiert.

- task: DownloadSecureFile@1
  name: caCertificate
  displayName: 'Download CA certificate'
  inputs:
    secureFile: 'myCACertificate.pem'

- script: |
    echo Installing $(caCertificate.secureFilePath) to the trusted CA directory...
    sudo chown root:root $(caCertificate.secureFilePath)
    sudo chmod a+r $(caCertificate.secureFilePath)
    sudo ln -s -t /etc/ssl/certs/ $(caCertificate.secureFilePath)

Hinweis

Wenn Ihnen der Fehler Invalid Resource angezeigt wird, wenn Sie eine sichere Datei mit einer lokalen Version von Azure DevOps Server herunterladen, überprüfen Sie, ob IIS-Standardauthentifizierung auf dem Server deaktiviert ist.