Zarządzanie zaszyfrowanymi wpisami tajnymi
Wpisy tajne są zaszyfrowanymi zmiennymi środowiskowymi, które można tworzyć w celu przechowywania tokenów, poświadczeń lub innych typów poufnych informacji, na których mogą polegać przepływy pracy i akcje funkcji GitHub Actions. Po utworzeniu stają się one dostępne do użycia w przepływach pracy i akcjach, które mają dostęp do organizacji, repozytorium lub środowiska repozytorium, w którym są przechowywane.
W tej sekcji zapoznasz się z różnymi narzędziami i strategiami dostępnymi w usłudze GitHub Enterprise Cloud i GitHub Enterprise Server, aby zarządzać użyciem zaszyfrowanych wpisów tajnych. Wyjaśnimy również, jak uzyskać dostęp do zaszyfrowanych wpisów tajnych w przepływach pracy i akcjach.
Zarządzanie zaszyfrowanymi wpisami tajnymi na poziomie organizacji
Tworzenie zaszyfrowanych wpisów tajnych na poziomie organizacji w celu przechowywania poufnych informacji jest doskonałym sposobem zapewnienia bezpieczeństwa tych informacji, jednocześnie minimalizując obciążenie związane z zarządzaniem w przedsiębiorstwie.
Załóżmy, że niektórzy deweloperzy piszący przepływy pracy w organizacji usługi GitHub potrzebują poświadczeń do wdrożenia kodu w środowisku produkcyjnym w niektórych przepływach pracy. Aby uniknąć udostępniania tych poufnych informacji, można utworzyć zaszyfrowany wpis tajny zawierający poświadczenia na poziomie organizacji. Dzięki temu poświadczenia mogą być używane w przepływach pracy bez uwidocznienia.
Aby utworzyć wpis tajny na poziomie organizacji, przejdź do ustawień organizacji, a następnie na pasku bocznym wybierz pozycję Wpisy tajne i zmienne Akcje > Nowy wpis > tajny organizacji. Na wyświetlonym ekranie wprowadź nazwę i wartość, a następnie wybierz zasady dostępu do repozytorium dla wpisu tajnego:
Zasady dostępu są wyświetlane poniżej wpisu tajnego na liście wpisów tajnych po jego zapisaniu:
Możesz wybrać pozycję Aktualizuj , aby uzyskać więcej informacji na temat skonfigurowanych uprawnień dla wpisu tajnego.
Zarządzanie zaszyfrowanymi wpisami tajnymi na poziomie repozytorium
Jeśli potrzebujesz zaszyfrowanego wpisu tajnego w zakresie określonego repozytorium, usługa GitHub Enterprise Cloud i serwer GitHub Enterprise Server umożliwiają również tworzenie wpisów tajnych na poziomie repozytorium.
Aby utworzyć wpis tajny na poziomie repozytorium, przejdź do obszaru Ustawienia repozytorium, a następnie na pasku bocznym wybierz pozycję Wpisy tajne i zmienne > Akcje > Nowy wpis tajny repozytorium. Na wyświetlonym ekranie wprowadź nazwę i wartość wpisu tajnego:
Uzyskiwanie dostępu do zaszyfrowanych wpisów tajnych w ramach akcji i przepływów pracy
W przepływach pracy
Aby uzyskać dostęp do zaszyfrowanego wpisu tajnego w przepływie pracy, należy użyć secrets
kontekstu w pliku przepływu pracy. Na przykład:
steps:
- name: Hello world action
with: # Set the secret as an input
super_secret: ${{ secrets.SuperSecret }}
env: # Or as an environment variable
super_secret: ${{ secrets.SuperSecret }}
W akcjach
Aby uzyskać dostęp do zaszyfrowanego wpisu tajnego w akcji, należy określić wpis tajny jako input
parametr w action.yml
pliku metadanych. Na przykład:
inputs:
super_secret:
description: 'My secret token'
required: true
Jeśli chcesz uzyskać dostęp do zaszyfrowanego wpisu tajnego w kodzie akcji, kod akcji może odczytać wartość danych wejściowych przy użyciu zmiennej środowiskowej $SUPER_SECRET
.
Ostrzeżenie
Podczas tworzenia własnych akcji pamiętaj, aby nie uwzględniać żadnych zaszyfrowanych wpisów tajnych w kodzie źródłowym akcji, ponieważ akcje są jednostkami pracy, które można udostępnić. Jeśli akcja wymaga użycia zaszyfrowanych wpisów tajnych lub innych danych wejściowych dostarczonych przez użytkownika, najlepiej użyć podstawowego modułu z zestawu narzędzi Actions Toolkit.