Partager via


Architecture de sécurité de l’authentification dans Test Engine (version préliminaire)

Nonte

Les fonctionnalités en version préliminaire ne sont pas destinées à une utilisation en production et peuvent être restreintes. Ces fonctionnalités sont disponibles avant une version officielle afin que les clients puissent obtenir un accès anticipé et fournir des commentaires.

Ce document technique décrit l’architecture de sécurité des mécanismes d’authentification dans Power Apps Test Engine. Pour obtenir des conseils axés sur l’utilisateur sur la sélection et la configuration des méthodes d’authentification, consultez le Guide d’authentification.

Présentation des méthodes d’authentification

Test Engine prend en charge deux méthodes d’authentification principales :

  • Authentification de l’état de stockage - basée sur les cookies persistants du navigateur et l’état de stockage
  • Authentification basée sur les certificats - basée sur les certificats X.509 et l’intégration Dataverse

Les deux méthodes sont conçues pour prendre en charge les exigences de sécurité modernes, notamment l’authentification multifacteur (MFA) et les stratégies d’accès conditionnel.

Architecture d’authentification de l’état du stockage

La méthode d’authentification de l’état de stockage utilise la gestion du contexte du navigateur de Playwright pour stocker et réutiliser les jetons d’authentification en toute sécurité.

Présentation du flux d’authentification dans Test Engine

Implémentation de la protection des données Windows

L’implémentation de l’état du stockage local utilise l’API de protection des données Windows (DPAPI) pour un stockage sécurisé :

Présentation de l’authentification à l’aide de l’API de protection des données Windows (DPAPI) locale

Considérations de sécurité

L’architecture de sécurité de l’état du stockage fournit les éléments suivants :

  • Protection des jetons d’authentification au repos à l’aide du chiffrement DPAPI
  • Support pour l'authentification multifacteur Microsoft Entra et les stratégies d'accès conditionnel
  • Isolation du bac à sable (sandbox) via les contextes de navigateur de Playwright
  • Conformité aux stratégies de durée de vie des sessions Microsoft Entra

Architecture de l’authentification basée sur des certificats

L’authentification basée sur les certificats s’intègre à Dataverse et utilise les certificats X.509 pour renforcer la sécurité et le chiffrement des informations au repos.

Présentation de l’authentification avec Dataverse

Implémentation du stockage Dataverse

L’implémentation Dataverse utilise un référentiel XML personnalisé pour le stockage sécurisé des clés de protection :

Vue d’ensemble du stockage des valeurs Dataverse

Technologie de l’information

Les sections suivantes décrivent les algorithmes de chiffrement et les approches de gestion des clés utilisés par Test Engine pour protéger les données d’authentification au repos et en transit.

AES-256-CBC + HMACSHA256

Par défaut, les valeurs de données sont chiffrées avec une combinaison d’AES-256-CBC et de HMACSHA256 :

Vue d’ensemble du chiffrement Dataverse à l’aide de l’API de protection des données ASP.Net

Cette approche permet d’obtenir les avantages suivants :

  1. Confidentialité grâce au chiffrement AES-256
  2. Intégrité grâce à la vérification HMAC
  3. Authentication de la source de données

Intégration de l’API de protection des données

Test Engine s’intègre à l’API de protection des données ASP.NET Core pour la gestion des clés et le chiffrement :

Présentation de l'utilisation de l'API Dataverse Data Protection

Implémentation d’un référentiel XML personnalisé

Test Engine implémente un IXmlRepository personnalisé pour l’intégration Dataverse :

Vue d’ensemble du fournisseur XML personnalisé de l’API de protection des données

Compatibilité avec l’accès conditionnel et l’authentification multifacteur

L’architecture d’authentification de Test Engine est conçue pour fonctionner de manière transparente avec les stratégies d’accès conditionnel Microsoft Entra :

Vue d'ensemble de la stratégie d'accès conditionnel et l'authentification multifacteur

Considérations de sécurité avancée

Les sections suivantes mettent en évidence d’autres fonctionnalités de sécurité et intégrations qui améliorent la protection des données d’authentification et prennent en charge des opérations sécurisées dans les environnements d’entreprise.

Intégration au modèle de sécurité Dataverse

Test Engine utilise le modèle de sécurité robuste de Dataverse :

  • Sécurité au niveau de l’enregistrement - Contrôle l’accès aux données d’authentification stockées
  • Modèle de partage - permet le partage sécurisé des contextes d’authentification de test
  • Audit - Suit l’accès aux données d’authentification sensibles
  • Sécurité au niveau de la colonne - Fournit une protection granulaire des champs sensibles

Gestion des jetons CLI Azure

Pour l’authentification Dataverse, Test Engine obtient en toute sécurité des jetons d’accès :

Vue d’ensemble de l’authentification basée sur la ligne de commande (CLI) Azure

Meilleures pratiques de sécurité

Lors de la mise en œuvre de l’authentification Test Engine, tenez compte de ces meilleures pratiques de sécurité :

  • Accès du moindre privilège : accordez les autorisations minimales nécessaires aux comptes de test
  • Rotation régulière des certificats : mettez à jour les certificats périodiquement
  • Variables CI/CD sécurisées : protégez les variables de pipeline contenant des données sensibles
  • Auditer l’accès: surveillez l’accès aux ressources d’authentification
  • Isolation de l’environnement : utilisez des environnements séparés pour les tests

Améliorations futures de la sécurité

Parmi les améliorations futures potentielles de l’architecture de sécurité de l’authentification, citons :

  • Intégration avec Azure Key Vault pour une gestion des secrets améliorée
  • Prise en charge des identités managées dans les environnements Azure
  • Fonctionnalités améliorées de journalisation et de surveillance de la sécurité
  • Plus de fournisseurs de protection pour les scénarios multiplateformes

Protection des données dans ASP.NET Core
API Windows Data Protection
Authentification Microsoft Entra
Modèle de sécurité Dataverse
Authentification basée sur un certificat X.509