Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何用星号屏蔽日志中的敏感字段。C++;_C++_Logging_Masking - Fatal编程技术网

C++ 如何用星号屏蔽日志中的敏感字段。C++;

C++ 如何用星号屏蔽日志中的敏感字段。C++;,c++,logging,masking,C++,Logging,Masking,我需要使用“***”而不是文本屏蔽日志中的敏感字段(如SSN、地址、名称)。代码库完全是C++的。这是一个庞大的代码库。我注意到大多数敏感信息都以xml标记的形式打印在日志中。 我对C++非常陌生。如果有人能为我指明正确的方向,我将不胜感激。 以下是如何将字段记录到代码中的示例: AppMsg rsp(a_dictionary::a_dictionary, XML_RSP, 1); ........ log_msg(CONSOLE, " ResponseTime: %d", respon

我需要使用“***”而不是文本屏蔽日志中的敏感字段(如SSN、地址、名称)。代码库完全是C++的。这是一个庞大的代码库。我注意到大多数敏感信息都以xml标记的形式打印在日志中。 我对C++非常陌生。如果有人能为我指明正确的方向,我将不胜感激。 以下是如何将字段记录到代码中的示例:

 AppMsg rsp(a_dictionary::a_dictionary, XML_RSP, 1);
 ........

 log_msg(CONSOLE, " ResponseTime: %d", response_time);

  rsp.add_field(OUTPUT_XML, rsp_xml);
  rsp.add_field(STATUS_CODE, status_code);
  rsp.add_field(STATUS_DESC, status_desc);
日志看起来像:

14:02:58 C--[abcInterfaceServer-1]: abc Query ResponseTime: 0
aRspXml:<?xml version="1.0" encoding="UTF-8"?>   //rsp.add_field(OUTPUT_XML, rsp_xml);
 <CustomerInfo>
     <sourceFlag>1</sourceFlag>
     <Response>
         <Data>
             <LastName>aa</LastName>         //these are the fieds I need to mask
             <FirstName>aaa</FirstName>
             <PhoneNumber>aaaa</PhoneNumber>
             <Street>aaaa</Street>
             <City>aa</City>
             <State>aaaa</State>
             <Zip>aaa</Zip>
               .....
             [1] STATUS_CODE[1234] : num_inst = 1
          [0] 0
          [2] STATUS_DESC[12345] : num_inst = 1
             [0] "SUCCESS"
14:02:58 C--[abcInterfaceServer-1]:abc查询响应时间:0
aRspXml://rsp.add_字段(输出XML,rsp_XML);
1.
aa//这些是我需要掩饰的恶魔
aaa
aaaa
aaaa
aa
aaaa
aaa
.....
[1] 状态代码[1234]:num\u inst=1
[0] 0
[2] STATUS_DESC[12345]:num_inst=1
[0]“成功”
任何想法都会有帮助

  • 识别包含/打印敏感数据的对象
  • 添加另一种方法(例如,
    publicDataString()
    )将公共数据序列化为可打印字符串
  • 修改日志记录指令以使用此方法
或者,修改的
运算符或可能的重复项