Audit
#####

Divers audits sont mis à disposition des utilisateurs et administrateurs par le biais de l':term:`IHM` de démonstration sont décrits dans le Manuel Utilisateurs.

Audit de cohérence
==================

.. note:: Il est recommandé de procéder à un audit de cohérence aléatoire dans le cadre d’opérations techniques ciblées, telles qu’une migration de plate-forme et de données.

Pour lancer un audit de cohérence, il faut lancer le playbook comme suit :

.. code-block:: bash

   ansible-playbook ansible-vitam-exploitation/audit_coherence.yml -i environments/hosts.<environnement> --ask-vault-pass  -e "tenantId=<tenant id> access_contract=<access contrat> operationIds=<operationid1,operationid2...>"

..

Les paramètres à spécifier sont :

- `tenantId` : Le tenant à auditer
- `access_contract` : Le contrat d'accès
- `operationIds` : La liste des opérations d'entrée (ingest) à auditer au format `guid1,guid2,...guidN` (séparées par des virgules, sans espaces). L'audit portera sur les unités archivistiques versées au cours des opérations d'entrée spécifiées.

Les identifiants des opérations d'entrée (ingest) à cibler peuvent être récupérés depuis l'IHM via le journal des opérations, en filtrant sur les opérations de type "Entrée" (INGEST). Il peut s'agir d'opérations choisies aléatoirement ou ciblées sur une période donnée.

.. caution:: L'audit de cohérence est un workflow lourd qui doit être lancé sur un volume modéré d'unités archivistiques (100K maximum). Les opérations d'entrée (ingest) à auditer doivent être renseignées en conséquent (ex. Si les versement contiennent 10K unités archivistiques en moyenne, ne pas renseigner plus de 10 opérations).

Audit sur les collections d'administration
==========================================

.. note:: Cet audit permet de contrôler la présence/absence d'un référentiel (une collection d'administration fonctionnelle ou technique) sur les offres de stockage.

Pour lancer un audit des référentiels, il faut lancer le playbook comme suit :

.. code-block:: bash

   ansible-playbook ansible-vitam-exploitation/audit_referential.yml -i environments/hosts.<environnement> --ask-vault-pass -e "tenant_id=<tenant> collectionName=<nom_collection>"

..

Liste des `collectionName` disponible pour l'audit:

* Access_Contract
* Accession_Register_Summary
* Agencies
* Archive_Unit_Profile
* Formats
* Ingest_Contract
* Profile
* Rules

.. hint:: L'audit est lancé sur un seul tenant et une seule collection. Le tenant doit être le tenant d'administration dans le cas où la collection n'est accessible que par le tenant d'administration.
