GitHub Secrets

Cześć! Po trochę dłuższej urlopowej przerwie serdecznie zapraszam do kolejnego wpisu na blogu. Dziś dość krótki ale za to ciekawy i praktyczny temat. Opiszę kolejną funkcjonalność pochodzącą z platformy GitHub, mianowicie GitHub Secrets. Zapraszam do czytania!

GitHub Secrets – teoria

Standardowo na początku trochę teorii. Przechowywanie wrażliwych danych zawsze było problematyczne. Hasła do FTP, klucze API, login i hasła wymagane do autoryzacji – te dane nie powinny znaleźć się w niepowołanych rękach. Temat bezpieczeństwa danych występuje praktycznie w każdym projekcie, dlatego platforma GitHub świetnie zauważyła potrzebę przechowywania w bezpiecznym miejscu ważnych danych. I tak właśnie powstał GitHub Secrets. GitHub Secrets to po prostu zaszyfrowane zmienne, których możemy używać w plikach z definicjami workflows w GitHub Actions – czym są GitHub Actions już kiedyś opisywałem na blogu, więc odsyłam do artykułu na ten temat.

Co jest warte uwagi, to fakt, że dostęp do zmiennych z sekretami mają wszyscy członkowie, którzy są dodani do projektu, jednak nikt nie ma możliwości zobaczenia co zawiera sekret, zawartość ta jest pobierana tylko i wyłącznie w momencie uruchomienia zdefiniowanego wcześniej workflow. Nie ma niestety możliwości, aby w tworzonym oprogramowaniu wykorzystywać sekrety, GitHub Secretes są wykorzystywane tylko przez GitHub Actions.

GitHub Secrets – praktyka

Po dawce wiedzy teoretycznej teraz czas na wykorzystanie jej w praktyce. Przedstawię jak dodać własne sekrety na platformie GitHub.

Po zalogowaniu się do GitHuba wchodzimy w projekt, w którym chcemy wykorzystać sekrety. Następnie wchodzimy w jego ustawienia i w zakładce „Secrets” klikamy w pozycję „Actions„. Poniżej screen z przykładowego projektu, w którym zdefiniowałem nowy sekret o nazwie „FTP_PASSWORD„.

Widok wszystkich sekretów w projekcie.

Jak widać nie ma opcji, aby podejrzeć sekret, możemy go ewentualnie zaktualizować lub usunąć. W celu dodania nowego sekretu należy kliknąć w przycisk „New repository secret„, wtedy wyświetli nam się prosty formularz, w którym uzupełnimy zawartość sekretu:

Dodawanie nowego sekretu.

Skoro wiadomo gdzie można zobaczyć istniejące sekrety oraz jak je dodawać, przychodzi kolej na wykorzystanie ich w praktyce. Do tego celu posłużę się istniejącym plikiem workflow, który służy mi do kopiowania plików z nową wersją aplikacji na serwer FTP – jeśli czytałeś mój artykuł o GitHub Actions to pewnie kojarzysz o co tam chodziło dokładnie. Nie trzeba jednak przeczytać tego artykułu, żeby zrozumieć jak wykorzystać sekrety.

Przykładowy plik workflow z wykorzystaniem sekretów.

Banalny przykład wykorzystania GitHub Secrets w workflow. Do parametrów jakie nasze workflow potrzebuje np. do zalogowania się na serwerze FTP, przekazujemy utworzone wcześniej sekrety. Najważniejsza jest konwencja w jakiej przekazujemy sekret. Musimy zawsze wpisywać je w podwójnych „wąsach” i używać do tego celu kontekstu „secrets„, po kropce podajemy nazwę naszego sekretu.

${{ secrets.NAZWA_SEKRETU }}

Tyle. Zachęcam to wypróbowania sekretów w waszych projektach.

GitHub Secrets – podsumowanie

To tyle w tym temacie. Dzięki za przeczytanie tego wpisu. Pamiętaj, że zawsze możesz się ze mną skontaktować w razie jakichkolwiek pytań – możesz to zrobić przez formularz kontaktowy. Będę również bardzo wdzięczny jeżeli podzielisz się tym materiałem ze swoimi znajomymi poprzez udostępnienie na LinkedIn lub w innych mediach społecznościowych. Dzięki i do zobaczenia w kolejnym wpisie!

Podziel się swoją opinią
Mateusz Łysień
Mateusz Łysień

Programuje i czasem coś piszę na blogu.

Artykuły: 14