Aller au contenu

Point de terminaison d'audit GraphQL


Le point de terminaison d'audit GraphQL fournit une visibilité sur les événements système, permettant aux utilisateurs de suivre les changements et les activités au sein de BoostSecurity. Cette documentation décrit comment accéder, interroger et filtrer les événements d'audit via l'API.


Accéder au Point de terminaison


Le point de terminaison d'audit est disponible à l'adresse :

https://api.boostsecurity.io/audit/graphql

Pour récupérer le schéma GraphQL à partir du point de terminaison d'introspection, utilisez la commande suivante :

python3 -m pip install gql[all]
gql-cli -H "Authorization: ApiKey $BOOST_API_KEY" --schema-download --print-schema https://api.boostsecurity.io/audit/graphql | jq

Interroger le Point de terminaison


Pour récupérer des événements à partir du point de terminaison d'audit, utilisez une requête GraphQL comme suit :

Exemples de Requête

Enregistrez la requête suivante dans un fichier nommé audit.gql :

query getevents($filters: AuditEventFilters = {}, $first: Int, $page: Int) {
    audit {
        events(filters: $filters, first: $first, page: $page) {
            edges {
                node {
                    id
                    eventType
                    eventDetail
                    timestamp
                }
            }
            totalCount
            pageInfo {
                hasNextPage
            }
        }
    }
}

Exécution de la Requête

Pour récupérer les 100 premiers événements UserAdded pendant février, utilisez la commande suivante :

cat audit.gql | \
gql-cli https://api.boostsecurity.io/audit/graphql -H "Authorization: ApiKey $BOOST_API_KEY" \
-V 'filters:{"timestamp":{"gt":"2025-02-01T00:00:00+00:00","lt":"2025-03-01T00:00:00+00:00"},"eventTypes":["UserAdded"]}' first:100

Filtres Disponibles


Lors de l'interrogation de l'API d'audit, les filtres suivants peuvent être appliqués :

  • ids: Une liste d'IDs d'événements.
  • eventTypes: Une liste de types d'événements à filtrer.
  • timestamp.gt: Supérieur à un horodatage spécifié.
  • timestamp.lt: Inférieur à un horodatage spécifié.

Liste des Événements Audités


Voici une liste des types d'événements qui peuvent être interrogés :

AddRuleset, AssetAdded, AssetAnalyzersDataRemoved, AssetDataRemoved, AssetPolicyUpdated,
Auth0LoginFailed, Auth0LoginSuccess, IntegrationAdded, IntegrationRemoved, OneTimeScan,
PolicyAdded, PolicyReScanned, PolicyRemoved, PolicyUpdated, RemoveConfiguration,
RemoveRuleset, ScanTriggerSuccess, ScannerProvisioningAdded, ScannerProvisioningRemoved,
UpdateRuleset, UpsertGlobalConfiguration, UserAdded, ZtpDisabled, ZtpEnabled, ZtpInitiated

Récupération des Détails de l'Événement


Pour récupérer les détails d'un type d'événement spécifique, tel que Auth0LoginSuccess, utilisez la commande suivante :

cat audit.gql | \
gql-cli https://api.boostsecurity.io/audit/graphql -H "Authorization: ApiKey $BOOST_API_KEY" \
   -V 'filters:{"eventTypes":["Auth0LoginSuccess"]}' first:1 | \
  jq --raw-output '.audit.events.edges[].node.eventDetail'

Cela renverra les détails de l'événement au format JSON.