3.7. Collecte des journaux d’audit


Les journaux d’audit, qui sont un ensemble chronologique d’enregistrements pertinents pour la sécurité, documentent la séquence des activités qui ont affecté le système par des utilisateurs individuels, des administrateurs ou d’autres composants du système.

À titre d’exemple, les journaux d’audit peuvent vous aider à comprendre d’où provient une demande d’autoscaling. Il s’agit d’informations clés lorsque les backends sont surchargés par des requêtes d’autoscaling faites par les applications utilisateur et que vous devez déterminer quelle est l’application gênante.

3.7.1. Configuration de l’enregistrement de l’audit

En éditant la ressource personnalisée KedaController, vous pouvez configurer l’audit pour l’opérateur automatique de mesure personnalisée. Les journaux sont envoyés à un fichier journal d’audit sur un volume sécurisé en utilisant une revendication de volume persistante dans le CR KedaController.

Conditions préalables

  • Le Custom Metrics Autoscaler Operator doit être installé.

Procédure

  1. Éditer la ressource personnalisée KedaController pour ajouter l’auditConfig stanza:

    kind: KedaController
    apiVersion: keda.sh/v1alpha1
    metadata:
      name: keda
      namespace: keda
    spec:
    # ...
      metricsServer:
    # ...
        auditConfig:
          logFormat: "json" 
    1
    
          logOutputVolumeClaim: "pvc-audit-log" 
    2
    
          policy:
            rules: 
    3
    
            - level: Metadata
            omitStages: "RequestReceived" 
    4
    
            omitManagedFields: false 
    5
    
          lifetime: 
    6
    
            maxAge: "2"
            maxBackup: "1"
            maxSize: "50"
    Copy to Clipboard Toggle word wrap
    1
    Indique le format de sortie du journal d’audit, qu’il s’agisse d’héritage ou de json.
    2
    Indique une revendication existante de volume persistant pour stocker les données du journal. L’ensemble des demandes arrivant sur le serveur API sont enregistrées à cette revendication de volume persistante. Lorsque vous laissez ce champ vide, les données du journal sont envoyées à stdout.
    3
    Indique quels événements doivent être enregistrés et quelles données ils doivent inclure:
    • Aucun : Ne enregistrez pas les événements.
    • Enregistrez uniquement les métadonnées pour la demande, telles que l’utilisateur, l’horodatage, et ainsi de suite. Il ne faut pas enregistrer le texte de demande et le texte de réponse. C’est la valeur par défaut.
    • Demande : Logisez uniquement les métadonnées et le texte de demande, mais pas le texte de réponse. Cette option ne s’applique pas aux demandes de non-ressource.
    • RequestResponse: Logiser les métadonnées d’événements, le texte de demande et le texte de réponse. Cette option ne s’applique pas aux demandes de non-ressource.
    4
    Indique les étapes pour lesquelles aucun événement n’est créé.
    5
    Indique s’il faut omettre les champs gérés des organismes de requête et de réponse d’être écrits dans le journal d’audit de l’API, que ce soit vrai pour omettre les champs ou faux pour inclure les champs.
    6
    Indique la taille et la durée de vie des journaux d’audit.
    • Le nombre maximum de jours pour conserver les fichiers journaux d’audit, basé sur l’horodatage encodé dans leur nom de fichier.
    • sauvegarde max: Le nombre maximum de fichiers journaux d’audit à conserver. Définissez sur 0 pour conserver tous les fichiers journaux d’audit.
    • La taille maximale en mégaoctets d’un fichier journal d’audit avant qu’il ne soit tourné.

La vérification

  1. Consultez le fichier journal d’audit directement:

    1. D’obtenir le nom de la gousse keda-metrics-apiserver-*:

      oc get pod -n keda
      Copy to Clipboard Toggle word wrap

      Exemple de sortie

      NAME                                                  READY   STATUS    RESTARTS   AGE
      custom-metrics-autoscaler-operator-5cb44cd75d-9v4lv   1/1     Running   0          8m20s
      keda-metrics-apiserver-65c7cc44fd-rrl4r               1/1     Running   0          2m55s
      keda-operator-776cbb6768-zpj5b                        1/1     Running   0          2m55s
      Copy to Clipboard Toggle word wrap

    2. Affichez les données du journal à l’aide d’une commande similaire à ce qui suit:

      $ oc logs keda-metrics-apiserver-<hash>|grep -i metadata 
      1
      Copy to Clipboard Toggle word wrap
      1
      Facultatif: Vous pouvez utiliser la commande grep pour spécifier le niveau de journal pour afficher: Metadata, Request, RequestResponse.

      À titre d’exemple:

      $ oc logs keda-metrics-apiserver-65c7cc44fd-rrl4r|grep -i metadata
      Copy to Clipboard Toggle word wrap

      Exemple de sortie

       ...
      {"kind":"Event","apiVersion":"audit.k8s.io/v1","level":"Metadata","auditID":"4c81d41b-3dab-4675-90ce-20b87ce24013","stage":"ResponseComplete","requestURI":"/healthz","verb":"get","user":{"username":"system:anonymous","groups":["system:unauthenticated"]},"sourceIPs":["10.131.0.1"],"userAgent":"kube-probe/1.28","responseStatus":{"metadata":{},"code":200},"requestReceivedTimestamp":"2023-02-16T13:00:03.554567Z","stageTimestamp":"2023-02-16T13:00:03.555032Z","annotations":{"authorization.k8s.io/decision":"allow","authorization.k8s.io/reason":""}}
       ...
      Copy to Clipboard Toggle word wrap

  2. Alternativement, vous pouvez consulter un journal spécifique:

    1. À l’aide d’une commande similaire à ce qui suit pour vous connecter à la gousse keda-metrics-apiserver-*:

      $ oc rsh pod/keda-metrics-apiserver-<hash> -n keda
      Copy to Clipboard Toggle word wrap

      À titre d’exemple:

      $ oc rsh pod/keda-metrics-apiserver-65c7cc44fd-rrl4r -n keda
      Copy to Clipboard Toggle word wrap
    2. Changement dans le répertoire /var/audit-policy/:

      sh-4.4$ cd /var/audit-policy/
      Copy to Clipboard Toggle word wrap
    3. Liste des journaux disponibles:

      sh-4.4$ ls
      Copy to Clipboard Toggle word wrap

      Exemple de sortie

      log-2023.02.17-14:50  policy.yaml
      Copy to Clipboard Toggle word wrap

    4. Consultez le journal, au besoin:

      sh-4.4$ cat <log_name>/<pvc_name>|grep -i <log_level> 
      1
      Copy to Clipboard Toggle word wrap
      1
      Facultatif: Vous pouvez utiliser la commande grep pour spécifier le niveau de journal pour afficher: Metadata, Request, RequestResponse.

      À titre d’exemple:

      sh-4.4$ cat log-2023.02.17-14:50/pvc-audit-log|grep -i Request
      Copy to Clipboard Toggle word wrap

      Exemple de sortie

       ...
      {"kind":"Event","apiVersion":"audit.k8s.io/v1","level":"Request","auditID":"63e7f68c-04ec-4f4d-8749-bf1656572a41","stage":"ResponseComplete","requestURI":"/openapi/v2","verb":"get","user":{"username":"system:aggregator","groups":["system:authenticated"]},"sourceIPs":["10.128.0.1"],"responseStatus":{"metadata":{},"code":304},"requestReceivedTimestamp":"2023-02-17T13:12:55.035478Z","stageTimestamp":"2023-02-17T13:12:55.038346Z","annotations":{"authorization.k8s.io/decision":"allow","authorization.k8s.io/reason":"RBAC: allowed by ClusterRoleBinding \"system:discovery\" of ClusterRole \"system:discovery\" to Group \"system:authenticated\""}}
       ...
      Copy to Clipboard Toggle word wrap

Retour au début
Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2025 Red Hat