Wszyscy mówią, że przechowywanie poświadczeń w kontroli wersji (git) jest złą rzeczą. Dlatego muszą istnieć inne sposoby przechowywania poświadczeń, które są znacznie lepsze.
Aplikacja musi skądś uzyskać poświadczenia, aby móc korzystać z usług, od których zależy. Poświadczenia te są zwykle przechowywane w plikach konfiguracyjnych. Ręczne wprowadzanie każdego serwera w celu utworzenia tego pliku nie wchodzi w rachubę, ponieważ serwery przychodzą i odchodzą bez ludzkiej interwencji.
Jak zarządzać poświadczeniami aplikacji?
deployment
security
Evgeny
źródło
źródło
Odpowiedzi:
Właściwe zarządzanie tajemnicami aplikacji zawsze było wyzwaniem. Wraz z przyjęciem chmury pojawiły się nowe wyzwania. Jest świetna prezentacja OWASP na temat rzeczywistości i wyzwań związanych z przechowywaniem sekretów w chmurze.
Możesz być zaskoczony słysząc, że przechowywanie sekretów w kodzie źródłowym jest jednym z przedstawionych rozwiązań (lub „architektury”). To dlatego, że obecnie nie ma idealnej architektury ani sposobu na zrobienie tego. W końcu twoje sekrety mogą być szyfrowane ... ale co chroni klucz szyfrujący? „Żółwie do samego końca”, powiedzieli.
Każdy rodzaj tajnego zarządzania ma swoje mocne i słabe strony, a prezentacja już to obejmuje. Zamiast tego postaram się omówić niektóre funkcje, których możesz szukać w tajnym rozwiązaniu (poświadczeniu):
Patrząc na te elementy, w jaki sposób są one dla Ciebie ważne i jak są wdrażane przez rozwiązanie, będziesz mógł wybrać jedną z tajnych usług zarządzania .
źródło
W przypadku środowiska opartego wyłącznie na EC2 najłatwiejszym rozwiązaniem jest użycie ról AWS IAM i zasad segmentu S3. Niektóre sformułowania tego wzorca obejmują także KMS do szyfrowania i DynamoDB zamiast S3 do przechowywania, ale nie znalazłem żadnego bardzo ważnego powodu, aby użyć jednego z nich. Sprawdź https://github.com/poise/citadel , jest on specjalnie skierowany do użytkowników Chef, ale podstawowy wzór działa na wszystko, po prostu być może będziesz musiał stworzyć własnego pomocnika do faktycznego pobierania z S3.
źródło