Aller au contenu principal

Risque et conformité

L'écran Risque et conformité permet d'évaluer le risque d'un agent ou d'un modèle (catégorie AI Act), d'enregistrer les contrôles du tenant et de les relier aux référentiels, de demander une dérogation limitée dans le temps à un contrôle et de lire les preuves collectées pour chaque contrôle. Chemin dans le portail : /security/risk, menu Sécurité et gouvernance > Risque et conformité. Il sert aux responsables sécurité, aux administrateurs de tenant, aux responsables de la gouvernance de l'IA et aux développeurs qui préparent un audit.

Ce que montre l'écran​

L'écran (Risk dans portal/src/screens/security.tsx) comporte quatre onglets.

  • Évaluations : tableau lu dans GET /v1/risk/assessments, colonnes Type de cible (target.type), Cible (target.ref), Cas d'usage, Catégorie AI Act, Risque, Statut, Créé. Un clic sur une ligne affiche la ligne (justification, obligations, réponses).
  • Contrôles : tableau lu dans GET /v1/risk/controls, colonnes Code, Titre, Référentiels, Statut, Propriétaire, Preuves (nombre de preuves), Exceptions actives.
  • Dérogations : le formulaire Demander une dérogation (« Dérogation limitée dans le temps à un contrôle, avec justification. »), puis le tableau Exceptions lu dans GET /v1/risk/exceptions, colonnes Contrôle, Cible, Raison, Approbateur, Demandé par, Statut (active, expired, revoked), Expire.
  • Preuves : tableau lu dans GET /v1/risk/evidence, les preuves enregistrées suivies des preuves collectées automatiquement dans la plateforme, colonnes Contrôle, Titre, Type, Référentiels, Métriques, Collecté.

Formulaires de l'écran :

FormulaireChampObligatoireRemarques
Nouvelle évaluationCibleouitype:ref, par exemple agent:invoice-assistant ou model:claude-sonnet-eu.
Cas d'usagenonSéparés par des virgules, par exemple customer_support, credit_scoring.
RéponsesnonObjet JSON du questionnaire, par défaut {}.
PropriétairenonPar défaut : vous.
Nouveau contrôleCodeouiJusqu'à 64 caractères ; un code existant est mis à jour.
Titreoui
Descriptionnon
RéférentielsnonJSON, clés eu_ai_act, gdpr, iso_42001, nist_ai_rmf.
PropriétairenonPar défaut : vous.
StatutnonChoix planned, partial, implemented.
Demander une dérogationContrôle (control_code ou control_id) ou Cible (target_ref)l'un des deuxPar exemple AC-1 ou agent:invoice-assistant.
RaisonouiAu moins 3 caractères.
Contrôles compensatoiresnon
ApprobateurouiDoit être une autre personne que vous.
ExpireouiDate ISO dans le futur, au plus 365 jours plus tard (2026-12-31T00:00:00Z).

Actions​

Bouton ou actionEffetAppel APIRôles
Nouvelle évaluation (puis Créer)Classe la cible d'après ses cas d'usage et ses réponses, enregistre l'évaluation et, pour un agent, recopie la catégorie dans son niveau de risque (registry_synced).POST /v1/risk/assessmentstenant_admin, security_officer, developer, ai_governance_officer
Nouveau contrôle (puis Créer)Crée le contrôle, ou met à jour le contrôle de même code.POST /v1/risk/controlstenant_admin, security_officer
Exécuter (Demander une dérogation)Enregistre la dérogation avec son approbateur et son échéance ; auditée sous risk.exception.create.POST /v1/risk/exceptionstenant_admin, security_officer, developer
Clic sur une ligne (Évaluations, Exceptions, Preuves)Affiche la ligne dans un panneau latéral, sans autre appel.AucunTout utilisateur du tenant
Icône d'actualisation d'un tableauRelit la liste.GET /v1/risk/assessments, GET /v1/risk/controls, GET /v1/risk/exceptions ou GET /v1/risk/evidenceTout utilisateur du tenant
Réessayer (état d'erreur)Relit la liste en erreur.La route de l'ongletTout utilisateur du tenant

Rôles​

Le portail ne masque aucun bouton sur cet écran. Le Control Plane contrôle les rôles (services/control-plane/src/eai/domains/risk/__init__.py) :

  • lecture de tous les onglets : tout utilisateur du tenant ;
  • évaluation : tenant_admin, security_officer, developer ou ai_governance_officer ; seuls tenant_admin, security_officer ou ai_governance_officer peuvent l'enregistrer au statut approved ;
  • contrôle : tenant_admin ou security_officer ;
  • dérogation : tenant_admin, security_officer ou developer, et l'approbateur doit différer du demandeur (séparation des tâches) ;
  • platform_admin passe tous les contrôles de rôle.

Tâches courantes​

Classer un nouvel agent avant la production​

  1. Ouvrir le formulaire. La catégorie détermine les obligations de l'AI Act. Dans Évaluations, cliquez Nouvelle évaluation. Résultat attendu : un panneau latéral avec Cible, Cas d'usage, Réponses, Propriétaire. En cas d'échec : sans bouton, la liste ne s'est pas chargée ; cliquez Réessayer.
  2. Décrire la cible. Saisissez agent:<nom> dans Cible et ses cas d'usage, par exemple customer_support. Résultat attendu : le formulaire accepte les valeurs. En cas d'échec : « JSON invalide » sous Réponses signale un JSON illisible.
  3. Créer. Cliquez Créer. Résultat attendu : le message Créé et une nouvelle ligne avec sa Catégorie AI Act. En cas d'échec : forbidden (HTTP 403) signale un rôle manquant.
  4. Vérifier le registre. Pour un agent, la catégorie est recopiée dans son niveau de risque. Ouvrez le Registre de gouvernance, onglet Agents. Résultat attendu : la colonne Risque montre la catégorie. En cas d'échec : le nom de la cible ne correspond ni au nom ni à l'identifiant de l'agent.

Enregistrer une dérogation temporaire à un contrôle​

  1. Trouver le contrôle. La dérogation se réfère à son code. Dans Contrôles, notez le Code, par exemple AC-1. Résultat attendu : le code du contrôle. En cas d'échec : créez d'abord le contrôle avec Nouveau contrôle.
  2. Remplir la demande. Onglet Dérogations, formulaire Demander une dérogation : Contrôle, Raison, Contrôles compensatoires, Approbateur (une autre personne) et Expire. Résultat attendu : le formulaire est complet. En cas d'échec : rien à relancer à cette étape.
  3. L'envoyer. Cliquez Exécuter. Résultat attendu : le panneau de résultat montre la dérogation au statut active ; cliquez l'icône d'actualisation de Exceptions pour voir la nouvelle ligne. En cas d'échec : invalid_exception (HTTP 422) signale une échéance passée ou à plus de 365 jours ; separation_of_duties (HTTP 409) signale que vous vous êtes désigné comme approbateur ; not_found signale un code de contrôle inconnu.

Réunir les preuves d'un contrôle​

  1. Ouvrir les preuves. Elles sont collectées dans les événements d'audit et les évaluations. Onglet Preuves. Résultat attendu : les preuves enregistrées, puis les preuves automatiques (par exemple EAI-LOG-01 avec l'état de la chaîne d'audit). En cas d'échec : « Aucune preuve collectée » signifie que rien n'est encore enregistré.
  2. Lire les métriques. Les lignes automatiques comptent ce que la plateforme détient (agents, modèles, évaluations, règles DLP, clés, exécutions). Lisez Métriques pour le contrôle. Résultat attendu : les nombres servant de preuve. En cas d'échec : une métrique vide signifie que la table source n'existe pas dans ce déploiement.

Dépannage​

SymptômeCauseCorrection
invalid_request (HTTP 400) avec status à la création d'un contrôleL'API accepte planned, implemented, partially_implemented ou not_applicable ; le choix partial du formulaire est refusé.Choisissez planned ou implemented, ou envoyez partially_implemented par l'API.
invalid_request avec frameworksUne clé de référentiel hors de iso_42001, nist_ai_rmf, gdpr, eu_ai_act.N'utilisez que ces clés dans Référentiels.
invalid_exception (HTTP 422)Expire est dans le passé ou à plus de 365 jours.Choisissez une date dans les 365 prochains jours.
separation_of_duties (HTTP 409)L'approbateur est le demandeur.Désignez une autre personne comme Approbateur.
invalid_request avec required sur une dérogationNi Contrôle ni Cible n'est rempli.Indiquez un code de contrôle, un identifiant de contrôle ou une cible.
not_found avec risk_controlLe code ou l'identifiant du contrôle est inconnu.Vérifiez le code dans l'onglet Contrôles.
forbidden (HTTP 403) avec required_rolesVos rôles ne permettent pas cette écriture.Demandez l'un des rôles listés.
tenant_required (HTTP 403)Le compte agit sans tenant.Connectez-vous avec un compte du tenant.

Pages liées​