Farbschema: Dunkel
Sie befinden sich hier: start » de » Dokumentation » Datenintegration und Datenzugriff » WKL Database Gateway » Betrieb » So installieren Sie den Datendienst

So installieren Sie den Datendienst

Der Datendienst wird mit einem Installationsprogramm als Windows-Dienst eingerichtet. Es fragt nach Betriebsart, Dienstkonto, Ordnern, Zertifikat, Post-Quanten-Schutz und Zugang, prüft die Angaben und richtet alles ein. Personen, Schlüssel und Datenquellen legt es nicht an; das geschieht danach.

Lösungsübersicht

Es gibt zwei Dateien derselben Version:

DateiWofür
Wkl.Data.Gateway-Setup-<Version>.exeInstallationsprogramm mit Seiten, für die Einrichtung von Hand
Wkl.Data.Gateway-<Version>.msiPaket ohne Fenster, für die Softwareverteilung (Gruppenrichtlinie, Intune, Skript)

Beide richten dasselbe ein: das Programm dbgwsvc.exe unter %ProgramFiles%\Wkl\Data Gateway, den Windows-Dienst Wkl.Data.Gateway (Start automatisch), den Datenordner %ProgramData%\Wkl.Data.Gateway mit dem Verwaltungsspeicher und einem zufällig erzeugten Hauptschlüssel (nur für Administratoren und das Dienstkonto lesbar), die Konfigurationsdatei, das Zertifikat, die Firewall-Regel und zwei Einträge im Startmenü („Ersten Administrator anlegen“, „Zertifikat von Let's Encrypt beziehen“).

Umsetzung

Voraussetzungen: 64-Bit-Windows 10 oder 11 bzw. Windows Server 2016 oder neuer, Rechte eines Administrators (das Programm fragt beim Installieren über die Benutzerkontensteuerung). Eine .NET-Laufzeit ist nicht nötig; das Paket bringt sie mit.

  1. Starten Sie Wkl.Data.Gateway-Setup-<Version>.exe. Wählen Sie unter Sprache auswählen Deutsch, Englisch oder Slowenisch und dann OK; vorgewählt ist die Anzeigesprache von Windows. Die Seiten und ihre Meldungen erscheinen danach in dieser Sprache.

    Installationsprogramm, Schritt 1 „Willkommen“: links die Schrittleiste von Willkommen bis Fertig, rechts was eingerichtet wird und was nicht, unten Weiter und Abbrechen

  2. Lizenz: Die Lizenzbedingungen von EMSR DATA, wahlweise auf Deutsch, Englisch oder Slowenisch. Rechtlich verbindlich ist die englische Fassung. Weiter geht es erst, wenn Sie Ich stimme den Lizenzbedingungen zu wählen. Dieselben Texte liegen nach der Installation im Programmordner (LICENSE.md, LICENSE.de.md, LICENSE.sl.md).
  3. Voraussetzungen: Das Programm prüft Windows, Rechte, die Ports 8433 und 8434, IIS und die Zertifikate im Speicher des Computers. Weiter geht es, solange nichts rot ist.

    Schritt 3 "Voraussetzungen": grüne Haken für Windows, 64 Bit, erhöhte Rechte, ein Serverzertifikat im Speicher und die Laufzeit; orange Hinweise auf die belegten Ports 8433 und 8434, grauer Hinweis "IIS nicht installiert"; unten der Hinweis, im nächsten Schritt andere Ports zu wählen

  4. Betriebsart: Oben steht der Name der Installation, vorgeschlagen als „Datendienst (Rechnername)“ (auf Englisch „Data service (…)“, auf Slowenisch „Podatkovni prehod (…)“). Unter diesem Namen führt die Authenticator-App den zweiten Faktor jeder Person, etwa „Datendienst (Produktion): Erika Muster“. Wählen Sie ihn so, dass Test und Produktion oder zwei Kunden unterscheidbar sind (höchstens 64 Zeichen, ohne Doppelpunkt und Anführungszeichen). Ändern lässt er sich später unter Ändern oder in der Verwaltungsanwendung (siehe „So richten Sie den zweiten Faktor ein oder setzen ihn zurück“ (Dokumentation der Verwaltungsanwendung)). Ein neuer Name gilt nur für neu eingerichtete Apps; vorhandene Einträge behalten ihren Namen.
    • Eigenständiger Windows-Dienst (Vorgabe): Der Dienst nimmt HTTPS selbst an, auf dem HTTPS-Port (Vorgabe 8433, angelehnt an 1433 von SQL Server). Der HTTP-Port (Vorgabe 8434) antwortet nur auf diesem Rechner, für Werkzeuge und die Gesundheitsprobe.
    • Hinter IIS: IIS nimmt Port 443 an und leitet an den Dienst auf 127.0.0.1 weiter. Siehe Hinweise.

      Unverschlüsseltes HTTP nur für Entwicklung und Test. Port 8434 nimmt Anfragen ohne Verschlüsselung an, Schlüssel und Kennwörter gingen dort im Klartext. Er antwortet deshalb nur auf diesem Rechner. Arbeitsplätze – Treiber, Excel, Power BI, Verwaltungsanwendung – verbinden sich immer über HTTPS (8433 bzw. 443 hinter IIS); auf dem Server selbst ist 8434 nur für Test, Gesundheitsprobe und Notfall gedacht.

      Ist ein Port belegt, markiert das Programm ihn rot und lässt erst weiter, wenn Sie einen freien Port eintragen:

      Schritt 4 „Betriebsart“ mit den Vorgaben 8433 und 8434, darunter je eine rote Meldung „Port … ist auf diesem Rechner belegt. Wählen Sie einen anderen Port.“ und die ausgegraute Schaltfläche Weiter

      Mit freien Ports:

      Schritt 4 "Betriebsart": oben das Feld "Name der Installation" mit "Datendienst (SRV01)", ausgewählt ist "Eigenständiger Windows-Dienst" mit den freien Ports 8443 (HTTPS) und 8444 (HTTP), darunter die Alternative "Hinter IIS (Reverse Proxy)"

  5. Dienstkonto: das virtuelle Konto NT SERVICE\Wkl.Data.Gateway (Vorgabe) oder ein gruppenverwaltetes Dienstkonto (DOMÄNE\name$). Ein Konto mit Kennwort wird nicht angeboten. Datenquellen mit integrierter Sicherheit melden sich unter diesem Konto an SQL Server an; es braucht dort eine Anmeldung. Läuft SQL Server auf einem anderen Rechner, sieht er das virtuelle Konto als Computerkonto des Servers (DOMÄNE\RECHNER$); dieses braucht dann die Anmeldung.

    Schritt 5 „Dienstkonto“: ausgewählt ist „Virtuelles Dienstkonto“, darunter „Gruppenverwaltetes Dienstkonto (gMSA)“ und das nicht angebotene gewöhnliche Domänenkonto

  6. SQL Server: Datenquellen mit integrierter Sicherheit brauchen für das Dienstkonto eine Anmeldung in SQL Server und in jeder Datenbank einen Benutzer, sonst scheitern sie mit 18456 bzw. 4060.
    • Nicht anlegen: Die Datenbankverwaltung richtet beides selbst ein (siehe Hinweise).
    • Skript ablegen (Vorgabe): Das Programm legt dienstkonto-anmeldung.sql in den Datenordner. Die Datenbankverwaltung führt das Skript aus, etwa mit sqlcmd -S <Server> -E -i dienstkonto-anmeldung.sql.
    • Jetzt anlegen: Nach der Installation legt das Programm Anmeldung und Benutzer selbst an, mit Ihrem Windows-Konto. Dafür braucht Ihr Konto in SQL Server die Berechtigung dazu, etwa als Mitglied von sysadmin. Das Skript liegt trotzdem im Datenordner.

      Anzugeben sind der SQL Server (wie in der Verbindungszeichenfolge, etwa .\SQLEXPRESS), die Datenbanken (durch Komma getrennt) und die Rollen eines neuen Benutzers: Lesen und Schreiben (db_datareader, db_datawriter, Vorgabe), Nur lesen oder Keine Rolle. Läuft SQL Server auf einem anderen Rechner, gilt die Anmeldung dem Computerkonto (DOMÄNE\RECHNER$). Was schon vorhanden ist, bleibt unverändert, auch seine Rollen; ein zweiter Lauf ändert nichts. Fehlen die Berechtigungen, nennt die Seite Fertig die Fehlernummer von SQL Server, und die Installation bleibt bestehen.

      Schritt 6 "SQL Server": ausgewählt ist "Skript ablegen", darunter "Jetzt anlegen" mit den Feldern SQL Server (.\SQLEXPRESS), Datenbanken (Fachdaten, Lager) und Rollen

  7. Ordner: Programm- und Datenordner, getrennt.
  8. Zertifikat:
    • Vorhandenes Zertifikat aus dem Speicher des Computers (Liste mit Aussteller und Ablauf);
    • Let's Encrypt: öffentlicher Name (etwa daten.firma.de) und Nachweis über DNS (Cloudflare, Azure DNS, Amazon Route 53, Hetzner) oder über HTTP (Port 80 aus dem Internet erreichbar). Bestellt wird nach der Installation in einem eigenen Fenster;
    • Selbstsigniert, nur für Proben im Firmennetz.

      Schritt 8 „Zertifikat“: ausgewählt ist „Vorhandenes Zertifikat“ mit der Liste der Zertifikate dieses Rechners und ihrem Ablauf, darunter „Let's Encrypt (mit win-acme)“ und „Selbstsigniert“

  9. Post-Quanten-Schutz: aus (Vorgabe) oder hybrider Schlüsselaustausch X25519MLKEM768. Die Einstellung gilt für den ganzen Rechner. Voraussetzung ist eine Windows-Version, die diesen Schlüsselaustausch anbietet; kennt Windows ihn nicht, scheitert die Einrichtung, und die Installation wird zurückgenommen.
  10. Zugang: Nur im Firmennetz (Vorgabe; die Firewall-Regel lässt nur die eingetragenen Firmennetze zu – ohne eingetragene Netze nur das lokale Teilnetz des Servers; der Dienst selbst schränkt bei dieser Wahl nichts nach Herkunft ein) oder Auch aus dem Internet mit den Firmennetzen und der Wahl, ob die Verwaltung von außen gesperrt ist oder einen zweiten Faktor verlangt. Die Seite zeigt die Anmelderegeln, die dafür angelegt werden. Diese Regeln gelten nur für einen neuen Verwaltungsspeicher; beim Ändern einer bestehenden Installation bleiben die Regeln im Speicher; das Installationsprogramm schreibt dazu einen Hinweis ins Protokoll. Passen Sie die Regeln dann in der Verwaltungsanwendung an.

    Schritt 10 „Zugang“: ausgewählt ist „Nur im Firmennetz“, darunter „Auch aus dem Internet“, das Feld Firmennetze mit 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 und die Option „Eingehende Firewall-Regel anlegen“

  11. Zusammenfassung: Prüfen Sie die Wahl. Unter Befehlszeile für die Softwareverteilung steht dieselbe Installation als msiexec-Aufruf. Wählen Sie Installieren aus, und bestätigen Sie die Abfrage der Benutzerkontensteuerung.

    Schritt 11 "Zusammenfassung": Vorgang, Name der Installation, Betriebsart mit Ports, Dienstkonto, SQL Server, Programm- und Datenordner, Zertifikat, Post-Quanten, Zugang und Firewall; darunter "Befehlszeile für die Softwareverteilung" und die Schaltfläche Installieren

  12. Fertig: Das Programm fragt den Dienst ab (/health/live) und nennt je Schritt, was in SQL Server angelegt wurde oder schon vorhanden war (bei Jetzt anlegen), bzw. wo das Skript liegt. Lassen Sie Ersten Administrator jetzt anlegen angehakt: Nach Schließen öffnet sich ein Konsolenfenster mit init-admin, weiter mit Den ersten Administrator anlegen. Bei Let's Encrypt öffnet sich zusätzlich win-acme für die Bestellung.

Ergebnis: Der Dienst läuft und antwortet. Die Verwaltung bleibt gesperrt, bis der erste Administrator angelegt ist.

In der Dienstverwaltung (services.msc) steht er als WKL Database Gateway mit dem Status Wird ausgeführt, dem Starttyp Automatisch und dem gewählten Dienstkonto:

Dienstverwaltung mit der markierten Zeile "WKL Database Gateway": Beschreibung "Datendienst für Access, Excel und Power BI", Status "Wird ausgeführt", Starttyp "Automatisch", Anmelden als "NT SERVICE\…"; links die Beschreibung und die Verknüpfungen "Den Dienst beenden" und "Den Dienst neu starten"

Der eingerichtete Dienst in der Dienstverwaltung.

Eigenschaften von WKL Database Gateway, Registerkarte "Anmelden": ausgewählt ist "Dieses Konto" mit NT SERVICE\Wkl.Data.Gateway; die Kennwortfelder füllt Windows bei einem virtuellen Konto mit Platzhaltern

Das virtuelle Dienstkonto in den Eigenschaften des Dienstes. Ein Kennwort gibt es dafür nicht.

Ohne Fenster (Softwareverteilung)

In der Eingabeaufforderung (cmd) als Administrator:

msiexec /i Wkl.Data.Gateway-<Version>.msi /qn GW_HTTPS_PORT=8433 GW_CERTIFICATE=daten.firma.de ^
  GW_ACCESS=internal GW_NETWORKS="10.0.0.0/8,192.168.0.0/16" /l*v %TEMP%\gw-install.log

Rückgabe 0 ist Erfolg, 3010 Erfolg mit nötigem Neustart; jede andere Zahl ein Fehler, dessen Grund im Protokoll steht (nach Rückgabewert 3 bzw. Return value 3 suchen).

Mit Oberfläche (msiexec /i ohne /qn) zeigt das Paket seine Dialoge auf Deutsch; TRANSFORMS=:1033 zeigt sie auf Englisch, TRANSFORMS=:1060 auf Slowenisch.

Dieselben Angaben nimmt das Installationsprogramm mit /quiet. Ohne Fenster startet init-admin nicht; das Ereignisprotokoll (Quelle Wkl.Data.Gateway) nennt den nächsten Schritt. Alle Eigenschaften stehen in der technischen Referenz.

Ändern, Reparieren, Aktualisieren, Entfernen

Starten Sie das Installationsprogramm erneut (oder Apps und Features > WKL Database Gateway > Ändern):

WahlWirkung
ÄndernBetriebsart, Zertifikat, Post-Quanten-Schutz und Zugang neu einstellen; der Dienst startet neu. Speicher, Hauptschlüssel und Personen bleiben. Die Anmelderegeln des Zugangs ändert das nur bis zum ersten Start: Danach gelten allein die Regeln im Verwaltungsspeicher; einen Wechsel auf „Auch aus dem Internet“ ergänzen Sie dort selbst (Verwaltungsanwendung oder der Befehl POST /admin/v1/save-sign-in-rule der Verwaltungsschnittstelle) – das Installationsprogramm warnt nicht. Firewall-Regel und Lauschadressen ändert es sofort
ReparierenProgrammdateien und Dienst wiederherstellen; Einstellungen und Daten bleiben
EntfernenDienst, Programm, Firewall-Regel und Startmenü entfernen. Der Datenordner bleibt, außer Sie haken Auch den Datenordner löschen an

Eine neuere Version aktualisiert die installierte: Sie übernimmt die Einstellungen und sichert vorher den Verwaltungsspeicher nach %ProgramData%\Wkl.Data.Gateway\sicherungen. Ohne erfolgreiche Sicherung wird nicht aktualisiert.

Bis zur Fassung vom 3. November 2026 hieß die Programmdatei Wkl.Data.Gateway.exe. Die Aktualisierung entfernt sie, legt dbgwsvc.exe ab und trägt den neuen Pfad im Dienst ein; Name des Dienstes, Dienstkonto, Datenordner und Ereignisquelle bleiben Wkl.Data.Gateway. Eigene Skripte und geplante Aufgaben, die die alte Datei aufrufen, stellen Sie auf dbgwsvc.exe um.

Hinweise

  • Anmeldung des Dienstkontos in SQL Server. Eine Datenquelle mit Windows-Anmeldung (Integrated Security) meldet sich unter dem Dienstkonto an. Bis SQL Server dafür eine Anmeldung und in der Datenbank einen Benutzer hat, scheitert der Verbindungstest mit failure = Login (18456) bzw. Database (4060). Welcher Name gemeint ist – auf demselben Rechner das Dienstkonto, von einem anderen Rechner aus das Computerkonto –, nennt `GET /admin/v1/service-account`. Die Datenbankverwaltung legt beides an, etwa für Lesen und Schreiben:

    CREATE LOGIN [NT SERVICE\Wkl.Data.Gateway] FROM WINDOWS;   -- anderer Rechner: [FIRMA\SRV-DATEN$]
    USE [Fachdaten];
    CREATE USER [NT SERVICE\Wkl.Data.Gateway] FOR LOGIN [NT SERVICE\Wkl.Data.Gateway];
    ALTER ROLE db_datareader ADD MEMBER [NT SERVICE\Wkl.Data.Gateway];
    ALTER ROLE db_datawriter ADD MEMBER [NT SERVICE\Wkl.Data.Gateway];

    Zum Lesen von Tabellen und Sichten genügt db_datareader; er umfasst auch SELECT auf Tabellenwertfunktionen. Prozeduren und Skalarfunktionen brauchen EXECUTE, auch wenn die Datenquelle nur liest, etwa GRANT EXECUTE ON SCHEMA::[dbo] TO [NT SERVICE\Wkl.Data.Gateway]; je Schema. Ohne dieses Recht zeigt SQL Server sie dem Konto nicht: Der Dienst kennt sie dann nicht und weist einen Aufruf ab wie ein nicht freigegebenes Objekt („… ist unbekannt oder für Lesen nicht freigegeben.“). Welche Objekte der Dienst kennt, zeigt die Menge DataSourceObjects der Verwaltungs-API. Mit Persons = Impersonate braucht das Konto zusätzlich IMPERSONATE, siehe Weitergabe der Identität.

    Dasselbe als Skript, das Vorhandenes unverändert lässt, erzeugt der Befehl service-login im Programmordner, auch nach der Installation, etwa für eine weitere Datenbank:

    "%ProgramFiles%\Wkl\Data Gateway\dbgwsvc.exe" service-login --server .\SQLEXPRESS --database Fachdaten --script dienstkonto-anmeldung.sql

    Mit --apply statt --script legt er Anmeldung und Benutzer gleich an, mit Ihrem Windows-Konto. Alle Angaben stehen unter Befehle.

  • Hauptschlüssel sichern. Ohne die Datei geheim\hauptschluessel.key im Datenordner ist der Speicher unlesbar. Sichern Sie sie nach der Installation außerhalb des Servers, siehe Den Verwaltungsspeicher sichern.
  • Hinter IIS. Das Programm installiert weder IIS noch dessen Module URL Rewrite und Application Request Routing. Es schreibt die Vorlage iis\web.config in den Programmordner (Weiterleitung an den Dienst, Umleitung von HTTP auf HTTPS). Legen Sie in IIS eine Website mit Bindung auf 443 und Ihrem Zertifikat an, deren Inhalt diese Vorlage ist, und erlauben Sie die Servervariable HTTP_X_FORWARDED_PROTO. Hinter dieser Vorlage melden sich Anwender mit einem Schlüssel oder einer SQL-Anmeldung an, nicht mit dem Windows-Konto: IIS leitet Anfragen verschiedener Anwender über gemeinsame Verbindungen weiter, und eine Windows-Anmeldung gilt für die Verbindung. Siehe So betreiben Sie den Dienst hinter IIS oder einem Proxy.
  • Let's Encrypt braucht einen öffentlichen Namen; für einen Dienst nur im Firmennetz eignet sich der Nachweis über DNS. win-acme fragt die Zustimmung zu den Bedingungen, eine E-Mail-Adresse und den Zugang zur DNS-Schnittstelle selbst ab, speichert ihn geschützt und erneuert das Zertifikat rechtzeitig über eine eigene geplante Aufgabe. Der Dienst nimmt ein neues Zertifikat ohne Neustart. Erneuert der Rechner schon mit einem anderen win-acme (etwa für Websites in IIS), bestellt und erneuert dieses auch das Zertifikat des Datendienstes, und seine Aufgabe bleibt, wie sie ist. Es braucht dafür mindestens Version 2.2.9; ist es älter, bricht die Bestellung mit der gefundenen Version ab und ändert nichts. Welches win-acme bestellt, zeigt das Fenster der Bestellung.
  • Was beim Entfernen bleibt: Zertifikate im Speicher, die Post-Quanten-Einstellung von Windows und die Einstellungen von win-acme (%ProgramData%\win-acme). Die geplante Aufgabe von win-acme entfernt das Programm nur, wenn sie das mitgebrachte win-acme startet; die Aufgabe eines anderen win-acme bleibt.
  • Protokoll. Die letzte Seite verlinkt das Protokoll der Installation; jeder Lauf schreibt es nach %TEMP%\Wkl_Datendienst_*.log. Es enthält weder den Hauptschlüssel noch einen persönlichen Schlüssel.

Verwandte Themen

de/wiki/data-conectivity/database-gateway/operations/installation.txt · Zuletzt geändert: von Wolfgang van der Stille