"Zwischenschicht" auf Server zwischen Client und Datenbank

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von tragl.

    "Zwischenschicht" auf Server zwischen Client und Datenbank

    Hallo zusammen.

    Ich weiß nicht, ob es eher in dieses Unterforum gehört oder eher zur Datenbankprogrammierung - bei Bedarf bitte verschieben.
    Problemstellung:

    Meine Anwendung liegt derzeit bei jedem Client lokal und stellt eine Verbindung zur Datenbank her.
    Adresse, User und Passwort zur Datenbank sind derzeit im Code hinterlegt. Dazu kommt, dass wir inzwischen einen
    zentralen Speicherplatz für Dokumente und Dateien nutzen - dessen Zugangsdaten sind wiederum in der Datenbank hinterlegt.

    Jetzt könnte es natürlich theoretisch sein, dass jemand den Code zerpflückt, sich auf die Datenbank verbindet und sich die Zugangsdaten zum Storage ausließt.
    Um das alles zu vermeiden - alleine schon, weil DB-Zugangsdaten ja nicht in den Code gehören - hab ich mir überlegt eine Art Mini-Server-Anwendung zu basteln,
    welche die kritischen Daten enthält, sodass der Client keine Möglichkeit mehr hat dran zu kommen.

    Meine Frage wäre jetzt, wie ihr das am sinnvollsten lösen würdet?

    User öffnet Client -> Verbindung zum Server-Tool (Name oder IP-Adresse, wie stellt man sowas an?) -> Server-Tool meldet Datenbank und Storage-Zugriffsdaten zurück?

    LG

    *Topic verschoben*
    "Na, wie ist das Wetter bei dir?"
    "Caps Lock."
    "Hä?"
    "Shift ohne Ende!" :thumbsup:

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Da gab's mal vor einiger Zeit ne Diskussion: Hashing und Verschlüsseln von DB-Daten: best practice gesucht
    So ne Zwischenschicht ist auch als Vorschlag gefallen. Spätestens ab Post#16 geht's damit los.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    tragl schrieb:

    Meine Frage wäre jetzt, wie ihr das am sinnvollsten lösen würdet?

    Ich gebe dir mal ein paar Stichworte :)
    WebAPI - Zugriffspunkte, um Daten abzufragen usw.
    Ocelot - API Gateway; zentraler Zugriffsknoten (kann nötig/hilfreich sein, wenn mehr als eine WebAPI vorhanden ist)
    Keycloak - Authentifizierung an der WebAPI per JWT

    Schichtenarchitektur – Wikipedia - Klassischerweise im Softwareumfeld 3 Schichten - Data <-> Business <-> Presentation.
    Wollte nur kurz Rückmeldung geben, dass ich das erstmal wie folgt gelöst hab:
    Auf unserem FileServer liegt eine ini-Datei (versteckt), darin sind verschlüsselt die Zugangsdaten.
    In meiner Anwendung ist HardCoded also nur noch der Key für die Entschlüsselung, sonst nix mehr.
    "Na, wie ist das Wetter bei dir?"
    "Caps Lock."
    "Hä?"
    "Shift ohne Ende!" :thumbsup: