Korzystanie z bezpiecznych plików

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

Bezpieczne pliki umożliwiają przechowywanie plików, które można udostępniać między potokami. Użyj biblioteki bezpiecznych plików do przechowywania takich plików jak:

  • certyfikaty podpisywania
  • Profile aprowizacji firmy Apple
  • Pliki magazynu kluczy systemu Android
  • Klucze SSH

Te pliki mogą być przechowywane na serwerze bez konieczności zatwierdzania ich w repozytorium.

Zawartość bezpiecznych plików jest szyfrowana i można jej używać tylko w ramach zadania. Bezpieczne pliki są zasobem chronionym. Możesz dodawać do nich zatwierdzenia i kontrole oraz ustawiać uprawnienia potoku. Bezpieczne pliki mogą również używać modelu zabezpieczeń biblioteki.

Limit rozmiaru każdego bezpiecznego pliku wynosi 10 MB.

Dodawanie bezpiecznego pliku

  1. Przejdź do pozycji Bezpieczne pliki biblioteki>potoków.>

    Wybierz kartę Bezpieczne pliki.

  2. Wybierz pozycję Bezpieczny plik , aby przekazać nowy bezpieczny plik. Przejdź do przekazywania lub przeciągania i upuszczania pliku. Możesz usunąć ten plik, ale nie można go zamienić.

    Przekaż plik.

  3. Dodaj uprawnienia do pliku.

    1. Zastosuj ograniczenia roli zabezpieczeń dla wszystkich plików z karty Zabezpieczenia w bibliotece potoków>.
    2. Aby dodać uprawnienia dla pojedynczego pliku, w widoku edycji pliku wybierz pozycję Uprawnienia potoku, aby ustawić uprawnienia dla potoku. Możesz też wybrać pozycję Zabezpieczenia , aby ustawić role zabezpieczeń.
      • Można również ustawić Zatwierdzenia i sprawdzanie pliku. Aby uzyskać więcej informacji, zobacz Zatwierdzenia i kontrole.

    Ustaw zabezpieczenia potoku dla bezpiecznych plików.

Korzystanie z bezpiecznego pliku w potoku

Użyj zadania narzędzia Pobierz bezpieczny plik, aby korzystać z bezpiecznych plików w potoku.

Poniższy przykład potoku YAML pobiera bezpieczny plik certyfikatu i instaluje go w środowisku systemu Linux.

- 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)

Często zadawane pytania

Pyt.: Jak utworzyć zadanie niestandardowe przy użyciu bezpiecznych plików?

1: Utwórz własne zadania korzystające z bezpiecznych plików przy użyciu danych wejściowych z typem secureFile w pliku task.json. Dowiedz się, jak utworzyć zadanie niestandardowe.

Zadanie Install Apple Provisioning Profile (Instalowanie profilu aprowizacji firmy Apple) to prosty przykład zadania korzystającego z bezpiecznego pliku. Zapoznaj się z dokumentacją referencyjną i kodem źródłowym.

Aby obsługiwać bezpieczne pliki podczas kompilacji lub wydania, możesz zapoznać się z typowym modułem dostępnym tutaj.

Pyt.: Moje zadanie nie może uzyskać dostępu do bezpiecznych plików. Co należy zrobić?

1: Upewnij się, że agent ma wersję 2.116.0 lub nowszą. Zobacz Wersje i uaktualnienia agenta.

Pyt.: Jak mogę autoryzować bezpieczny plik do użycia w określonym potoku?

A:

  1. W usłudze Azure Pipelines wybierz kartę Biblioteka .
  2. Wybierz kartę Bezpieczne pliki u góry.
  3. Wybierz bezpieczny plik, który chcesz autoryzować.
  4. Wybierz przycisk Uprawnienia potoku.
  5. Przejrzyj i zmodyfikuj dostęp dla każdego dostępnego potoku.

Pyt.: Dlaczego podczas pobierania bezpiecznego pliku za pomocą serwera Azure DevOps Server/serwera TFS w środowisku lokalnym występuje Invalid Resource błąd?

Uwierzytelnianie podstawowe usług IIS jest wyłączone na serwerze TFS lub Azure DevOps Server.

Pyt.: Jak zabezpieczone są bezpieczne pliki?

1: Bezpieczne pliki, grupy zmiennych i połączenia usług są zabezpieczone w taki sam sposób w usłudze Azure DevOps. Są to również wszystkie chronione zasoby.

Wpisy tajne są szyfrowane i przechowywane w bazie danych. Klucze do odszyfrowywania wpisów tajnych są przechowywane w usłudze Azure Key Vault. Klucze są specyficzne dla każdej jednostki skalowania. Dlatego dwa regiony nie współużytkują tych samych kluczy. Klucze są również obracane przy każdym wdrożeniu usługi Azure DevOps.

Prawa do pobierania bezpiecznych kluczy są przekazywane tylko jednostkom usługi Azure DevOps i (w specjalnych okazjach) na żądanie w celu zdiagnozowania problemów. Bezpieczny magazyn nie ma żadnych certyfikatów.

Usługa Azure Key Vault to kolejna, bezpieczniejsza opcja zabezpieczania poufnych informacji. Jeśli zdecydujesz się użyć usługi Azure Key Vault, możesz użyć jej z grupami zmiennych.