Authentifizierungssystem Übersicht

Figure Authentication System 1

../../../_images/auth-system-overview.png

Anatomie des Authentifizierungssystems

Authentifikationsdatenbank

Das neue Authentifizierungssystem speichert Authentifizierungskonfigurationen in einer SQLite-Datenbank, die sich standardmäßig hier befindet:

<user home>\.qgis2\qgis-auth.db

Diese Authentifizierungsdatenbank kann ohne Auswirkung auf andere aktuelle QGIS Benutzereinstellungen zwischen QGIS Installationen bewegt werden, da sie völlig unabhängig von normalen QGIS-Einstellungen ist. Eine Konfigurations-ID (eine zufällige 7-stellige alphanumerische Zeichenfolge) wird erzeugt, wenn eine Konfiguration zu der Datenbank gespeichert wird. Dies stellt die Konfiguration dar, wodurch die ID im Klartext als Anwendungskomponenten gespeichert wird (z. B. Projekt-, Plugin- oder Einstellungsdateien) ohne Offenlegung ihrer zugehörigen Anmeldeinformationen.

Bemerkung

Das übergeordnete Verzeichnis des qgis-auth.db`kann mit der folgenden Umgebungsvariablen gesetzt werden, ``QGIS_AUTH_DB_DIR_PATH`, oder mit der --authdbdirectory Option während des Starts auf der Kommandozeile.

Hauptpasswort

Um sensible Informationen zu speichern oder auf diese zuzugreifen, muss der Benutzer ein Hauptpasswort festlegen. Ein neues Hauptpasswort wird angefordert und überprüft, wenn erstmals Daten verschlüsselt in der Datenbank gespeichert werden. Der Benutzer wird nur dann nach dem Hauptpasswort gefragt, wenn auf sensible Informationen zugegriffen wird. Dies wird dann für den Rest der Sitzung (bis die Anwendung verlassen wird) zwischengespeichert, es sei denn, der Benutzer wählt eine Aktion aus, seine zwischengespeicherten Werte zu löschen. Einige Fälle bei der Benutzung des Authentifizierungssystems benötigen keine Eingabe des Hauptpassworts , so wie die Auswahl der existierenden Authentifizierungseinstellungen oder eine Konfiguration einer Serverkonfiguration Anwendung (wie beim Hinzufügen eines WMS-Layers).

Figure Master password 1

../../../_images/auth-password-new_enter.png

Neues Hauptpasswort eingeben

Bemerkung

Ein Pfad zu einer Datei, die das Hauptpasswort beinhalet, kann mit Hilfe der Umgebungsvariablen eingestellt werden QGIS_AUTH_PASSWORD_FILE.

Hauptpasswort verwalten

Einmal eingestellt, kann das Hauptpasswort zurückgesetzt werden, das aktuelle Hauptpasswort wird vor dem Zurücksetzen jedoch benötigt werden. Während dieses Prozesses ist es eine Option, eine vollständige Sicherung der aktuellen Datenbank vorzunehmen.

Figure Master password 2

../../../_images/auth-password-reset.png

Hauptpasswort zurücksetzen

Wenn der Benutzer das Hauptpasswort vergisst, gibt es keine Möglichkeit es abzurufen oder außer Kraft setzen. Es gibt auch keine Mittel die verschlüsselten Informationen abzurufen ohne das Master-Passwort zu kennen.

Wenn ein Benutzer das bestehende Password drei Mal falsch eingibt, wird ein Dialog Ihnen anbieten, die Datenbank zu löschen.

Figure Master password 3

../../../_images/auth-password-invalid-3times.png

Passwortabfrage nach drei ungültigen Versuchen

Authentifikationskonfiguration

Sie können Authentifizierungseinstellungen über Konfigurationen in dem Authentifizierung Reiter des QGIS Optionen Dialog (Einstellungen‣ Optionen) vornehmen.

Figure Configuration editor 1

../../../_images/auth-editor-configs2.png

Konfigurationen Editor

Nutzen Sie den signPlus Knopf, um neue Konfigurationen hinzuzufügen, den signMinus Knopf um Sie zu entfernen und den symbologyEdit Knopf um bestehende zu bearbeiten.

Figure Configuration editor 2

../../../_images/auth-config-create_authcfg-id.png

Konfigurationen von innerhalb des Konfigurationseditors hinzufügen

Die selben Arten von Tätigkeiten für Authentifikationskonfigurationen (Hinzufügen, Bearbeiten und Entfernen) können auch bei der Konfiguration einer Service-Verbindung, wie der Konfiguration einer OWS-Service-Verbindung, getätigt werden. Dafür gibt es Aktionsschaltflächen innerhalb der Konfigurationsauswahl für die vollständige Verwaltungskonfigurationen die man innerhalb der Authentifikationsdatenbank findet. In diesem Fall ist es nicht erforderlich in den Konfigurationen im Authentifikation Reiter zu wechseln, es sei denn Sie müssen weitere umfassende Konfigurationen vornehmen.

Figure Configuration editor 3

../../../_images/auth-selector-wms-connection.png

Der WMS-Verbindungsdialog zeigt den [Hinzufügen], [Bearbeiten], und [Entfernen] Authentifikationskonfiguration-Knopf.

Beim erstellen oder bearbeiten einer Authentifikationskonfiguration, ist ein Name, eine Authentifizierungsmethode oder eine andere Information, die die Authentifizierungsmethode benötigt, erforderlich (mehr über die verfügbaren Authentifikationstypen in Authentifizierungsmethoden).

Authentifizierungsmethoden

Verfügbare Authentifizierungen werden von QGIS über C++ Plugins in der gleichen Art und Weise bereitgestellt wie Daten-Provider-Plugins. Das Verfahren zur Authentifizierung kann relativ zum benötigten Zugriff auf die Ressource ausgewählt werden, z.B. HTTP (S) oder Datenbank, und ob es sowohl von QGIS und dem Plugin unterstützt wird. Als solche können einige Authentifizierungsmethoden nicht überall anwendbar sein, auch wenn diese in der Authentifizierungskonfigurationsauswahl angezeigt werden. Eine Liste der verfügbaren Authentifizierungsmethode und deren kompatible Ressource/Provider können eingesehen werden unter:Einstellungen – > Optionen und, in dem Authentifikation Reiter, drücken Sie den options Installierte Erweiterungen Knopf.

Figure Authentication methods 1

../../../_images/auth-method-listing.png

Verfügbare Liste von Methodenerweiterungen

Für neue Authentifikationsmethoden können Plugins erstellt werden, die QGIS nicht benötigen um neu kompiliert zu werden. Seitdem die Unterstützung für Erweiterung nur für C++ laufend (seit QGIS 2.12) ist, muss QGIS neu gestartet werden, um dem Benutzer neue Erweiterungen verfügbar zu machen. Stellen Sie sicher, dass Ihre Erweiterung

Figure Authentication methods 2

../../../_images/auth-config-create_basic-auth.png

Einfache HTTP Authentifikationskonfiguration

Figure Authentication methods 3

../../../_images/auth-config-create_pem-der-paths.png

PKI Pfad-Authentifikationskonfiguration

Figure Authentication methods 4

../../../_images/auth-config-create_pkcs12-paths.png

PKI PKCS#12 Dateipfad Authentifikationskonfiguration

Figure Authentication methods 5

../../../_images/auth-config-create_stored-identity2.png

Gespeicherte Identität Authentifikationskonfigurationen

Bemerkung

Die URL-Ressource ist derzeit eine nicht ausführbare Funktion, die eine bestimmte Konfiguration automatisch wählt, wenn sie sich mit einer Ressource und gegebenen URL verbindet.

Hauptpasswort und Auth Konfig Hilfsmittel

Unter dem Optionen-Menü (Einstellungen ‣ Optionen) in der Authentifikation Registerkarte gibt es verschiedene Werkzeuge die Authentifikationsdatenbank und -konfigurationen zu verwalten:

Figure configuration utilities 1

../../../_images/auth-editor-configs_utilities-menu.png

Werkzeug-Menü

  • Eingabe Hauptpasswort Öffnet den Hauptpasswort Dialog, unabhängig von irgendwelchen ausführenden auth db Befehlen. Leert zwischengespeichertes Hauptpasswort—führt zum Löschen des Hauptpassworts, wenn es über den Eingabedialog festgelegt wurde. Hauptpasswort zurücksetzen—Öffnet einen Dialog, um das Hauptpasswort zu ändern (das aktuelle Passwort muss bekannt sein) und optional ein Backup der aktuellen Datenbank zu erstellen.

  • Leert zwischengespeicherte Authentifikationskonfigurationen — Leert den internen Verweise-Speicher für Konfigurationen um Netzwerk-Verbindungen zu beschleunigen. Leert nicht den QGIS core network access manager Speicher, der einen Neustart von QGIS benötigt.

  • Hauptpasswort zurücksetzen - Ersetzt das aktuelle Hauptpasswort für ein neues. Das aktuelle Hauptpassword wird zum zurücksetzen benötigt und eine Sicherung der Datenbank kann vorgenommen werden.

  • Entferne alle Authentifikationskonfigurationen —Löscht die Datenbank aller Konfigurationsdatensätze, ohne andere gespeicherte Aufzeichnungen zu entfernen.

  • Lösche Authentifikationsdatenbank — Plant eine Sicherung der aktuellen Datenbank und baut eine komplett neue Datenbankstruktur auf. Diese Aktion wird für eine spätere Zeit geplant, um sicherzugehen, dass es keine Unterbrechungen beim Laden des Projekts oder andere Fehler gibt, weil temporär eine Datenbank fehlt.

    Figure configuration utilities 2

    ../../../_images/auth-db-erase.png

    Menü DB Löschverifizierung

Gebrauche Authentifikationskonfiguration

Typischerweise wird eine Authentifizierungskonfiguration in einem Konfigurationsdialog für ein Netzwerk-Dienste (wie WMS) ausgewählt. Allerdings kann das Auswahl-Widget überall, wo Authentifizierung benötigt wird, eingebettet werden oder in einer Nicht-Kernfunktionalität, wie in Dritt-Beteiligten PyQGIS oder C ++ Plugins.

Wenn die Auswahl Keine Authentifizierung im Pop-up-Menü anzeigt, wenn nichts ausgewählt ist, wenn es keine Konfigurationen zur Auswahl gibt oder wenn eine zuvor zugewiesene Konfiguration nicht mehr in der Datenbank gefunden wurde. Die Typ und ID Felder sind schreibgeschützt und stellen eine Beschreibung der Authentifizierungsmethode zur Verfügung und der entsprechenden ID der Config.

Figure Authentication configurations 1

../../../_images/auth-selector-no-authentication.png

Auth Konfig Auswahl ohne Authentifikation

Figure Authentication configurations 2

../../../_images/auth-selector-pkcs12-authentication.png

Auth Konfig Auswahl mit gewählter Konfig

Python-Bindung

Alle Klassen und öffentlichen Funktionen haben sip Bindungen, außer QgsAuthCrypto, da das Management des Master-Passwort-Hashing und die Auth-Datenbank-Verschlüsselung von der Hauptanwendung und nicht über Python behandelt werden sollte. Siehe :ref:authentication_security_considerations` über Python-Zugang.