Barvna shema: Temna
Trenutno dejavna stran: start » de » Dokumentation » Datenintegration und Datenzugriff » WKL Database Gateway » Erste Schritte » Was ist der Datendienst?

Was ist der Datendienst?

graph TD
    A["Access über den ODBC-Treiber"] -->|"OData v4, HTTPS"| D
    E["Excel, Power BI (Power Query)"] -->|"OData v4, HTTPS"| D
    P["Eigene Programme: .NET, VBA, Skripte"] -->|"HTTP, JSON oder XML"| D
    V["Verwaltungsanwendung (Access)"] -->|"/admin/v1/"| D
    D["Datendienst Wkl.Data.Gateway"] --> Q[("SQL Server: eine oder mehrere Datenbanken")]

Der Datendienst (Wkl.Data.Gateway) ist der einzige Weg, auf dem Anwender und Programme an Ihre SQL-Server-Datenbanken kommen. Er nimmt Anfragen über HTTP entgegen, prüft Anmeldung und Rechte, erzeugt daraus SQL und liefert das Ergebnis zurück. Sie brauchen ihn, wenn Arbeitsplätze, Excel-Mappen oder Programme keine direkte Verbindung zur Datenbank haben sollen – im Büro, im Homeoffice ohne VPN oder beim Kunden.

Wichtige Funktionen

  • Access, Excel und Power BI ohne Datenbankverbindung. Access verknüpft Tabellen über den ODBC-Treiber Wkl OData und bearbeitet sie in Datenblatt und Formular. Excel und Power BI laden über Power Query (OData-Feed); Filter und Sortierung führt die Datenbank aus.
  • Nur SQL, das der Dienst erzeugt oder geprüft hat. Für gewöhnliche Anfragen baut der Dienst das SQL selbst. Schickt ein Aufrufer eine eigene Anweisung, zerlegt der Dienst sie und prüft jedes Objekt gegen Katalog und Regeln. Ungeprüft läuft eine Anweisung nur auf einem eigens freigeschalteten Weg; dort setzen allein die Berechtigungen der Datenbankanmeldung die Grenze.
  • Anmelden, wie es passt: Windows-Konto, SQL-Server-Anmeldung, persönlicher Schlüssel je Person oder Dienstschlüssel für Programme; dazu je nach Verfahren und Netz ein zweiter Faktor (Authenticator-App).
  • Die Person kommt in der Datenbank an. Auf Wunsch laufen Anweisungen unter der eigenen SQL-Server-Anmeldung der Person oder unter einer zugeordneten Abteilungsanmeldung. Trigger und Spaltenvorgaben sehen dann, wer gehandelt hat.
  • Verwalten ohne Neustart. Datenquellen, Regeln, Personen und Schlüssel liegen in einem Verwaltungsspeicher, den Sie mit der Verwaltungsanwendung für Access pflegen. Verbindungszeichenfolgen und die Geheimnisse der zweiten Faktoren sind darin mit einem Hauptschlüssel verschlüsselt, persönliche Schlüssel nur als Prüfwert abgelegt; Namen, Regeln und Personen sind lesbar.
  • Nachweis. Jede Anfrage an Daten und Verwaltung wird mit Aufrufer, Alias, Objekt, Methode, Ergebnis und Korrelationskennung protokolliert, auch eine abgewiesene. Jede Änderung über die Verwaltungsschnittstelle steht im Änderungsprotokoll des Speichers.
  • Installation mit einem Programm: Windows-Dienst, HTTPS-Zertifikat (auch Let's Encrypt), Firewall und Betrieb hinter IIS.

Grundkonzepte

Aliasse statt Datenbanknamen. Eine Datenbank erscheint nach außen unter einem Namen (Alias), etwa fachdaten. Die Verbindungszeichenfolge kennt nur der Dienst; kein Aufrufer wählt selbst eine Datenbank.

Der Katalog ist die Freigabeliste. Der Dienst liest Tabellen, Sichten, Spalten und Schlüssel aus der Datenbank selbst. Jeden Namen in einer Anfrage schlägt er dort nach, jeden Wert bindet er als Parameter. Was nicht im Katalog steht, gibt es für den Aufrufer nicht.

Zwei Oberflächen über demselben Katalog. OData v4 (/odata/v4/…) für Access, Excel und Power BI, dazu ein eigener HTTP-Vertrag (/api/v1/cf/…, JSON oder XML) für Programme. Anmeldung, Rechte und Audit sind auf beiden dieselben.

Regeln bestimmen die Reichweite. Eine Regel nennt Aliasse, Arten von Objekten (Tabellen, Sichten, Prozeduren, eigene Anweisungen, Verwaltung), Methoden und ob sie nur liest. Regeln erhalten Personen, Windows-Gruppen, SQL-Anmeldungen und Dienstschlüssel.

Schreiben trifft genau einen Satz. Jede Änderung, deren SQL der Dienst erzeugt, adressiert einen Satz über seinen vollständigen Schlüssel. Eine Tabelle ohne Schlüssel lässt sich nur schreiben, wenn sie dafür freigegeben ist; der Satz wird dann über seine alten Werte bestimmt. Fremde Änderungen erkennt der Dienst, wenn die Tabelle eine Zeilenversion (rowversion) führt oder für sie ein Zeilenstempel eingeschaltet ist: Hat sich der Satz seit dem Lesen geändert, schreibt er nichts, und Access zeigt den gewohnten Schreibkonflikt. Fehlt beides, überschreibt bei einem eigenen Programm die letzte Änderung die vorige; Access weist über den ODBC-Treiber das Ändern eines Satzes dann ab. Siehe So machen Sie Tabellen ohne Zeilenversion bearbeitbar.

Verwandte Themen

de/wiki/data-conectivity/database-gateway/getting-started/what-is-the-data-service.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille