Documentation Index
Fetch the complete documentation index at: https://wb-21fd5541-docs-2632.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Utilisez les journaux d’audit W&B pour suivre l’activité des utilisateurs au sein de votre organisation et répondre à vos exigences de gouvernance d’entreprise. Cette page s’adresse aux administrateurs de l’organisation qui doivent accéder aux données des journaux d’audit, les récupérer et les analyser pour les différents types de déploiement W&B. Les journaux d’audit sont disponibles au format JSON. Reportez-vous à Schéma du journal d’audit.
La manière dont vous accédez aux journaux d’audit dépend du type de déploiement de votre plateforme W&B :
| Type de déploiement de la plateforme W&B | Mécanisme d’accès aux journaux d’audit |
|---|
| Cloud dédié | - BYOB au niveau de l’instance : synchronisé dans le bucket de l’instance (BYOB) toutes les 10 minutes. Également disponible avec l’API.
- Stockage par défaut au niveau de l’instance : disponible uniquement avec l’API.
|
| Cloud mutualisé | Disponible uniquement pour les plans Enterprise. Disponible uniquement avec l’API. |
| Autogéré | Synchronisé dans le bucket de l’instance toutes les 10 minutes. Également disponible avec l’API. |
Après avoir récupéré les journaux d’audit, vous pouvez les analyser avec des outils comme Pandas, Amazon Redshift, Google BigQuery ou Microsoft Fabric. Certains outils d’analyse des journaux d’audit ne prennent pas en charge le format JSON. Reportez-vous à la documentation de votre outil d’analyse pour connaître les recommandations et les exigences relatives à la transformation des journaux d’audit au format JSON avant l’analyse.
Pour plus de détails sur le format des journaux, voir Schéma du journal d’audit et Actions.
Conservation des journaux d’audit
Les recommandations suivantes vous aident à conserver les journaux d’audit afin de respecter les obligations de gouvernance et de conformité de votre organisation :
- Si vous devez conserver les journaux d’audit pendant une durée déterminée, W&B recommande de les transférer régulièrement vers un stockage à long terme, soit à l’aide de buckets de stockage, soit via l’API Audit Logging.
- Si vous êtes soumis au Health Insurance Portability and Accountability Act of 1996 (HIPAA), vous devez conserver les journaux d’audit pendant au moins 6 ans dans un environnement où ils ne peuvent être ni supprimés ni modifiés par un acteur interne ou externe avant la fin de la période de conservation obligatoire. Pour les instances Cloud dédié conformes à HIPAA avec BYOB, vous devez configurer des garde-fous pour votre stockage géré, y compris tout stockage de conservation à long terme.
Schéma du journal d’audit
Utilisez ce schéma pour interpréter les champs renvoyés dans chaque entrée du journal d’audit. Ce tableau présente toutes les clés susceptibles d’apparaître dans une entrée du journal d’audit, par ordre alphabétique. Selon l’action et le contexte, une entrée de journal donnée peut ne contenir qu’un sous-ensemble des champs possibles.
| Clé | Définition |
|---|
action | L’action de l’événement. |
actor_email | L’adresse e-mail de l’utilisateur à l’origine de l’action, le cas échéant. |
actor_ip | L’adresse IP de l’utilisateur à l’origine de l’action. |
actor_user_id | L’ID de l’utilisateur connecté ayant effectué l’action, le cas échéant. |
artifact_asset | L’ID de l’artifact associé à l’action, le cas échéant. |
artifact_digest | Le digest de l’artifact associé à l’action, le cas échéant. |
artifact_qualified_name | Le nom complet de l’artifact associé à l’action, le cas échéant. |
artifact_sequence_asset | L’ID de la séquence d’artifact associée à l’action, le cas échéant. |
cli_version | La version du SDK Python à l’origine de l’action, le cas échéant. |
entity_asset | L’ID de l’entité ou de l’équipe associée à l’action, le cas échéant. |
entity_name | Le nom de l’entité ou de l’équipe associée à l’action, le cas échéant. |
project_asset | Le projet associé à l’action, le cas échéant. |
project_name | Le nom du projet associé à l’action, le cas échéant. |
report_asset | L’ID du rapport associé à l’action, le cas échéant. |
report_name | Le nom du rapport associé à l’action, le cas échéant. |
response_code | Le code de réponse HTTP de l’action, le cas échéant. |
timestamp | L’heure de l’événement au format RFC3339. Par exemple, 2023-01-23T12:34:56Z représente le 23 janvier 2023 à 12:34:56 UTC. |
user_asset | La ressource utilisateur concernée par l’action (et non l’utilisateur qui effectue l’action), le cas échéant. |
user_email | L’adresse e-mail de l’utilisateur concerné par l’action (et non celle de l’utilisateur qui effectue l’action), le cas échéant. |
Les informations personnelles identifiables (PII), telles que les adresses e-mail et les noms des Projects, des équipes et des rapports, sont disponibles uniquement avec l’option point de terminaison d’API :
- Pour Autogéré et Cloud dédié, un administrateur d’organisation peut exclure les PII lors de la récupération des journaux d’audit.
- Pour Cloud mutualisé, le point de terminaison d’API renvoie toujours les champs pertinents pour les journaux d’audit, y compris les PII. Cela n’est pas configurable.
Avant de récupérer les journaux d’audit, confirmez que vous remplissez les prérequis suivants pour votre type de déploiement :
-
Les administrateurs de l’organisation peuvent récupérer les journaux d’audit. Si vous recevez une erreur
403, assurez-vous que vous ou votre compte de service disposez des autorisations nécessaires.
-
Cloud mutualisé : Si vous êtes membre de plusieurs organisations en Cloud mutualisé, vous devez configurer l’organisation API par défaut, qui détermine vers quelle organisation sont acheminés les appels à l’API des journaux d’audit. Sinon, vous recevrez l’erreur suivante :
user is associated with multiple organizations but no valid org ID found in user info
Pour définir votre organisation API par défaut :
- Cliquez sur votre image de profil, puis sur Paramètres utilisateur.
- Pour l’organisation API par défaut, sélectionnez une organisation.
Cela ne s’applique pas à un compte de service, qui ne peut être membre que d’une seule organisation en Cloud mutualisé.
Récupérer les journaux d’audit
Pour récupérer les journaux d’audit à partir de l’API W&B Audit Logging, suivez ces étapes. Une fois cette procédure terminée, vous disposerez d’un ensemble d’objets JSON séparés par des sauts de ligne que vous pourrez analyser à l’aide des outils de votre choix.
-
Déterminez le point de terminaison d’API approprié pour votre instance :
Dans les étapes suivantes, remplacez
[API-ENDPOINT] par votre point de terminaison d’API.
-
Facultatif : construisez les paramètres de requête à ajouter à l’point de terminaison. Dans les étapes suivantes, remplacez
[PARAMETERS] par la chaîne obtenue.
anonymize : si l’URL inclut le paramètre anonymize=true, W&B supprime toute PII. Sinon, la PII est incluse. Référez-vous à Exclure la PII lors de la récupération des journaux d’audit. Non pris en charge pour le Cloud mutualisé, où tous les champs sont inclus, y compris la PII.
- Configurez la plage de dates des journaux à récupérer à l’aide d’une combinaison de
numDays et startDate. Chaque paramètre est facultatif, et ils interagissent entre eux.
- Si aucun des deux paramètres n’est inclus, seuls les journaux du jour sont récupérés.
numDays : entier indiquant le nombre de jours à remonter à partir de startDate pour récupérer les journaux. S’il est omis ou défini sur 0, les journaux ne sont récupérés que pour startDate. Sur Multi-tenant Cloud, vous pouvez récupérer au maximum 7 jours de journaux d’audit, même si vous définissez numDays sur une valeur supérieure.
startDate : facultatif. Utilisez startDate=YYYY-MM-DD pour définir le jour calendaire le plus récent de l’intervalle. Si vous l’omettez ou le définissez sur la date du jour, l’intervalle se termine aujourd’hui et numDays compte à rebours à partir de ce jour.
- Pris en charge dans Multi-tenant Cloud uniquement avec une Enterprise license.
- Pris en charge dans Cloud dédié et Autogéré v0.80.0 et versions ultérieures.
-
Construisez l’URL complète du point de terminaison au format
[API-ENDPOINT]?[PARAMETERS].
-
Exécutez une requête HTTP
GET sur le point de terminaison d’API complet à l’aide d’un navigateur web ou d’un outil comme Postman, HTTPie, ou cURL.
La réponse de l’API contient des objets JSON séparés par des sauts de ligne. Les objets incluent les champs décrits dans le schéma, comme lorsque les journaux d’audit sont synchronisés avec un bucket de l’instance. Dans ce cas, les journaux d’audit se trouvent dans le répertoire /wandb-audit-logs de votre bucket.
Utiliser l’authentification de base
Vous devez authentifier chaque requête adressée à l’API des journaux d’audit. Pour utiliser l’authentification de base avec votre clé API afin d’accéder à l’API des journaux d’audit, définissez l’en-tête Authorization de la requête HTTP sur la chaîne Basic, suivie d’un espace, puis de la chaîne encodée en base64 au format [USERNAME]:[API-KEY]. En d’autres termes, remplacez le nom d’utilisateur et la clé API par vos valeurs, séparées par le caractère :, puis encodez le résultat en base64. Par exemple, pour vous authentifier en tant que demo:p@55w0rd, définissez l’en-tête sur Authorization: Basic ZGVtbzpwQDU1dzByZA==.
Exclure les PII lors de la récupération des journaux d’audit
Pour Autogéré et Cloud dédié, un administrateur d’organisation ou d’instance W&B peut exclure les PII lors de la récupération des journaux d’audit. Pour Cloud mutualisé, le point de terminaison d’API renvoie toujours les champs pertinents des journaux d’audit, y compris les PII. Ce comportement n’est pas configurable.
Pour exclure les PII, passez le paramètre d’URL anonymize=true. Par exemple, pour obtenir les journaux d’audit de l’activité des utilisateurs sur la dernière semaine tout en excluant les PII, si l’URL de votre instance W&B est https://mycompany.wandb.io, utilisez un point de terminaison d’API comme :
https://mycompany.wandb.io/admin/audit_logs?anonymize=true&[ADDITIONAL-PARAMETERS].
Chaque entrée de journal d’audit enregistre l’une des actions suivantes. Utilisez cette référence pour interpréter le champ action dans une entrée de journal. Le tableau suivant décrit les actions que W&B peut enregistrer, classées par ordre alphabétique.
| Action | Définition |
|---|
artifact:create | Artifact est créé. |
artifact:delete | Artifact est supprimé. |
artifact:read | Artifact est lu. |
project:delete | Le projet est supprimé. |
project:read | Le projet est lu. |
report:read | Le rapport est lu. 1 |
run:delete_many | Un lot de runs est supprimé. |
run:delete | Le run est supprimé. |
run:stop | Le run est arrêté. |
run:undelete_many | Un lot de runs est restauré depuis la corbeille. |
run:update_many | Un lot de runs est mis à jour. |
run:update | Le run est mis à jour. |
sweep:create_agent | L’agent de balayage est créé. |
team:create_service_account | Un compte de service est créé pour l’équipe. |
team:create | L’équipe est créée. |
team:delete | L’équipe est supprimée. |
team:invite_user | L’utilisateur est invité à rejoindre l’équipe. |
team:uninvite | L’utilisateur ou le compte de service est retiré de l’équipe. |
user:create_api_key | Une clé API est créée pour l’utilisateur ou le compte de service. 1 |
user:create | L’utilisateur est créé. 1 |
user:deactivate | L’utilisateur est désactivé. 1 |
user:delete_api_key | La clé API de l’utilisateur ou du compte de service est supprimée. 1 |
user:initiate_login | L’utilisateur lance la connexion. 1 |
user:login | L’utilisateur se connecte. 1 |
user:logout | L’utilisateur se déconnecte. 1 |
user:permanently_delete | L’utilisateur est supprimé définitivement. 1 |
user:reactivate | L’utilisateur est réactivé. 1 |
user:read | Le profil de l’utilisateur est lu. 1 |
user:update | L’utilisateur est mis à jour. 1 |
1: Sur Cloud mutualisé, les journaux d’audit ne sont pas collectés pour :
- Les projets Open ou Public.
- L’action
report:read.
- Les actions
Users qui ne sont pas liées à une organisation spécifique.