Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Optimaler Speicherort einer Datenbank? (https://www.delphipraxis.net/181144-optimaler-speicherort-einer-datenbank.html)

FragenderHerbert 18. Jul 2014 23:53

Datenbank: ALLE • Version: aktuell • Zugriff über: ADO/UIB/BDE

Optimaler Speicherort einer Datenbank?
 
Mich beschäftgt die Fragen nach dem optimalen Speicherort, abhängig von der gewählten Datenbank.

Ich kann mir vostellen, das für die BDE der Speicherort C:\Programme\Gemeinsame Dateien\DataSources der richtige Speicherort ist. Wie steht es aber bei ODBC Datenquellen oder bei Firebird. Habe heute mal Firebird installiert (Superserver). Habe mir FBAdmin zur Administration besorgt. Dieses Tool speichert standardmäßig die angelegte Datenbank in seinem /Bin Verzeichnis. Im Interesse der Datengeheimhaltung könnte man dort die DB mit einem unverfänglichen Namen versehen wie fbadmin.scc. Ein Angreifer, der sich unberechtigten Zugang zum Server verschafft hat, wird wohl kaum in einer Datei mit diesem Namen die von ihm gesuchte Datenbankdatei vermuten. FB speichert ja die Tabellen der DB in dieser Datenbankdatei. Aber ist das Industriestandard, solche exotischen Speicherorte zu verwenden. Bei FBAddmin ist das die Voreinstellung und wie ich da einen anderen Speicherort festlegen kann, hab ich nch nicht rausgefunden. Sorry, aber ich habe FB erst heute zum ersten Mal samt FBAdmin installiert.

Wo ist der optimale Speicherort für ODBC Datenquellen. Ich spiele grad auch noch bissl mit ADO rum. Mit den UIB Komponenten die auf der Firebird-Seite zum Zugriff vorgeschlagen werden, habe ich noch gar nix gemacht, nur erst mal für die spätere Verwendung mit Firebird Datenbanken runtergeladen.

Wo speichert Ihr Eure Datenbanken.

ODBC

optimaler Speicherort der Datenbank(en) ?

BDE

optimaler Speicherort der Datenbank(en) ?

Firebird

optimaler Speicherort der Datenbank(en) ?

.

Sir Rufo 18. Jul 2014 23:58

AW: Optimaler Speicherort einer Datenbank?
 
Öhm, Firebird, ja ok, aber ODBC und BDE sind keine Datenbanken sondern Zwischenschichten um auf Datenbanken zuzugreifen.

Perlsau 19. Jul 2014 00:26

AW: Optimaler Speicherort einer Datenbank?
 
Der Speicherort z.B. einer Firebird-Datenbank-Datei spielt erstmal keine große Rolle (sieht man mal davon ab, daß man am besten keinen langsamen Stick oder gar ein wiederbeschreibbare CD verwenden sollte). Wenn du deine Datenbank vor unbefugtem Zugriff schützen willst, machst du das mit entsprechender Verschlüsselung. Erwähnenswert wäre vielleicht noch, daß eine Multi-User-Datenbank am besten auf einem System mit schnellem Plattenzugriff und viel Speicher installiert werden sollte. Aber das kommt später ...

Übrigens erstellt man mit FBAdmin keine Datenbanken (kann man natürlich auch via Script, ist aber nicht besonders komfortabel. Ich würde dir empfehlen, erst einmal die verfügbaren Docs, Manuals und Tutorials durchzuarbeiten, schon allein um das System Firebird und Datenbank-Terminologie überhaupt kennenzulernen:
  • Wie ist ein Relationales Datenbank Management System aufgebaut?
  • Wie arbeitet ein RDBMS?
  • Was bedeutet der Begriff relational?
  • Was ist zu beachten?
  • Was bedeuten Normalisierung und Redundanz?
  • Was ist Structured Query Language?
  • Wie erlerne ich SQL?
  • usw. usf.

Dann holst du dir die kostenlose Personalversion von IbExpert und entwirfst deine erste Datenbank.

Erst dann kommen Überlegungen ins Spiel, wie du mit Delphi auf die Datenbank zugreifst, was du dazu benötigst, wo du entsprechende Komponenten herbekommst usw. Ausdauer und regelmäßige Anwendung vertiefen und verfestigen dein Wissen und Können, aber nicht von heute auf morgen.

Perlsau 19. Jul 2014 00:28

AW: Optimaler Speicherort einer Datenbank?
 
Zitat:

Zitat von Sir Rufo (Beitrag 1265988)
Öhm, Firebird, ja ok, aber ODBC und BDE sind keine Datenbanken sondern Zwischenschichten um auf Datenbanken zuzugreifen.

Find ich gut, daß es auch dir wichtig zu sein scheint, die korrekte Terminologie zu verwenden, ohne gleich fürchten zu müssen, als Erzenbsähler etikettiert zu werden :!:

Sir Rufo 19. Jul 2014 01:28

AW: Optimaler Speicherort einer Datenbank?
 
Zitat:

Zitat von Perlsau (Beitrag 1265991)
Zitat:

Zitat von Sir Rufo (Beitrag 1265988)
Öhm, Firebird, ja ok, aber ODBC und BDE sind keine Datenbanken sondern Zwischenschichten um auf Datenbanken zuzugreifen.

Find ich gut, daß es auch dir wichtig zu sein scheint, die korrekte Terminologie zu verwenden, ohne gleich fürchten zu müssen, als Erzenbsähler etikettiert zu werden :!:

Wieso fürchten, ich stehe dazu - ich zähle aber auch nur die ganz kleinen :mrgreen:

Dejan Vu 19. Jul 2014 06:59

AW: Optimaler Speicherort einer Datenbank?
 
Wozu gibt es eigentlich PN? :gruebel:

Zitat:

Zitat von FragenderHerbert (Beitrag 1265987)
Dieses Tool speichert standardmäßig die angelegte Datenbank in seinem /Bin Verzeichnis. Im Interesse der Datengeheimhaltung könnte man dort die DB mit einem unverfänglichen Namen versehen wie fbadmin.scc. Ein Angreifer, der sich unberechtigten Zugang zum Server verschafft hat, wird wohl kaum in einer Datei mit diesem Namen die von ihm gesuchte Datenbankdatei vermuten.

In die Richtung solltest Du noch nicht einmal im Traum anfangen, zu denken. Was Du da machen willst, ist 'security by obscurity' und eine ganz schlechte Taktik. Auch Datenbankverschlüsselung als generelles Sicherheitskonzept halte ich für keine gute Idee, denn wenn ich die Applikation reverse engineere, habe ich auch den Schlüssel.

Verwende am Besten die Sicherungsmechanismen des OS, also Kontrolle des Dateizugriffs über Benutzerrechte, starke Kennwörter sowie die Sicherungsmechanismen des RDBMS. Verschlüsselung auf Datenbankebene würde ich nur dann für Daten verwenden, die vor dem direkten Auslesen geschützt werden müssen, also z.B. Kennwörter in Benutzerlisten.

Als Alternative zu FB kann man auch Microsoft SQL-Express nehmen, wo ein wirklich ausgewachsenes Administrationswerkzeug gleich mit dabei ist. Der Zugriff erfolgt idealerweise über ADO.

Wie Perlsau schon meinte, ist ein wenig Grundlagenaneignung hier unbedingt notwendig, seinen Ausführungen hätte ich nur belanglose Erbsen hinzuzufügen, wenn überhaupt. Nur eines vielleicht: Der Einwand von Sir Rufo bezüglich ODBC/BDE waren keine Erbsen, sondern eher Wassermelonen bzw. Kürbisse epischen Ausmaßes.

Bernhard Geyer 19. Jul 2014 09:12

AW: Optimaler Speicherort einer Datenbank?
 
Zitat:

Zitat von FragenderHerbert (Beitrag 1265987)
Ich kann mir vostellen, das für die BDE ...

Was ist die BDE? Ist das was zum Essen? Bei der BDE sollte man sich mehr als nur Vorstellen diese in die Vitrine der Geschichtlichen Techniken zu stellen und kein, absolut keine Gedanken für die Zukunft mehr zu verwenden.

Zitat:

Zitat von FragenderHerbert (Beitrag 1265987)
Wie steht es aber bei ODBC Datenquellen oder bei Firebird.

Kommt immer auf die zugrundeliegende DB-System an. Ist es eine Server so muss sich der Admin der Servers gedanken machen. Am besten er übernimmt die Vorgaben des Installers.
Für Lokale DBs kommt es immer darauf an ob andere auch darauf zugreifen sollen. Also z.B. C:\ProgramData wenn jeder der sich lokal Anmelden soll es können soll oder %AppData% wenn es ohne Konfiguration nur für den eigenen User sein soll

Zitat:

Zitat von FragenderHerbert (Beitrag 1265987)
Im Interesse der Datengeheimhaltung könnte man dort die DB mit einem unverfänglichen Namen versehen wie fbadmin.scc. Ein Angreifer, der sich unberechtigten Zugang zum Server verschafft hat, wird wohl kaum in einer Datei mit diesem Namen die von ihm gesuchte Datenbankdatei vermuten.

Wenn der Angreifer zugriff auf den Server (Lokales Anmelden oder Ähnliches) kann man sich solche Spielerreien wie unverfängliche Namen sparen. Wenn der Angreifer es auf die DB abgesehen hat ist dieser "Schutz" in 3 Sekunden ausgehebelt.

Zitat:

Zitat von FragenderHerbert (Beitrag 1265987)
Aber ist das Industriestandard, solche exotischen Speicherorte zu verwenden.

Es gibt keinen Industriestandard wie und wo DB-Systeme ihre Daten speichern.

Lemmy 19. Jul 2014 09:55

AW: Optimaler Speicherort einer Datenbank?
 
Hi,

der optimale Speicherort einer Datenbankdatei ist auf einer eigenen Festplatte, wobei die Auslagerungsdatei/swap sowie die anderen Systemdateien des OS NICHT auf dieser Festplatte liegen. Nur zur Sicherheit: Nicht auf der Festplatte heißt auch nicht auf einer anderen Partition auf der Festplatte!

Die Datenbankdateien umzubenennen ist Kinderkram - mit ein paar kleinen Tools ist es ein leichtes raus zu finden welche Dienste welche Dateien öffnen. Die beste Absicherung gegen Angreifer sind Firewall, VIrenscanner und ein gutes Adminpasswort sowie keinen direkten Zugriff der Anwender auf den Server / die Datenbankdatei (UNC-Freigabe).

Grüße

Jumpy 21. Jul 2014 12:06

AW: Optimaler Speicherort einer Datenbank?
 
Zitat:

Zitat von Lemmy (Beitrag 1266003)
der optimale Speicherort einer Datenbankdatei ist auf einer eigenen Festplatte, wobei die Auslagerungsdatei/swap sowie die anderen Systemdateien des OS NICHT auf dieser Festplatte liegen. Nur zur Sicherheit: Nicht auf der Festplatte heißt auch nicht auf einer anderen Partition auf der Festplatte!

Die Datenbankdateien umzubenennen ist Kinderkram - mit ein paar kleinen Tools ist es ein leichtes raus zu finden welche Dienste welche Dateien öffnen. Die beste Absicherung gegen Angreifer sind Firewall, VIrenscanner und ein gutes Adminpasswort sowie keinen direkten Zugriff der Anwender auf den Server / die Datenbankdatei (UNC-Freigabe).

Ich hab die Frage (mittels Glaskugel) jetzt so verstanden, dass es um ein Programm geht, das eine Datenbank mitbringt, die irgendwo lokal gespeichert werden muss. Sprich ich interpretiere da mal Einzelplatzanwendung hinein, z.B. mit einer embeded DB.

p80286 21. Jul 2014 13:35

AW: Optimaler Speicherort einer Datenbank?
 
Zitat:

Zitat von FragenderHerbert (Beitrag 1265987)
Mich beschäftgt die Fragen nach dem optimalen Speicherort, abhängig von der gewählten Datenbank.

Diese Frage läßt sich nicht beantworten.

Zuerst solltest Du fragen welche Daten, für welchen Anwenderkreis in der Datenbank gespeichert sind. Alleine daraus ergibt sich mehr oder weniger zwangsläufig ob die DB auf einer ServerFarm eingerichtet wird oder ob sie auf einem Arbeitsplatz-PC eingerichtet wird. Oder auf einem System was zwischen diesen Extremen liegt.
Daraus ergibt sich dann oft zwangsläufig ob z.B. ein eigenes Volume für die Datenbank notwendig ist.

Und was die Sicherheitsanforderungen angeht, neben den üblichen Mitteln wie z.B. Steuerung der Zugriffsberechtigungen (OS) und Benutzereinrichtung in der Datenbank, wenn die gespeicherten Daten wirklich sicherheitsrelevant sind, dann gehören sie auf keienen Fall auf den Laptop des Benutzers, sondern auf einen Server, der durch die bereits (mehrfach) genannten Sicherheitsmechanismen geschützt ist.

Alles andere ist Datenverarbeitung wie sie in irgendwelchen Fernsehkrimis propagiert wird, hat aber im realen Leben nichts zu suchen.

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 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