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

Dlaczego nie skorzystać z wbudowanych użytkowników i uprawnień MySQL dla strony internetowej?

Użytkownicy MySQL są dla użytkowników samego serwera MySQL. Użytkownicy ci powinni być zarezerwowani do użytku tylko przez administratora serwera lub aplikacje wymagające uruchomienia użytkownika (przydziel oddzielnego użytkownika każdej aplikacji). System zarządzania użytkownikami MySQL został zbudowany specjalnie po to, aby zapewnić kontrolowany dostęp do bazy danych działającej na serwerze, a NIE po to, aby stanowić podstawę uwierzytelniania użytkownika w aplikacji internetowej. Ponadto wszelkie dodatki do bazy danych (i kreacje użytkowników) będą wymagały, aby użytkownik uruchamiał aplikację, która ma te uprawnienia w bazie danych. Chociaż samo w sobie nie jest bezpośrednią luką w zabezpieczeniach, jeśli zostanie ona znaleziona w twoim systemie PHP, może znacznie pogorszyć twoje życie.

Nigdy nie chcesz, aby Twoja aplikacja mogła zanieczyszczać przestrzeń nazw bazy danych MySQL dodatkowymi bazami danych lub (tabelami). Podczas działania aplikacji powinna ona być w stanie tworzyć, pobierać, aktualizować i usuwać rekordy tylko przy użyciu Zasada najmniejszych uprawnień , co oznacza, że ​​dasz użytkownikowi bazy danych dostęp tylko do tego, czego wymaga i nic więcej.

Jeśli chodzi o haszowanie hasła, użyj bcrypt za pomocą funkcji crypt() PHP . Zapisz to w bazie danych w tabeli użytkowników.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Co standard SQL mówi o nawiasach w instrukcjach SQL UNION/EXCEPT/INTERSECT?

  2. MySQL:Używanie DATETIME jako klucza podstawowego

  3. Pobierz wiersze z tabeli mysql do tablic php

  4. Uzasadnienie pełnego tekstu odrzucanych słów MySQL

  5. Łączysz się z wieloma instancjami CloudSQL za pomocą serwera proxy Cloud sql?