Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi MySQL Rechte Frage. (https://www.delphipraxis.net/39701-mysql-rechte-frage.html)

megges 6. Feb 2005 18:40


MySQL Rechte Frage.
 
ich habe in eine tabelle namens user mit select rechten
in der tabelle sind fünf spalten namens id, name,rasse,lastlogin,regdatum

id ist klar wird automatisch erstellt
name wird bei der anmeldung über anderen benutzer erstellt
rasse hab ich uppdate rechte
lastlogin hab ich uppdate rechte
lastlogin wird bei der anmeldung über anderen benutzer erstellt

nund hab ich zwei einträge in der tabelle

id name rasse lastlogin regdatum

1 test1 4 1989-10-22 2005-01-01
2 test2 2 2005-01-01 2005-01-01

jetzt führt mein programm eine anweisung durch

var
aktuelle zeit
benutzer

update user set lastlogin ="'aktuelle zeit'" where name ="'benutzer'";

so weit so gut das geht auch im programm alles.

Aber wie kann ich verhindern das zB jemand der als test1 am mysql server angemeldet ist diesen sql hier ausführen könnte.

update user set lastlogin ="2005-05-05" where name ="test2";

damit würde ja test1 die daten von test2 verändern, geht das nur wenn ich für jeden benutzer eine eigene tabelle erstelle oder kann man das auch irgendwie eingrenzen?

wenn das nur mit extra tabelle gänge wieviele tabellen verkraftet mysql etwa?

Jelly 6. Feb 2005 18:47

Re: MySQL Rechte Frage.
 
Du kannst in Datenbanken allgemein die Rechte nur spaltenweise vergeben, und nicht zeilenweise wie du vorhast. Einziger Ausweg, der mir da einfällt, wäre das Ganze über eine Stored Procedure zu lösen, in der du vorm update prüfst, ob die betroffenen Datensätze auf updatebar sein dürfen. Auf die eigentliche Tabelle unterbindest du dann deinen Usern das direkte Updaten...

Aber dafü muss MySQL aber erst mal Stored Procedures unterstützen :wall:

Also fällt mir im Moment kein Ausweg ein, sorry.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:25 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz