Einzelnen Beitrag anzeigen

CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#16

AW: mySQL Datenbank für einen Benutzer readonly

  Alt 20. Mai 2014, 09:53
Also ich persönlich mache es ganz anders:

Ich identifiziere den User beim Starten der Applikation anhand seines Windows-Login-Namens und gebe ihm dann innerhalb meiner Applikation die entsprechenden Rechte (aktiviere/deaktiviere Buttons oder TabSheets etc.).
Das heißt Du hast eigentlich kein Rechtesystem, sondern ein Verstecksystem, und wenn es dann noch unter XP läuft (unter neueren dann "nur" noch als Admin), kann eigentlich jeder zu neugierige oder gar böswillige User die Tabs/Buttons mit simpelsten Werkzeugen verfügbar machen. Wenn schon obscurity statt security, dann mindestens Tabs gar nicht vorhanden und Event-Handler der deaktivierten Buttons weg, um eine Rechteausweitung per einfachster UI-Manipulation zu verhindern. Aber auch dann kann ein lokaler Admin mit ner Proxy-DLL (gibt's bestimmt auch längst von der Stange) - oder gar Malware - trivialst die mächtigen Login-Daten erlangen.

Klar gibt es oft Anwendungsfälle, wo man tatsächlich nur einen SQL-User hat und die Rechte dann separat verwaltet werden. Das klappt aber nur, wenn man auch weiß, was wo passiert, und nicht ordentlich mit so einem Zusatz:

Würde ich einfach nur die DB-Rechte einschränken, dann würden ja z.B. irgendwelche Editier-/Speicher-Funktionen aktiv sein und dann auf einen (kryptischen MySQL-)Fehler laufen, weil der User keine DB-Schreibrechte hat.
  Mit Zitat antworten Zitat