Skip to main content

Vue d’ensemble du processus d’authentification

Le JSON Web Token (JWT) est un format de transfert de données sécurisé entre le serveur d’applications d’ABBYY FlexiCapture 12 et des services tiers. Lors d’une authentification via JWT, aucune donnée d’identification n’est envoyée au serveur d’applications. L’authentification s’effectue sur un service tiers, après quoi le serveur d’applications est informé que l’utilisateur a été authentifié par un service de confiance.

Implémentation

Récupérer les données JSON

Les données JSON se présentent comme suit.
Les données JSON contenant les certificats d’utilisateur sont encodées en Base64 pour créer un JSON Web Token (JWT). L’exemple suivant crée un jeton JWT :

Envoyer un JWT au serveur d’applications

Envoyez le JWT au serveur d’applications dans une requête POST à l’adresse https://<ApplicationServer>/Flexicapture12/Server/jwt. Pour un tenant, ajoutez l’identifiant du tenant à l’URL, par exemple https://<ApplicationServer>/Flexicapture12/Server/jwt?Tenant=MyTenantName.
L’authentification nécessite qu’un utilisateur correspondant soit enregistré sur le serveur d’applications. Son login doit correspondre à l’identifiant figurant dans le JWT, contenu dans la valeur du nœud nameid. Le serveur d’applications renvoie une réponse de ce type :
La valeur du champ ticket est le ticket ABBYY FlexiCapture 12 authentifié. Vous pouvez utiliser ce ticket pour appeler toutes les interfaces du serveur d’applications qui nécessitent une authentification. Les services doivent être accessibles à l’aide de l’authentification ABBYY FlexiCapture, c’est-à-dire via des adresses commençant par https://<ApplicationServer>/flexicapture12/Server/FCAuth/ ou https://<ApplicationServer>/flexicapture12/Server/MobileApp/.

Utilisation d’un ticket ABBYY FlexiCapture 12 authentifié

Transmettez au serveur un ticket ABBYY FlexiCapture 12 authentifié à l’aide de l’en-tête Authorization: Bearer. Un fichier de cookie nommé FlexiCaptureTmpPrn fonctionne également, mais est pris en charge uniquement pour des raisons de compatibilité descendante. Par exemple :

Configurer un certificat de confiance sur le serveur d’applications

Le serveur d’applications vérifie les données reçues du fournisseur d’identité. Pour que le serveur d’applications fasse confiance à ces données, signez-les à l’aide d’un certificat personnalisé. L’autorité émettrice doit figurer dans la base de données des autorités de confiance du serveur d’applications. Importez le certificat dans la base de données ABBYY FlexiCapture. Le serveur d’applications vérifie ensuite les données par rapport à ce certificat. Pour plus d’informations, consultez Configurer l’authentification unique. Si la vérification échoue, le serveur d’applications utilise le paramètre AllowMixedModeCertificateValidation sous <appSettings> dans le fichier Web.config. Lorsque ce paramètre est défini sur true, la vérification utilise le certificat du dossier Autorités de certification racines de confiance. Ce dossier se trouve dans le magasin de certificats de l’ordinateur local de l’ordinateur sur lequel s’exécute le serveur d’applications. Si la base de données ne contient aucun certificat, la vérification se rabat sur le certificat du dossier Autorités de certification racines de confiance. Le paramètre AllowMixedModeCertificateValidation est alors ignoré. Un exemple de projet et les fichiers associés sont disponibles dans JWT_Example.zip.