Mit welcher Datenbank geht das



  • Nabend. Ich möchte gerne mit dem C++ Builder eine Datenbankanwendung schreiben, die ein ganz wichtiges Kriterium erfüllen muss:
    Die Datenbank sollte gegen unbefugtes lesen "relativ" sicher sein,
    und
    die ganze Anwendung sollte nachher von CD auf andere Rechner installierbar sein (durch einen Installer).

    Ich hatte zuerst an embedded Firebird oder SQLite gedacht, sind aber wegen der "Nichtsicher, da sich jeder anmelden kann" ausgeschieden. Dann habe ich mal ein wenig an ACCESS gedacht, aber wenn ich dort meine Datenbank Passwort schütze, ich ja auch gleich die Sicherheitsdatei mitliefern muss, oder ?

    Was stände mir denn noch zur Auswahl?

    Lg Carsten



  • Hallo

    Oracle
    mySQL

    Mfg
    Klaus



  • Danke KlausB für Deine Antwort,
    aber ich muss doch z.B. für MySql ein extra Programm (eben den MySQL Server) installieren, oder ?
    Sorry, falls die Frage jetzt ein wenig dumm rüberkommt. Kann ich das über einen Installer macher, dass der Endkunde nicht extra nochmal 5 mal klicken muss?



  • du könntest auch 'berkeley db' nehmen.
    - open source
    - kannste komplett in dein programm integrieren (ohne extra server)
    - unterstützt aes-verschlüsselung



  • danke ten,

    das hört sich ja richtig interessant an. War jetzt gerade mal auf der HP und habe mir das Datenblatt angeschaut. Sieht wirklich vielversprechend aus. Hättest Du evtl. für einen schnelleinstieg einen link, oder könntest mir vielleicht sagen, wie ich sie aus C++ (mit dem Borland Builder)ansprechen kann?
    Evtl. ein Tutorial o.ä.
    Wäre nett.

    Lg Carsten



  • naja, im prinzip ist es eine c-library. sowas lässt sich ja auch leicht in c++ verwenden. vielleicht hift dir das weiter: http://pybsddb.sourceforge.net/reftoc.html



  • Danke ten. Das hilft mir erstmal weiter. Werde dann mal ein wenig damit experimentieren.

    Lg Carsten



  • Ich hatte zuerst an embedded Firebird oder SQLite gedacht, sind aber wegen der "Nichtsicher, da sich jeder anmelden kann"
    

    Mit Embedded Firebird geht das. Was meinst Du mit "..jeder kann sich anmelden" ?
    Das stimmt doch nicht !



  • Hallo Coderic,

    ich hatte die Erfahrungen mit Firebird Embedded 1.5 gemacht, dass ich meine Datenbank zusammen mit der dll auf einen anderen Rechner portiert hatte, wo der IBExpert drauf war, und ich konnte mit jedem Username und jedem Passwort auf die Daten zugreifen. 😞

    Wenn es anders ist, bin ich sehr dankbar, da ich mich mit dem System schon recht gut angefreundet hatte, und ich am liebsten auch dabei bleiben würde.
    Nur als Vorraussetztung für mein Projekt müssen die Daten sicher sein.

    Falls das Firebird System zusätzlich noch um ein Verschlüsselungsverfahren erweiterbar wäre.........

    dann könnte ich garnichtmehr einschlafen.

    Lg Carsten



  • ... also ich nutze auch IBExpert... und Embedded_Firebird_2.0

    Die DB sehe ich. Kann Sie aber bei falschen Passwort nicht öffnen.



  • @Coderic
    Hast Du Dir nur die Embedded Datenbank runtergeladen oder auch parallel die Server Version mal installiert. Wenn Du die Server Version installiert hast, deinstalliere die mal, oder portiere Deine Datenbank mit der dll auf einen anderen Rechner. So bin ich darauf gekommen und in der Embedded Beschreibung steht das auch drin:
    Auszug aus der Readme_embedded 1.5.3:2.3.

    Authentication and security

    The security database (namely security.fdb) is not used
    in the embedded server and hence is not required. Any
    user is able to attach to any database. Since both
    the server and the client run in the same address space,
    the security becomes just an agreement between both
    sides which can be easily compromised.

    But note that SQL privileges are still checked.

    Wenn ich mich irren sollte, dann würde mich das Freuen, aber habe das einen ganzen Nachmittag getestet, und leider Gottes, es war so.

    Lg Carsten



  • Du hast Recht.

    Muss mal überlegen, ob es ein Provisorium gibt.



  • Warum das ganze auf die DB abwaelzen ?

    Muss doch nur sorgen das die Daten selber verschluesselt sind und der User nix mit anfangen kann, dann isses egal welche DB Du hernimmst.
    Also schau lieber nach verschluesselungs Algos und Strategien.

    Ciao ...



  • @RHBaum:
    Ja, das hatte ich ja jetzt auch vor. Hatte mal wegen dieser aes-Verschlüsselung geschaut, aber konnte eben in Verbindung mit Firebird noch nichts finden.
    Die Berkeley db von der ersten Seite kann es, aber ist in c und ohne SQL. Das wäre erstmal für mich absolutes Neuland.
    Hatte schon an eine Eigene Verschlüsselung gedacht (mit nem Key, und nem char usw).
    Ich möchte nur sehr gerne noch eine Suchfunktion später in der Datenbank haben, und weiss nicht, wie sich die Verschlüsselung auf die Suche bemerkbar macht (nach dem Motto : suche alles was mit hau* anfängt).

    Auch wenn jemand in Bezug auf Verschlüsselung links oder andere Sachen hätte, ich wäre dankbar.

    Lg Carsten


Log in to reply