ugrás a tartalomhoz

PHPMyAdmin jelszó változtatás letiltása

unregistered · 2011. Júl. 24. (V), 12.17
Hello!

Hogy lehet tiltani hogy egy user megváltoztathassa a saját sql (és ugye egyben phpmyadmin) jelszavát? Egyáltalán van ennek értelme? (mivel root úgyis mindenhova be tud lépni és akármit tud csinálni)
Előre is köszönöm!
 
1

Felhasználó jogok

Poetro · 2011. Júl. 24. (V), 14.01
Nem szabad adni neki csak bizonyos táblákhoz jogosultságot. És akkor nem is tudja megváltoztatni a jelszavát. Természetesen ez root felhasználóra nem igaz.
2

hiába

unregistered · 2011. Júl. 28. (Cs), 10.48
Hiába csak a saját táblájához van hozzáférése, ahhoz tartozó jelszavát (amivel be is tud lépni phpmyadminba) meg tudja változtatni akármit csinálok :(
3

3 modon lehet jelszot

Tyrael · 2011. Júl. 29. (P), 06.55
3 modon lehet jelszot valtoztatni:
http://dev.mysql.com/doc/refman/5.1/en/set-password.html
http://dev.mysql.com/doc/refman/5.1/en/grant.html
illetve direktben UPDATE-elni a mysql.user tablat

az elsohoz es az utolsohoz UPDATE jog kell a mysql.user tablara, a GRANT-hez pedig GRANT privilegium.

Tyrael
4

Azért az csúnya lenne, ha az

H.Z. v2 · 2011. Júl. 29. (P), 08.04
Azért az csúnya lenne, ha az elsőhöz úgy általában kellene az update jog a mysql.user-re:
With a FOR clause, this statement sets the password for a specific account on the current server host. Only clients that have the UPDATE privilege for the mysql database can do this.


Nekem úgy tűnik, a mysql-ben nem lehet (szabványos eszközökkel) megtiltani, hogy a user, aki SQL prompthoz jut, megváltoztassa a saját jelszavát.
Őszintén szólva értelmét sem látom igazán.

Esetleg azt tudom elképzelni, hogy beletúrsz a a mysql belső működésébe és - hacsak nincs valami önvédelmi mechanizmusa - egy triggerből megakadályozod a jelszóváltást, ha olyan user próbálkozik, akinek nem kellene...
5

igazad van, figyelmetlenul

Tyrael · 2011. Júl. 30. (Szo), 00.16
igazad van, figyelmetlenul olvastam, a sajat jelszavat tenyleg barki tudja modositani, kiveve ha a read_only be van kapcsolva, mert akkor csak a SUPER joggal rendelkezok tudjak ezt megtenni.

btw. a triggeres megoldas erre nem mukodne szerinem, de az 5.5-ben bevezetett auth plugin segitsegevel talan lehetne irni egy olyan auth plugint ami nem engedi a jelszovaltast bizonyos usereknek.
http://dev.mysql.com/doc/refman/5.5/en/pluggable-authentication.html
http://dev.mysql.com/doc/refman/5.5/en/writing-authentication-plugins.html
valszeg ez nem megoldas a kerdezonek.

Tyrael
6

Triggert úgy gondoltam, hogy

H.Z. v2 · 2011. Júl. 30. (Szo), 00.27
Triggert úgy gondoltam, hogy egy on update-et a user táblára, ami csak a root-nak engedi a matatást. Ha readonly-ra van állítva, akkor nem csak jelszót nem tud módosítani, úgy meg a legtöbb adatbázis nem sokat ér.
De továbbra is fenntartom: nem látom értelmét a dolognak.
Ha a user sql hozzáférést kap, akkor nemhogy megtiltom neki a jelszócserét, hanem ki is kényszerítem, minimum havonta.

Egyetlen gyanúm van: olyan usert akarnak kiadni egy felhasználónak, amivel az alkalmazás is működik, aminek a jelszava be van drótozva valahova. Viszont az ilyen ötletekre igen agresszíven tudok reagálni. :-)
7

tudom mit csinal a read_ony,

Tyrael · 2011. Júl. 30. (Szo), 01.40
tudom mit csinal a read_ony, csak gondoltam ha mar elsore rossz valaszt adtam, akkor a masodik hozzaszolasban pontosan leirom.
a triggeres otleted ugyan nem probaltam ki, de szerintem azert hogy update jog nelkul is tudja mindenki a sajat jelszavat modositani, emiatt valoszinuleg tartom hogy nem a normal interface-en keresztul modositja ebben az esetben a user rekordot es ezert a trigger sem sulne el ra, de ki kell probalni, lehet hogy mukodik.

en latom ertelmet, pl. valami menedzselt webhosting kornyezetben azt szeretned, hogy ha a mysql jelszot csak a control paneleden keresztul lehessen modositani, mert mondjuk ott ki tudod kenyszeriteni a jelszo erosseget.

Tyrael
8

Kipróbáltam...

H.Z. v2 · 2011. Júl. 30. (Szo), 05.06
Jól sejtettem, van önvédelem:

ERROR 1465 (HY000): Triggers can not be created on system tables


Ha jól emlékszem, Oracle7-es szerveren csináltunk úgy auditot, hogy triggert tettünk pár fontosabb táblára, innen jött az ötlet. Akkoriban még nem volt ennyire védett az adatszótár. Sőt, mintha épp a jelszó bonyolultságának kikényszerítésére is valami hasonló módszert ajánlana a doksi, azzal viszont már 9i alatt találkoztam.
(működik az agymosás... kicsit rossznéven vettem, hogy az oracle-s tapasztalataim ellenére sem találtam munkát, megpróbáltam elfelejteni még azt is, hogy valaha dolgom volt vele. Egész jól sikerült... túl jól. :D)
9

köszönöm

unregistered · 2011. Júl. 31. (V), 11.57
Köszönöm az eszmefuttatásokat, megnézem mik a lehetőségek, amúgy tényleg egyszerű okai vannak miért kérdeztem:

1. hogy ne legyenek egyszerű jelszavak
2. most volt egy olyan eset hogy a tárhely tulajdonosa véletlenül az SQL jelszót állította át az FTP jelszava helyett és kérte a programozója hogy jó lenne ha ezt nem tudná még egyszer megtenni :D
Mondtam neki hogy emberi hülyeség ellen nincs védelem :D
10

Megerőszakolod MySql-t, meg mindent

Pepita · 2011. Nov. 20. (V), 22.26
Nem próbáltam, de írsz egy szkriptet, ami lemásolja xy táblába a mysql.user táblát amikor akarod, és egy másikat, ami bizonyos időközönkét fut (pl. 1 sec) és visszatölti xy-ból az adatokat.
Ez roppant trágár gányolás, de lehet, hogy műxik.
Az emberi hülyeség ellen pedig tényleg nincs kapszula, de balta van! :-)