Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Access Datenbank vor Zugriff von aussen schützen (https://www.delphipraxis.net/135241-access-datenbank-vor-zugriff-von-aussen-schuetzen.html)

Cogito 7. Jun 2009 14:37

Datenbank: Access • Version: 2000 • Zugriff über: ADO

Access Datenbank vor Zugriff von aussen schützen
 
Hallo zusammen,

ich verwende in meinem Delphi-Programm eine Access 2000 Datenbank und verwende eine Benutzerverwaltung, um den Zugriff auf Eingabemasken und damit auf die Datenbank zu kontrollieren. Natürlich macht das nur solange Sinn, wie niemand von aussen die Datenbank öffnen und dadurch Daten beliebig ändern kann. Die Datenbank soll in einem Share-Laufwerk, und dadurch für Benutzer an verschiedenen Standorten, zugreifbar liegen, aber eben nur dezidiert über meine Anwendung. Ich habe schon mal irgendwo gelesen, dass man Access ein Passwort verpassen kann, aber wie funktioniert das dann aus meiner Applikation heraus und wie sicher ist der Schutz? Kann mir hier jemand helfen?

P.S. Es muss kein übertriebener Mechanismus hier implementiert werden, die User sind alle keine ITler und auch nicht unbedingt daran interessiert, die DB zu knacken. Es sollte deshalb hier nicht zuviel Aufwand getrieben werden müssen (es sei denn man bekommt einen guten Schutz mit relativ wenig Aufwand).

mkinzler 7. Jun 2009 14:39

Re: Access Datenbank vor Zugriff von aussen schützen
 
Sollte durch Verknüpfung mit einer Workgroupdatei(.mdw) machbar sein

Cogito 7. Jun 2009 14:40

Re: Access Datenbank vor Zugriff von aussen schützen
 
Zitat:

Zitat von mkinzler
Sollte durch Verknüpfung mit einer Workgroupdatei(.mdw) machbar sein

Kannst Du mir ne Anleitung geben oder eine url wo ich so etwas nachlesen kann ?

mkinzler 7. Jun 2009 14:45

Re: Access Datenbank vor Zugriff von aussen schützen
 
Bin kein Access-Spezialist und habe es auch nicht vor zu werden.
http://www.marktscheffel.de/access/a...iffsschutz.htm

Bernhard Geyer 7. Jun 2009 16:02

Re: Access Datenbank vor Zugriff von aussen schützen
 
Bedenke das diese Lösung auch nur maximal 60€ wert ist.

Willst du einen richtigen Schutz so wirst du eine richtige SQL-Datenbank wie MS SQL Server, MySQL, Oracle, Firebird verwenden müssen auf denn die "bösen" Anwender keinen direkten Dateizugriff haben.

Cogito 9. Jun 2009 08:27

Re: Access Datenbank vor Zugriff von aussen schützen
 
Das Access nicht erste Sahne ist brauchen wir nicht zu betonen. Leider bleibt auch mir keinerlei Alternative, ich hätte auch lieber einen SQL Server genommen. Doch zurück zum Thema. Wenn man nun einen solchen Schutz eingerichtet hat, wie verträgt sich das denn mit den ADO Komponenten und deren Zugriff?

Cogito 9. Jun 2009 09:17

Re: Access Datenbank vor Zugriff von aussen schützen
 
Wenn ich in Access beispielsweise einen einfachen Kennwortschutz einrichte, wie kann ich denn die Datenbank dann noch mit den ADO Komponenten öffnen?

Burgwächter 9. Jun 2009 09:23

Re: Access Datenbank vor Zugriff von aussen schützen
 
Hallo,
ich nutze das Standard-Datenbankpasswort von Access, (ist leicht zu knacken logisch.) in meiner Anwendung nutze ich dann im ADO ConnectionString " Password=xxx;"

Delphi-Quellcode:
...
Qry := TADOQuery.Create(nil) ;
Qry.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ACCESSfile +';'
               +'Jet OLEDB:Engine Type=5;Jet OLEDB:Database Password='+PASSWORD+';';
...
Das verhindert aber nicht, dass jem. der das PW kennt in ACCESS die Datenbank nicht öffnen kann. Außerdem kann man das PW in einem Debugger im Klartext lesen.

Gruß
Ralf

Cogito 9. Jun 2009 16:37

Re: Access Datenbank vor Zugriff von aussen schützen
 
Zitat:

Zitat von Burgwächter
Hallo,
ich nutze das Standard-Datenbankpasswort von Access, (ist leicht zu knacken logisch.) in meiner Anwendung nutze ich dann im ADO ConnectionString " Password=xxx;"

Delphi-Quellcode:
...
Qry := TADOQuery.Create(nil) ;
Qry.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ACCESSfile +';'
               +'Jet OLEDB:Engine Type=5;Jet OLEDB:Database Password='+PASSWORD+';';
...
Das verhindert aber nicht, dass jem. der das PW kennt in ACCESS die Datenbank nicht öffnen kann. Außerdem kann man das PW in einem Debugger im Klartext lesen.

Gruß
Ralf

Standardpasswort? Was ist denn das für eins? Du meinst du schützt die DB einfach über Kennwortschutz und übergibst dann das Passwort beim Aufbau des Connectionstrings?
Komisch, das hab ich mittels des Dialogs für den Aufbau einer ADOConnection auch versucht, aber beim Klicken auf den Button Test kam jedesmal eine Fehlermeldung. Daher hatte ich es im Quellcode gar nicht erst probiert einzubauen. Sollte ich vielleicht mal tun, vielleicht funktioniert diese Testabfrage nicht zuverlässig.

Bernhard Geyer 9. Jun 2009 16:44

Re: Access Datenbank vor Zugriff von aussen schützen
 
[quote="Cogito"]
Zitat:

Zitat von Burgwächter
... kam jedesmal eine Fehlermeldung.

Und welche?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:58 Uhr.
Seite 1 von 2  1 2      

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