27. september 2005 - 20:55
Der er
18 kommentarer og 1 løsning
bruger adgangs typer
Jeg skal ha lavet nogle stardard bruger.. men er ikke sikker på hvem som skal ha adgang til hvad.. Her har jeg lavet "admin" og "default" men default passer sikkert ikke som den skal så det vil jeg godt have nogle forslag til.. function create_sql_user($strUsername, $strPassword, $strDatabase, $strGrant = "default", $strHost = "localhost") { if ($strGrant == "default" || $strGrant == "") { $strGrant = "SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES"; } if ($strGrant == "admin") { $strGrant = "ALL PRIVILEGES"; } $strSQL = "GRANT $strGrant ON *.* TO '$strUsername'@'$strHost' IDENTIFIED BY '$strPassword';"; if (mysql_query($strSQL)) { if (mysql_query("FLUSH PRIVILEGES;")) { return true; } } } og så kan jeg ikke finde ud af hvordan man opdater grant i mysql.. function update_sql_grant($strGrant) { }
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
27. september 2005 - 21:02
#1
du tilføjer med GRANT og fjerner med REVOKE
27. september 2005 - 21:03
#2
jeg er ikke sikker på at du skal tildele ikke-admin CREATE og DROP på *.*
27. september 2005 - 21:07
#3
altså.. $strGrant = "REVOKE SELECT, INSERT, UPDATE"; hvad så med user.. kan du ikke komme med et eksempel..
27. september 2005 - 21:09
#4
du skal igen angive for hvad og hvem eksempel på hvad ?
27. september 2005 - 21:10
#5
ha ha den skulle også ha set sådan ud.. $strSQL = "GRANT $strGrant ON $strDatabase.* TO '$strUsername'@'$strHost' IDENTIFIED BY '$strPassword';";
27. september 2005 - 21:10
#6
eksempel på REVOKE
27. september 2005 - 21:13
#7
eksempel på hvordan jeg bruger "REVOKE" og bestemmer den bruger som "REVOKE" skal settes på..
27. september 2005 - 21:13
#8
$strSQL = "REVOKE $strGrant ON $strDatabase.* FROM '$strUsername'@'$strHost'";
27. september 2005 - 21:21
#9
du har vel ikke flere forslag til bruger typer.. lige nu har jeg: (admin) $strGrant = "ALL PRIVILEGES"; (default) $strGrant = "SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES";
27. september 2005 - 21:24
#10
Jeg tvivler på at en user skal have INDEX og ALTER Men ellers ser det vel ikke helt forkert ud, men jeg vil anbefale at restricte en bruger til en database
27. september 2005 - 21:27
#11
restricte en bruger til en database?? hvordan det??
27. september 2005 - 21:30
#12
*.* = alle databaser alle tabeller xxxx.* = kun database xxxx alle tabeller
27. september 2005 - 21:32
#13
når ja.. jeg lavede det også om her: Kommentar: sjh 27/09-2005 21:10:21
27. september 2005 - 21:34
#14
du må godt smide et svar.. :D
27. september 2005 - 21:35
#15
kommer her
27. september 2005 - 21:36
#16
hvis du skal arbejde meget med MySQL så køb en af de mange bøger om MySQL - der er skrevet mange
27. september 2005 - 21:55
#17
Ja det kunne da godt være man skulle tage en tur på biblioteket.. er der nogle bøgr du kan anbefale.. (de må godt være på dansk) :D Tak for hjælpen..
27. september 2005 - 21:58
#18
jeg har selv MySQL Bible / Steve Suehring men den vil jeg kalde middel MySQL / Paul DuBois har et meget godt ry jeg aner ikke hvad man kan få på dansk
27. september 2005 - 22:05
#19
okææ.. Jeg syntes ikke jeg kan få det her til at virke.. hvis jeg nu gerne vil ændre "%" til "localhost" hvordan gør jeg så det?? function update_sql_grant($strUsername, $strDatabase, $strGrant, $strHost = "localhost") { $strSQL = "REVOKE $strGrant ON $strDatabase.* FROM '$strUsername'@'$strHost'"; if (mysql_query($strSQL)) { if (mysql_query("FLUSH PRIVILEGES;")) { return true; } } } echo update_sql_grant("sjh", "test", "SELECT, INSERT", "%");
Computerworld tilbyder specialiserede kurser i database-management