Wichtig
Übersetzen ist eine Gemeinschaftsarbeit :ref:`Sie können mitmachen <translation_guidelines>. Diese Seite befindet sich derzeit im |Übersetzungsfortschritt|.
25.2. Benutzerauthentifizierung Workflows
25.2.1. HTTP(S) Authentifikation
Eine der häufigsten Verbindungen findet mittels HTTP (S) statt, z.B. bei WebGIS Servern und die Authentifizierungsmethoden werden oft für diese Art von Verbindungen genutzt. Die Methoden haben Zugriff auf das HTTP-Request Objekt und können sowohl den Request als auch seinen Header manipulieren. Dies ermöglicht viele Formen von Internet-basierten Authentifizierungen. Wenn über HTTP(S) mit der Standard Benutzername-/Passwort-Authentifizierungsmethode verwendet wird, wird bei der Verbindung eine HTTP-Basisauthentifizierung versucht.
25.2.2. Datenbank Authentifikation
Verbindungen zu Datenbankressourcen werden in der Regel als Schlüssel=Wert
-Paare gespeichert, wodurch Benutzernamen und (optional) Passwörter offengelegt werden, wenn keine Authentifizierungs-Konfiguration genutzt wird. Bei einer Konfiguration mit dem Authentifizierungssystem wird das Schlüssel=Wert
-Paar als abstrahierte Darstellung der Anmeldeinformationen angezeigt, z. B. authfg=81t21b9
.
25.2.3. PKI Authentifikation
Wenn PKI-Komponenten innerhalb des Authentifikationssystems konfiguriert werden, haben Sie die Möglichkeit, Komponenten in die Datenbank zu importieren oder Dateien, die auf Ihrem System gespeichert sind, zu referenzieren. Letzteres kann nützlich sein, wenn solche Komponenten sich häufig verändern oder wenn die Dateien durch einen Systemadministrator verschoben werden. In beiden Fällen müssen Sie ein beliebiges Passwort speichern um Zugang zu privaten Schlüsseln innerhalb der Datenbank zu haben.
Alle PKI-Komponenten können in separaten Editoren innerhalb der Zertifikatsverwaltung verwaltet werden. Auf diesen können Sie im QGIS Optionen-Dialog (Authentifizierung-Tab durch Klicken auf die Schaltfläche Zertifikate verwalten gelangen.
) über denIn der Zertifikatsverwaltung gibt es Editoren für Identitäten, Server und Autoritäten. Jeder hat eine eigene Registerkarte. Sie werden im Folgenden in der Reihenfolge beschrieben, in der sie im Workflow-Diagramm oben auftreten. Die Registerkarten-Reihenfolge bezieht sich auf die Häufigkeit, mit der auf die Editoren zugegriffen wird, sobald Sie an den Workflow gewöhnt sind.
Bemerkung
Da alle Änderungen im Authentifizierungssystem sofort in die Authentifizierungsdatenbank geschrieben werden, ist es nicht erforderlich, auf die Schaltfläche OK im Dialogfeld Optionen zu klicken, um die Änderungen zu speichern - anders als bei anderen Einstellungen im Dialogfeld Optionen.
25.2.3.2. Identitäten
Sie können verfügbare Client-Identitäts-Bündel über den Reiter Identitäten des Zertifikat Manager im Reiter Authentifizierung im Dialog QGIS Optionen. Eine Identität authentifiziert Sie gegen einen PKI-fähigen Dienst und besteht in der Regel aus einem Client-Zertifikat und einen privaten Schlüssel, entweder als separate Dateien oder kombiniert in einer einzigen „gebündelten“ Datei. Das Bündel oder private Schlüssel sind oft Passphrase geschützt.
Sobald Sie alle Zertifizierungsautoritäten (ZA) importiert haben, können Sie optional alle Identitätsbündel in die Authentifizierungsdatenbank importieren. Wenn Sie die Identitäten nicht speichern möchten, können Sie ihre Komponentendateisystempfade innerhalb einer einzelnen Authentifizierungskonfiguration referenzieren.
Wenn ein Identitäts-Bündel importieren, können diese Passwort-geschützt oder ungeschützt sein und ZA-Zertifikate enthalten, die eine Vertrauenskette bilden. Vertrauenskette Zertifizierungen werden nicht an dieser Stelle importiert; sie können separat unter dem Reiter guilabel:Authoritäten hinzugefügt werden.
Beim Import wird das Zertifikats und der Private Key eines Bündels in der Datenbank gespeichert, wobei der Speicher des Schlüssels über das QGIS-Master-Passwort verschlüsselt ist. Die anschließende Verwendung des gespeicherten Bündels aus der Datenbank erfordert dann nur Eingabe des QGIS-Master-Passworts.
Persönliche Identitäts-Bündel bestehend aus PEM/DER (.pem / .der) und PKCS#12 (.p12/.pfx) Komponenten werden unterstützt. Wenn ein Schlüssel oder ein Bündel passwortgeschützt ist, wird das Passwort benötigt, um die Komponente zu validieren, bevor sie importiert wird. Wenn das Client-Zertifikat in dem Bündel ungültig ist (zum Beispiel ist das Datum des Inkrafttretens noch nicht gestartet oder abgelaufen), kann das Bündel nicht importiert werden.
25.2.4. Defekte Layer behandeln
Gelegentlich kommt es vor, dass die ID der Authentifizierungs-Konfiguration, die mit einer Projektdatei gespeichert wird, nicht mehr gültig ist, möglicherweise, weil die aktuelle Authentifizierungsdatenbank sich geändert hat, seitdem das Projekt zuletzt gespeichert wurde, oder aufgrund einer fehlenden Übereinstimmung der Anmeldeinformationen. In solchen Fällen öffnet sich der Dialog Defekte Layer behandeln beim Starten von QGIS.
Wenn eine Datenquelle eine ihr zugewiesene Authentifizierungs Konfigurations-ID besitzt, können Sie diese bearbeiten. Dadurch wird der Pfad der Datenquelle automatisch geändert, so wie es beim Öffnen der Projektdatei mit einem Texteditor und dem bearbeiten von Zeichenfolgen passiert.
25.2.5. Kennung der Authentifikationskonfiguration ändern
Gelegentlich müssen Sie die Authentifizierungskonfigurations-ID ändern, die mit dem Zugriff auf eine Ressource verknüpft ist. Es gibt Fälle, in denen dies nützlich ist:
Konfigurations-ID der Ressourcenauthentifizierung ist nicht mehr gültig: This can occur when you have switched auth databases add need to align a new configuration to the ID already associated with a resource. Die : Dies kann auftreten, wenn Sie Auth-Datenbanken ausgetauscht haben, sodass eine neue Konfiguration an eine ID angepasst werden muss, die bereits mit einer Ressource verknüpft ist.
Freigegebene Projektdateien: Wenn Sie Projekte zwischen Benutzern freigeben wollen, z.B. über einen gemeinsam genutzten Dateiserver, können Sie eine 7-stelliges ID (mit a-z und/oder 0-9) vordefinieren, die mit der Ressource verknüpft ist. Einzelne Benutzer ändern dann die ID der Authentifizierungskonfiguration gemäß ihrer Anmeldeinformationen für die Ressource. Beim Öffnen des Projekts wird die ID in der Authentifizierungsdatenbank gefunden, aber die Anmeldeinformationen sind je nach Benutzer unterschiedlich.
Warnung
Das Ändern der Auth-Config-ID ist eine fortgeschrittene Operation und sollte nur in Betracht gezogen werden, wenn es völlig bekannt ist, ob dies notwendig ist. Deswegen gibt es eine Sperr-Taste, die geklickt werden muss, um das ID-Text-Feld vor der Bearbeitung zu entsperren.
25.2.6. QGIS-Server-Unterstützung:
Wenn eine Projektdatei mit Layern genutzt wird, die eine Authentifizierung benötigen und die als Hintergrundkarte vom QGIS-Server verwendet werden soll, gibt es in QGIS ein paar zusätzliche Einrichtungs-Schritte zu beachten, um die Ressource zu laden:
Authentifizierungsdatenbank muss verfügbar sein
Das Authentifizierungsdatenbank-Master-Passwort muss verfügbar sein
Bei der Instanzierung des Authentifizierungssystems erstellt oder verwendet der Server eine qgis-auth.db
-Datei im aktiven Benutzerprofil <user_profiles>, oder das Verzeichnis, das durch die ``QGIS_AUTH_DB_DIR_PATH`-Umgebungsvariable definiert ist. Es kann sein, dass der Benutzer des Servers kein HOME-Verzeichnis hat, in diesem Fall verwenden Sie die Umgebungsvariable, um ein Verzeichnis zu definieren, auf das der Benutzer des Servers Lese-/Schreibberechtigungen besitzt und das sich nicht innerhalb der über das Internet zugänglichen Verzeichnisse befindet.
Um das Master-Passwort an den Server zu übergeben, schreiben sie dieses in die erste Zeile einer Datei im Pfad des Dateisystems, die durch den Server-Prozess-Benutzer lesbar ist und durch die QGIS_AUTH_PASSWORD_FILE
Umgebungsvariable definiert ist. Stellen Sie sicher, dass die Datei als nur lesbar für den Server-Prozess-Benutzer gekennzeichnet ist und nicht in einem über das Web zugänglichen Verzeichnis liegt.
Bemerkung
QGIS_AUTH_PASSWORD_FILE
variable will be removed from the Server
environment immediately after accessing.
25.2.7. SSL-Serverausnahmen
Sie können SSL-Server-Konfigurationen und -Ausnahmen über den Server-Tab im Abschnitt Authentifizierung unter Optionen verwalten.
Manchmal, wenn sie sich mit einem SSL-Server verbinden, gibt es Fehler beim SSL-„Handshake“ oder mit dem Zertifikat des Servers. Sie können diese Fehler ignorieren oder eine SSL-Server-Konfiguration als Ausnahme erstellen. Dies ist ähnlich wie bei Web-Browsern, wo Sie SSL-Fehler außer Kraft setzen können, aber mit einer besseren Kontrolle.
Warnung
Sie sollten keine SSL-Server-Konfiguration erstellen, wenn Sie keine umfassenden Kenntnisse des gesamten SSL-Setups zwischen dem Server und dem Client besitzen. Stattdessen wenden Sie sich besser an den Server-Administrator.
Bemerkung
Einige PKI-Setups verwenden eine völlig andere ZA-Vertrauenskette, um Client-Identitäten zu validieren als die Kette bei der Validierung eines SSL-Server-Zertifikats. Unter solchen Umständen behebt die Erstellung einer neuen Konfiguration für den Verbindungsserver nicht unbedingt Ihr Client-Identitäts-Problem. In diesem Fall kann nur der Identitäts-Verwalter oder Serveradministrator das Problem lösen.
Sie können eine SSL-Serverkonfiguration vorkonfigurieren, indem Sie auf die -Schaltfläche klicken. Alternativ können Sie eine Konfiguration hinzufügen, wenn ein SSL-Fehler während einer Verbindung auftritt und SSL-Fehler-Dialogfeld angezeigt wird (wobei der Fehler vorübergehend ignoriert oder in der Datenbank gespeichert und ignoriert werden kann):
Sobald eine SSL-Konfiguration in der Datenbank gespeichert wird, kann sie bearbeitet oder gelöscht werden.
Wenn Sie eine SSL-Konfiguration vorkonfigurieren möchten und der Importdialog für Ihre Server-Verbindung nicht angezeigt wird, können Sie manuell eine Verbindung über die Python-Konsole aufrufen, indem Sie den folgenden Code ausführen (ersetzen Sie ``https://bugreports.qt-project.org` durch die URL Ihres Servers):
from qgis.PyQt.QtNetwork import QNetworkRequest
from qgis.PyQt.QtCore import QUrl
from qgis.core import QgsNetworkAccessManager
req = QNetworkRequest(QUrl('https://bugreports.qt-project.org'))
reply = QgsNetworkAccessManager.instance().get(req)
Dies wird ein SSL-Fehler-Dialogfeld öffnen, wenn Fehler auftreten und wo Sie die Konfiguration in die Datenbank speichern können.