Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Gdzie powinienem przechowywać poświadczenia mojej bazy danych?

Przede wszystkim powinieneś mieć świadomość, że bez względu na to, co zrobisz, jeśli atakujący uzyska dostęp do plików Twojego serwera, będzie mógł ukraść hasło.

Jeśli korzystasz ze źródła danych serwera aplikacji, po prostu przenosisz lokalizację hasła w postaci zwykłego tekstu do innego pliku.

Jeśli używasz jakiejś formy szyfrowania, aby uniknąć przechowywania hasła w postaci zwykłego tekstu, Twoja aplikacja nadal będzie musiała odszyfrować je innym hasłem, które już będzie miała. Jeśli atakujący dokłada wszelkich starań, aby uzyskać dostęp do twojego systemu, możesz być całkiem pewien, że on też będzie o tym wiedział. To, co robisz, to zaciemnianie (i uzyskanie fałszywego poczucia bezpieczeństwa), a nie faktyczne zabezpieczanie go.

Bezpieczniejszym rozwiązaniem jest podanie przez użytkownika hasła (lub hasła do odszyfrowania hasła bazy danych) podczas uruchamiania aplikacji, ale to bardzo utrudni administrację. A jeśli już masz paranoję (dobrą ochronę, a nie szaloną), że ktoś ma dostęp do twojego serwera, powinieneś wziąć pod uwagę, że hasło bazy danych będzie przechowywane w pamięci systemowej.

Poza tym zachowaj hasło w pliku konfiguracyjnym (którego możesz być pewien, że serwer nie będzie widoczny dla świata zewnętrznego), zablokuj system i nadaj użytkownikowi bazy danych tylko minimalne wymagane uprawnienia.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql, zrzut, przywracanie bazy danych

  2. MySQL:GROUP_CONCAT z ORDER BY COUNT?

  3. jqGrid - Unikalny identyfikator dla nowego wiersza

  4. Zapytanie SQL, aby sprawdzić typ produktu w WooCommerce

  5. Optymalna konfiguracja MySQL (my.cnf)