Cześć,
Wiem że temat stary jak świat, ale różne źródła różnie mówią, i sam już się pogubiłem. Normalną sytuacją jest, że np potrzebujemy się połączyć z bazą, więc tutaj już się pojawia pierwsze hasło (do bazy). Oraz w testach, również chcemy się zalogować do aplikacji (czyli hasło do aplikacji). Czasami również chcemy się logować w połączeniu service-to-service, czyli jakimś userem technicznym. No i teraz pojawia się odwieczna kwestia trzymania haseł:
- Jako plain text w propertiesach czy w kodzie - to chyba nie wymaga komentarza, w ogóle brak ochrony
- Jako zmienne środowiskowe - niby wszystko fajnie, ale czy na pewno daje to najwyższą formę ochrony?
- Jakąś biblioteką szyfrującą (np
Jasypt
) - lepsze niż zmienne środowiskowe?
To o co pytam, to najlepiej połączyć te wszystkie możliwości do jednej "kupy" i stwierdzić, w kolejności, które jest najmniej bezpieczne a które najbardziej bezpieczne.
EDIT: Forma logowania nie ma znaczenia - jeden pies czy trzymamy password czy jakiś token czy inny secret, tak czy siak gdzieś go musimy przechowywać
Zawołam sobie kilku javowców, a co xd
@Shalom (pewnie co chwila wołany na forum), @scibi92, @jarekr000000, @Charles_Ray