Passer au contenu principal
Vous pouvez connecter le serveur d’applications ABBYY FlexiCapture à un partage de fichiers dans Microsoft Azure.
Cet article suppose qu’un compte de stockage a déjà été créé dans Microsoft Azure Files et qu’il est disponible pour ABBYY FlexiCapture.
  1. Dans le portail Azure, accédez à votre compte de stockage (abbyystorage dans cet exemple) et cliquez sur Files dans le volet du compte de stockage.
Capture d’écran du portail Microsoft Azure montrant le volet du compte de stockage abbyystorage avec le service Files mis en évidence.
  1. Créez un nouveau partage de fichiers dans votre compte de stockage en spécifiant son nom (fcstorage dans cet exemple) et, si nécessaire, un quota d’espace.
Capture d’écran du portail Microsoft Azure où un nouveau partage de fichiers nommé fcstorage est en cours de création avec un nom et un quota spécifiés.
  1. Ouvrez le partage de fichiers créé et cliquez sur Connect.
Capture d’écran du portail Microsoft Azure montrant le partage de fichiers créé ouvert avec l’option Connect sélectionnée.
  1. Copiez la commande cmdkey dans le Clipboard.
Capture d’écran du volet Connect du portail Microsoft Azure montrant la commande cmdkey en cours de copie dans le Clipboard.
  1. Connectez-vous à la machine virtuelle hébergeant le serveur d’applications FlexiCapture en tant qu’utilisateur système disposant des autorisations nécessaires pour accéder aux services FlexiCapture (fcuser dans cet exemple), ouvrez l’invite de commande, puis collez et exécutez la commande cmdkey depuis le Clipboard. Cela ajoutera les identifiants du partage de fichiers au Gestionnaire d’identifiants Windows.
Capture d’écran de l’invite de commande Windows où la commande cmdkey est collée et exécutée pour ajouter les identifiants du partage de fichiers au Gestionnaire d’identifiants Windows.
  1. Ouvrez l’Explorateur Windows et assurez-vous que l’utilisateur peut accéder au partage de fichiers.
Capture d’écran de l’Explorateur Windows confirmant que l’utilisateur peut accéder au partage de fichiers Azure connecté.
  1. Ouvrez le Gestionnaire des services Internet (IIS), sélectionnez le pool d’applications FlexiCapture et cliquez sur Advanced Settings.
Capture d’écran du Gestionnaire IIS avec le pool d’applications FlexiCapture sélectionné et l’option Advanced Settings mise en évidence.
  1. Modifiez l’identité du pool afin d’utiliser le compte d’utilisateur FlexiCapture doté des autorisations requises, définissez Load User Profile sur True, confirmez les modifications en cliquant sur OK, puis recyclez le pool d’applications.
Capture d’écran de la boîte de dialogue IIS Advanced Settings avec l’identité du pool d’applications définie sur le compte d’utilisateur FlexiCapture et Load User Profile défini sur True.
  1. Dans l’Administration and Monitoring Console, sélectionnez l’option stockage de fichiers externe et spécifiez le chemin d’accès vers le partage de fichiers dans Microsoft Azure.
Capture d’écran de l’Administration and Monitoring Console avec l’option stockage de fichiers externe sélectionnée et le chemin du partage de fichiers Microsoft Azure spécifié.

Utiliser Azure Key Vault pour se connecter à Microsoft Azure Files

Azure Key Vault est un service cloud qui permet de stocker en toute sécurité des secrets, tels que des clés d’API, des mots de passe et des certificats. Ce service permet aux abonnés Azure de protéger les données sensibles utilisées par leurs applications et services cloud. Vous pouvez créer et gérer des coffres de clés via le portail Azure (consultez la documentation Microsoft pour plus de détails). Pour configurer une connexion à Azure Files :

Dans le portail Azure

  1. Configurez des machines virtuelles pour vos serveurs d’applications ABBYY FlexiCapture. Important ! Les machines virtuelles sur lesquelles le serveur d’applications est installé doivent être enregistrées dans Azure Active Directory. Pour obtenir des instructions détaillées sur la création et la configuration de machines virtuelles, consultez la documentation Microsoft.
Capture d’écran du portail Azure montrant une machine virtuelle pour le serveur d’applications ABBYY FlexiCapture enregistrée dans Azure Active Directory.
  1. Créez un nouveau coffre de clés. Sous Permission model, sélectionnez Azure role-based access control.
Capture d’écran de la page Create a key vault dans le portail Azure, avec Azure role-based access control sélectionné sous Permission model.
  1. Pour pouvoir enregistrer et consulter des secrets, ajoutez le rôle Key Vault Secrets Officer à votre compte et le rôle Key Vault Secrets User aux objets des machines virtuelles. Pour obtenir des instructions détaillées sur l’octroi d’autorisations aux machines virtuelles, consultez la documentation Microsoft.
  2. Ajoutez à votre coffre de clés votre secret (c’est-à-dire votre clé d’accès) pour votre compte de stockage Azure. Pour obtenir des instructions détaillées sur l’ajout d’un secret à un coffre de clés, consultez la documentation Microsoft. Important ! Pour vous connecter à Azure Files, le nom de votre secret doit être identique au nom de votre compte de stockage.
Capture d’écran du portail Azure où un secret est ajouté au coffre de clés, avec un nom de secret identique au nom du compte de stockage Azure.
Capture d’écran de la page Access keys du compte de stockage Azure dans le portail Azure, où est copiée la clé d’accès utilisée comme secret du coffre de clés.

Sur chaque serveur d’applications

Configurez votre compte système pour accéder à Azure Files. Pour ce faire :
  1. Enregistrez le script PowerShell suivant sur chaque machine virtuelle où le serveur d’applications est installé :
Param(
    [Parameter(Mandatory=$true)][Alias("Share")][ValidateNotNullOrEmpty()][String]$ShareRoot,
    [Parameter(Mandatory=$true)][Alias("Uri")][ValidateNotNullOrEmpty()][String]$VaultUri
)

$StorageAccount = $ShareRoot | Select-String -pattern "(?<=\\)(.*?)(?=(\\|[.]))" | Select-Object -ExpandProperty Matches | Select-Object -ExpandProperty Value
$ShareUser = "Azure\" + $StorageAccount

# Récupérer les paramètres depuis Azure Key Vault
$Response = Invoke-RestMethod -UseBasicParsing -Uri 'https://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https%3A%2F%2Fvault.azure.net' -Method GET -Headers @{Metadata="true"}
$BearerToken = $Response.access_token

# SharePass
$Uri = ($VaultUri).TrimEnd('/') + "/secrets/" + $StorageAccount + "?api-version=2016-10-01"
$Response = Invoke-RestMethod -UseBasicParsing -Uri $Uri -Method GET -Headers @{Authorization="Bearer $BearerToken"}
$SharePass = $Response.value
$ShareCredential = New-Object PSCredential($ShareUser, (ConvertTo-SecureString -AsPlainText -Force -String $SharePass))

New-PSDrive -Name "Flexicapture" -PSProvider FileSystem -Root $ShareRoot -Credential $ShareCredential -Scope Global
Le script accepte les deux paramètres suivants en entrée :
  • Le chemin d’accès à la racine du dossier réseau Azure, par exemple : \\<name of Azure Storage account>.file.core.windows.net\<name of network folder>.
  • L’URI du Key Vault qui stocke la clé d’accès de votre Azure Storage account. Vous pouvez copier l’URI depuis le champ Vault URI de l’onglet Vue d’ensemble du portail Azure.
Capture d’écran de l’onglet Vue d’ensemble du Key Vault dans le portail Azure, avec le champ Vault URI mis en évidence.
Exemple de commande pour exécuter le script :
powershell.exe <path to file with script> -share \\<name of Azure Storage account>.file.core.windows.net\<name of network folder> -uri https://<name of Azure key vault>.vault.azure.net/
  1. Pour exécuter le script, créez une tâche dans le Planificateur de tâches qui se déclenche au démarrage du système. La tâche doit être exécutée sous le compte d’utilisateur System, Network Service ou Local Service. Le même compte doit être utilisé pour exécuter le pool d’applications IIS.
Capture d’écran du Planificateur de tâches montrant une nouvelle tâche déclenchée au démarrage du système.
Capture d’écran de la tâche du Planificateur de tâches configurée pour s’exécuter sous le compte System, également utilisé pour le pool d’applications IIS.
  1. Configurez le service IIS pour qu’il démarre après l’exécution du script de connexion. Pour ce faire, ouvrez la boîte de dialogue World Wide Web Publishing Service Properties, puis sélectionnez Automatic (Delayed Start) dans la liste déroulante Startup type de l’onglet General.
Capture d’écran de la boîte de dialogue World Wide Web Publishing Service Properties avec Startup type défini sur Automatic (Delayed Start).
  1. Redémarrez le serveur d’applications.