Skip to main content

Überblick über den Authentifizierungsprozess

JSON Web Token (JWT) ist ein Format für die sichere Übertragung von Daten zwischen dem ABBYY FlexiCapture 12 Application Server und Diensten von Drittanbietern. Bei der Authentifizierung über JWT werden keine Identifikationsdaten an den Application Server übermittelt. Die Authentifizierung erfolgt über einen Drittanbieterdienst, woraufhin der Application Server darüber informiert wird, dass der Benutzer von einem vertrauenswürdigen Dienst authentifiziert wurde.

Implementierung

JSON-Daten abrufen

Die JSON-Daten sehen wie folgt aus.
JSON-Daten mit Benutzerzertifikaten werden Base64-kodiert, um ein JSON Web Token (JWT) zu erstellen. Das folgende Beispiel erstellt ein JWT-Token:

Senden Sie ein JWT an den Application Server

Senden Sie das JWT in einer POST-Anfrage an https://<ApplicationServer>/Flexicapture12/Server/jwt. Fügen Sie für einen tenant die Mandantenkennung zur URL hinzu, zum Beispiel https://<ApplicationServer>/Flexicapture12/Server/jwt?Tenant=MyTenantName.
Für die Authentifizierung muss auf dem Application Server ein passender Benutzer registriert sein. Sein Login muss mit dem Bezeichner im JWT übereinstimmen, der im Knotenwert nameid enthalten ist. Der Application Server gibt eine Antwort wie folgt zurück:
Der Wert im Feld ticket ist das authentifizierte ABBYY FlexiCapture 12-Ticket. Sie können dieses Ticket verwenden, um Aufrufe an alle Schnittstellen des Application Server auszuführen, die eine Authentifizierung erfordern. Auf Services sollte über die ABBYY FlexiCapture-Authentifizierung zugegriffen werden, also über Adressen, die mit https://<ApplicationServer>/flexicapture12/Server/FCAuth/ oder https://<ApplicationServer>/flexicapture12/Server/MobileApp/ beginnen.

Verwenden Sie ein authentifiziertes ABBYY FlexiCapture 12-Ticket

Senden Sie ein authentifiziertes ABBYY FlexiCapture 12-Ticket mit einem Authorization: Bearer-Header an den Server. Eine Cookie-Datei namens FlexiCaptureTmpPrn funktioniert ebenfalls, wird jedoch nur aus Gründen der Abwärtskompatibilität unterstützt. Zum Beispiel:

Ein vertrauenswürdiges Zertifikat auf dem Application Server einrichten

Der Application Server überprüft die vom Identitätsanbieter empfangenen Daten. Damit der Application Server diesen Daten vertraut, müssen sie mit einem benutzerdefinierten Zertifikat signiert werden. Die ausstellende Zertifizierungsstelle muss in der Datenbank vertrauenswürdiger Zertifizierungsstellen des Application Server aufgeführt sein. Importieren Sie das Zertifikat in die ABBYY FlexiCapture-Datenbank. Der Application Server überprüft die Daten anschließend anhand dieses Zertifikats. Weitere Informationen finden Sie unter Single Sign-On einrichten. Wenn die Überprüfung fehlschlägt, greift der Application Server auf den Parameter AllowMixedModeCertificateValidation unter <appSettings> in der Datei Web.config zurück. Wenn dieser Parameter auf true gesetzt ist, wird für die Überprüfung das Zertifikat im Ordner Vertrauenswürdige Stammzertifizierungsstellen verwendet. Dieser Ordner befindet sich im Zertifikatspeicher „Lokaler Computer“ auf dem Computer, auf dem der Application Server ausgeführt wird. Wenn die Datenbank keine Zertifikate enthält, wird für die Überprüfung stattdessen das Zertifikat im Ordner Vertrauenswürdige Stammzertifizierungsstellen verwendet. Der Parameter AllowMixedModeCertificateValidation wird dann ignoriert. Ein Beispielprojekt und die zugehörigen Materialien sind als JWT_Example.zip verfügbar.