Partager via


Audit Log - Query

Requêtes dans les entrées du journal d’audit

GET https://auditservice.dev.azure.com/{organization}/_apis/audit/auditlog?api-version=7.1-preview.1
GET https://auditservice.dev.azure.com/{organization}/_apis/audit/auditlog?startTime={startTime}&endTime={endTime}&batchSize={batchSize}&continuationToken={continuationToken}&skipAggregation={skipAggregation}&api-version=7.1-preview.1

Paramètres URI

Nom Dans Obligatoire Type Description
organization
path

string

Nom de l’organisation Azure DevOps.

api-version
query True

string

Version de l’API à utiliser. Cette valeur doit être définie sur « 7.1-preview.1 » pour utiliser cette version de l’API.

batchSize
query

integer

int32

Nombre maximal de résultats à retourner. Facultatif

continuationToken
query

string

Jeton utilisé pour retourner le jeu de résultats suivant de la requête précédente. Facultatif

endTime
query

string

date-time

Heure de fin de la fenêtre de téléchargement. Facultatif

skipAggregation
query

boolean

Ignore l’agrégation des événements et les laisse en tant qu’entrées individuelles à la place. Par défaut, les événements sont agrégés. Types d’événements agrégés : AuditLog.AccessLog.

startTime
query

string

date-time

Heure de début de la fenêtre de téléchargement. Facultatif

Réponses

Nom Type Description
200 OK

AuditLogQueryResult

opération réussie

Sécurité

oauth2

Type: oauth2
Flux: accessCode
URL d’autorisation: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
URL du jeton: https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer

Étendues

Nom Description
vso.auditlog Accorde la possibilité de lire le journal d’audit et les flux d’audit aux utilisateurs

Exemples

By date

Exemple de requête

GET https://auditservice.dev.azure.com/_apis/audit/auditlog?startTime=2019-03-04T14:05:59.928Z&endTime=2019-03-05T14:05:59.928Z&batchSize=2&api-version=7.1-preview.1

Exemple de réponse

{
  "value": {
    "decoratedAuditLogEntries": [
      {
        "id": "2518505060978539161;00000064-0000-8888-8000-000000000000;86fbe369-3f5d-4f52-9ab0-3be7db271948",
        "correlationId": "86fbe369-3f5d-4f52-9ab0-3be7db271948",
        "activityId": "033fde68-f713-4984-b24f-8d7a73d1ade6",
        "actorCUID": "a718550e-4777-4058-8298-bff88d0cb524",
        "actorUserId": "d6a98b6c-6932-485c-a986-aea9fc981df0",
        "authenticationMechanism": "FedAuth",
        "timestamp": "2019-03-05T14:05:02.1460838+00:00",
        "scopeType": "organization",
        "scopeDisplayName": "fabrikam (Organization)",
        "scopeId": "73638cd5-0dda-4128-9fd6-48c16d4e4de3",
        "ipAddress": "167.220.148.131",
        "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36",
        "actionId": "AuditLog.AccessLog",
        "data": {
          "Filter": {
            "StartTime": "2019-03-04T14:05:59.928Z",
            "EndTime": "2019-03-05T14:05:59.928Z",
            "ContinuationToken": null,
            "BatchSize": 2,
            "HasMore": true
          },
          "EventSummary": [
            "2019-03-05T14:05:02.1460838+00:00",
            "2019-03-05T13:59:40.4899467+00:00",
            "2019-03-05T13:58:13.159128+00:00"
          ]
        },
        "details": "Accessed the audit log 3 times",
        "area": "Auditing",
        "category": "access",
        "categoryDisplayName": "Access",
        "actorDisplayName": "Norman Paulk",
        "actorImageUrl": "https://dev.azure.com/fabrikam/_apis/GraphProfile/MemberAvatars/aad.NzdhMTNiN2MtYjIxNy03NDc4LWIxMjItYTlhMTU5YTFlNWQw"
      },
      {
        "id": "2518505063644965580;00000002-0000-8888-8000-000000000000;198b13cf-5201-48e8-acef-0d8bb2d9e815",
        "correlationId": "57f825b4-a940-44a3-a3cc-25cdb9871107",
        "activityId": "01abe2fd-deee-4a47-b35f-dff3edc059a4",
        "actorCUID": "00000000-0000-0000-0000-000000000000",
        "actorUserId": "00000002-0000-8888-8000-000000000000",
        "authenticationMechanism": "",
        "timestamp": "2019-03-05T14:00:35.5034419+00:00",
        "scopeType": "organization",
        "scopeDisplayName": "fabrikam (Organization)",
        "scopeId": "73638cd5-0dda-4128-9fd6-48c16d4e4de3",
        "ipAddress": null,
        "userAgent": "",
        "actionId": "Project.CreateCompleted",
        "data": {
          "ProjectId": "2e0ffea5-d693-4711-862c-94393bacadcb",
          "ProjectName": "fabrikam-fiber-git",
          "ProcessTemplate": "Agile",
          "ProjectVisibility": "Private"
        },
        "details": "fabrikam-fiber-git project was created successfully",
        "area": "Project",
        "category": "create",
        "categoryDisplayName": "Create",
        "actorDisplayName": "Azure DevOps Service",
        "actorImageUrl": null
      }
    ],
    "continuationToken": "2518505063644965580;00000002-0000-8888-8000-000000000000;198b13cf-5201-48e8-acef-0d8bb2d9e815",
    "hasMore": false
  }
}

Définitions

Nom Description
AuditActionCategory

Type d’action exécutée

AuditLogQueryResult

Objet retourné lorsque le journal d’audit est interrogé. Il contient le journal et les informations nécessaires pour interroger d’autres entrées d’audit.

AuditScopeType

Type de l’étendue (l’organisation est uniquement prise en charge actuellement)

DecoratedAuditLogEntry

AuditActionCategory

Type d’action exécutée

Valeur Description
access

Un artefact a été accédé

create

Un artefact a été créé

execute

Un artefact a été exécuté

modify

Un artefact a été modifié

remove

Un artefact a été supprimé

unknown

La catégorie n’est pas connue

AuditLogQueryResult

Objet retourné lorsque le journal d’audit est interrogé. Il contient le journal et les informations nécessaires pour interroger d’autres entrées d’audit.

Nom Type Description
continuationToken

string

Jeton de continuation à passer pour obtenir le jeu de résultats suivant

decoratedAuditLogEntries

DecoratedAuditLogEntry[]

Liste des entrées du journal d’audit

hasMore

boolean

True lorsque d’autres résultats correspondants doivent être extraits, false dans le cas contraire.

AuditScopeType

Type de l’étendue (l’organisation est uniquement prise en charge actuellement)

Valeur Description
deployment

Déploiement

enterprise

Enterprise

organization

Organisation

project

Project

unknown

L’étendue n’est pas connue ou n’a pas été définie

DecoratedAuditLogEntry

Nom Type Description
actionId

string

ID d’action de l’événement, c’est-à-dire Git.CreateRepo, Project.RenameProject

activityId

string

ActivityId

actorCUID

string

CUID de l’acteur

actorClientId

string

ID client de l’acteur (si l’acteur est un principal de service)

actorDisplayName

string

DisplayName de l’utilisateur qui a lancé l’action

actorImageUrl

string

URL de l’image de profil de l’acteur

actorUPN

string

UPN de l’acteur

actorUserId

string

Id d’utilisateur de l’acteur (si l’acteur est un utilisateur)

area

string

Zone d’Azure DevOps où l’action s’est produite

authenticationMechanism

string

Type d’authentification utilisé par l’acteur

category

AuditActionCategory

Type d’action exécutée

categoryDisplayName

string

DisplayName de la catégorie

correlationId

string

Cela permet de regrouper les entrées d’audit associées. Cela se produit généralement lorsqu’une seule action provoque une cascade d’entrées d’audit. Par exemple, la création de projet.

data

object

Données externes telles que les CUID, les noms d’éléments, etc.

details

string

Détails décorés

id

string

EventId : doit être unique par service

ipAddress

string

Adresse IP d’origine de l’événement

projectId

string

Quand il est spécifié, l’ID du projet auquel cet événement est associé

projectName

string

Quand il est spécifié, nom du projet auquel cet événement est associé

scopeDisplayName

string

DisplayName de l’étendue

scopeId

string

ID organization (l’organisation est la seule étendue actuellement prise en charge)

scopeType

AuditScopeType

Type de l’étendue (l’organisation est uniquement prise en charge actuellement)

timestamp

string

Heure à laquelle l’événement s’est produit en UTC

userAgent

string

Agent utilisateur de la demande