Barvna shema: Riviera
Trenutno dejavna stran: start » de » Dokumentation » Datenintegration und Datenzugriff » WKL Database Gateway » Anleitungen » So richten Sie die Anmeldung mit einer SQL-Anmeldung ein

So richten Sie die Anmeldung mit einer SQL-Anmeldung ein

Wer SQL Server bisher mit Name und Kennwort erreicht, meldet sich mit derselben Anmeldung am Dienst an. SQL Server prüft das Kennwort selbst, und die Anweisungen laufen unter dieser Anmeldung – Rechte, Spaltenvorgaben und Trigger sehen sie wie bei einer direkten Verbindung.

Lösungsübersicht

Drei Dinge gehören zusammen: das Verfahren in der Konfigurationsdatei (AuthMode mit SqlLogin), der Schalter an der Datenquelle (SQL-Anmeldungen bzw. AllowSqlLogins) und eine Zuordnung von Anmeldungen zu Regeln. Die Reihenfolge hängt davon ab, wo Datenquellen und Zuordnungen stehen:

  • Mit Verwaltungsspeicher zuerst das Verfahren und ein Neustart, danach Schalter und Zuordnung in der Verwaltung. Die Verwaltung nimmt beides erst an, wenn das Verfahren eingeschaltet ist.
  • Ohne Verwaltungsspeicher alle drei Angaben in der Konfigurationsdatei, danach ein Neustart. Fehlt eine davon, startet der Dienst nicht.

Regeln und Antworten: Anmeldung: SQL-Anmeldung.

Umsetzung

  1. Ergänzen Sie in der Konfigurationsdatei SqlLogin in AuthMode, und behalten Sie die Verfahren, die dort schon stehen. Beispiel mit Verwaltungsspeicher:

    "Security": { "AuthMode": "ApiKey, PersonalKey, SqlLogin" }

    Ohne Verwaltungsspeicher gibt es keine persönlichen Schlüssel; mit PersonalKey startet der Dienst dann nicht. Dort lautet das Beispiel "ApiKey, SqlLogin".

    • Mit Verwaltungsspeicher: Starten Sie den Dienst jetzt neu. Er startet und meldet im Protokoll, dass die SQL-Anmeldung noch nicht nutzbar ist. Bis Schritt 2 erledigt ist, endet eine Anmeldung mit Name und Kennwort mit 401, ohne dass der Dienst SQL Server fragt. Zwischen Schritt 2 und 3 prüft SQL Server das Kennwort, die Anfrage wird aber abgewiesen, weil der Anmeldung noch keine Regel zugeordnet ist.
    • Ohne Verwaltungsspeicher: Starten Sie noch nicht neu; die Schritte 2 und 3 gehören in dieselbe Datei.
  2. Schalten Sie die Datenquelle frei.
    • Mit Verwaltungsspeicher: Datenquellen, Datenquelle markieren, in der Maske SQL-Anmeldungen aktivieren, zurück in die Liste wechseln. Die Änderung wirkt sofort.
    • Ohne Verwaltungsspeicher: "AllowSqlLogins": true am Eintrag der Datenquelle.
  3. Ordnen Sie Anmeldungen Regeln zu (* steht für jede Anmeldung). Jede genannte Regel muss es bereits geben.
    • Mit Verwaltungsspeicher: Zuordnungen, Register SQL-Anmeldungen; siehe „So ordnen Sie SQL-Anmeldungen zu“ (Dokumentation der Verwaltungsanwendung). Die Zuordnung wirkt sofort, ein Neustart ist nicht nötig.
    • Ohne Verwaltungsspeicher: Tragen Sie die Zuordnungen unter Security ein, und starten Sie den Dienst neu. Client nennt die Id einer Regel unter Security:Clients; fehlt sie, startet der Dienst nicht:

      "Security": {
        "SqlLogins": [
          { "Login": "*",       "Client": "fachdaten-lesen"  },
          { "Login": "pflege1", "Client": "fachdaten-pflege" }
        ]
      }
  4. Verbinden Sie den Client mit Name und Kennwort – der ODBC-Treiber mit UID und PWD – über https oder vom Rechner des Dienstes.
  5. Prüfen Sie: Ein Lesezugriff mit Name und Kennwort antwortet 200, ein falsches Kennwort 401. Ist für die Anmeldung die Durchreiche freigegeben, liefert eine eigene Anweisung SELECT SUSER_SNAME() den Namen der Anmeldung. Fehlversuche begrenzt der Dienst: höchstens 5 je Anmeldung und Alias und 20 je Herkunft in einer Minute, danach 429, auch mit richtigem Kennwort – beim Ausprobieren also eine Minute warten.

Hinweise

  • Nur über eine geschützte Verbindung: HTTPS, ein vertrauter Proxy mit X-Forwarded-Proto: https oder eine Anfrage vom eigenen Rechner. Sonst antwortet der Dienst 403, ohne das Kennwort zu versuchen; siehe Fehlerbehebung.
  • SQL Server braucht die gemischte Authentifizierung. Ein abgelaufenes Kennwort ergibt 401; ändern lässt es sich über den Dienst nicht.
  • Jede Anmeldung führt einen eigenen Verbindungspool; viele gleichzeitig angemeldete Personen belegen entsprechend viele Verbindungen.
  • Eine Sammelanmeldung, die sich Personen mit einem geteilten Kennwort teilen, ist nicht empfohlen – dafür gibt es „So richten Sie Datenbank-Identitäten ein“ (Dokumentation der Verwaltungsanwendung).

Verwandte Themen

de/wiki/data-conectivity/database-gateway/how-to/set-up-sql-login.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille