Wdrożyłem moją aplikację Django w Elastic Beanstalk z zamiarem użycia interfejsu konfiguracji zmiennych środowiskowych do przechowywania kluczy API zamiast przechowywania ich w źródle (jak opisano tutaj /programming//a/17878600 ).
Po zrobieniu tego, dowiedziałem się, że to, co Beanstalk nazywa zmiennymi środowiskowymi, nie jest tak naprawdę zmiennymi środowiskowymi powłoki (jak wspomniano tutaj /programming//a/24564832/378638 ) i są przechowywane w instancji w pliku konfiguracyjnym (jako opisane tutaj /programming//a/24566283/378638 ).
To wydaje mi się problemem bezpieczeństwa. Czy nie jest to sprzeczne z celem trzymania tajnych kluczy z dala od źródła? Rozumiem, że nie ma ich już w repozytorium, ale nadal są dostępne w instancji.
Czy nie rozumiem ryzyka? Jestem sysadminem przez dziedziczenie, więc proszę usprawiedliwić moją ignorancję tutaj. Czy powinienem po prostu załadować zmienne Beanstalk jako zmienne środowiskowe powłoki poprzez plik konfiguracyjny i przejść dalej, ponieważ plik jest dostępny tylko przez root, czy moja obawa jest ważna? Dziękuję Ci.
źródło