7
votes

Comment masquer les informations sensibles du corps de poste dans NGinx Log?

Pour la commodité d'analyse, nous enregistrons le champ $ requérir_body dans le journal d'accès. Cependant, il existe des informations sensibles dans le corps de poste, telles que le mot de passe ou le numéro de carte de crédit, exposés dans les journaux. Comment pouvons-nous masquer ces informations? XXX

Si j'écris un module NGinx pour masquer les données, dois-je écrire un nouveau module de journal ou dois-je manipuler le corps de la demande avant le module de journal d'origine appelé?
Ou devrais-je utiliser Nginx-Lua pour atteindre cet objectif?
Ou existe-t-il d'autres méthodes?


0 commentaires

3 Réponses :


3
votes

Utilisez la commande 'echo_read_request_body''body '"pour obtenir les données de poste http, puis filtrer le mot de passe à l'aide de" carte "et regex xxx

puis définissez log_format et utilisez-le sur un niveau serveur / emplacement: < / p> xxx

voici plus d'informations: https://www.rscloud.net/blog/30-how-a-hide-sensible-post-Data-in-nginx-log


0 commentaires

0
votes

Ceci est ma version.

@Yury Sergeev Réponse n'est efficace que s'il n'y a qu'un seul mot de passe dans la requête.bon. Mais si vous avez une page d'enregistrement où vous avez confirmation_password et d'autres mots de passe comme & mot de passe = PASS1234 & confirmation_password = PASS1234 & Retrait_password = PASS1234 Il ne fonctionnera pas.

Ma version est même bien que manuel et sale .. mais il va toujours masquer ces mots de passe xxx

votre corps de demande comme nom d'utilisateur = 3124124 & mot de passe = 3124124 & confirmation_password = 2412411134231 & real_name = doyen & téléphone = 13412345678 & email =xxx@yahoo.com

deviendra Nom d'utilisateur=312412&real_name=fean&phone=13412345678&email=xxx@yahoo.com


0 commentaires

1
votes

Une carte d'expression pouvant masquer le champ de mot de passe, quelle que soit sa position dans la liste d'arguments xxx

testée pour les modèles suivants

  • Mot de passe = Papaya & ID = Certainères
  • mot de passe = papaye &
  • mot de passe = papaye
  • & mot de passe = papaye
  • ID = PODUSER & MOT DE PASSE = PAPAYA ET N'OUBLIEZ = 1
  • ID = POINTUSER & MOT DE PASSE = PAPAYA

    Cependant, il faut comparer le coût de performance d'exécution de la carte de regex sur le corps de chaque requête.


0 commentaires