sql >> Databáze >  >> RDS >> Mysql

Proč nevyužít vestavěné uživatele a oprávnění MySQL pro web?

Uživatelé MySQL jsou pro uživatele samotného serveru MySQL. Tito uživatelé by měli být vyhrazeni pro použití pouze administrátorem serveru nebo aplikacemi, které vyžadují spuštění uživatele (každé aplikaci přidělte samostatného uživatele). Systém správy uživatelů MySQL byl vytvořen speciálně tak, aby umožňoval řízený přístup k databázi běžící na serveru, NEBYL základem autentizace uživatelů ve webové aplikaci. Navíc jakékoli přidání databáze (a vytvoření uživatele) bude vyžadovat, abyste měli uživatele spouštějícího aplikaci, který má tato oprávnění k databázi. I když sama o sobě není přímou zranitelností, pokud se nějaká najde ve vašem systému PHP, může vám to hodně zhoršit život.

Nikdy nechcete, aby vaše aplikace byla schopna znečišťovat jmenný prostor databáze MySQL dalšími databázemi nebo (tabulkami). Během provozu vaší aplikace by měla být schopna vytvářet, načítat, aktualizovat a mazat záznamy pouze pomocí Princip nejmenšího privilegia , což znamená, že uživateli své databáze poskytnete přístup pouze k tomu, co vyžaduje, a nic víc.

Pokud jde o hašování hesla, použijte bcrypt přes funkci PHP crypt() . Uložte to do databáze v tabulce uživatelů.



  1. Vyřešte chybu PLS-00323 v Oracle

  2. ElasticSearch river JDBC MySQL nemaže záznamy

  3. automatické doplňování zobrazuje všechny položky, neprovádí žádné vyhledávání

  4. Dochází při používání cizích klíčů na serveru SQL k závažnému narušení výkonu?