mirror of
https://github.com/hoshikawa2/python_redaction.git
synced 2026-03-06 10:11:01 +00:00
first commit
This commit is contained in:
19
redact.py
19
redact.py
@@ -23,7 +23,13 @@ Messages = [
|
||||
"Erro na validação do schema: None is not of type 'object' Failed validating 'type' in schema: {'properties': {'calendario': {'$ref': '#/components/schemas/CalendarioCob', 'x-scope': ['']}, 'chave': {'description': 'Obrigat\\xf3rio - Determina a ' 'chave Pix registrada no DICT ' 'que ser\\xe1 utilizada para a ' 'cobran\\xe7a.', 'example': '7d9f0335-8dcc-4054-9bf9-0dbd61d36906', 'maxLength': 77, 'type': 'string'}, 'devedor': {'$ref': '#/components/schemas/IPessoaCob', 'x-scope': ['']}, 'infoAdicionais': {'description': 'Cada respectiva ' 'informa\\xe7\\xe3o ' 'adicional contida ' 'na lista (nome e ' 'valor) ser\\xe1 ' 'apresentada ao ' 'pagador.', 'items': {'$ref': '#/components/schemas/InformacaoAdicional', 'x-scope': ['']}, 'maxLength': 50, 'type': 'array'}, 'loc': {'$ref': '#/components/schemas/LocationPayloadID', 'x-scope': ['']}, 'solicitacaoPagador': {'description': 'Determina um ' 'texto a ser ' 'apresentado ao ' 'pagador para ' 'que ele possa ' 'digitar uma ' 'informa\\xe7\\xe3o ' 'correlata.', 'example': 'Servi\\xe7o realizado.', 'maxLength': 140, 'type': 'string'}, 'valor': {'$ref': '#/components/schemas/ValorCob', 'x-scope': ['']}}, 'required': ['calendario', 'chave', 'valor'], 'type': 'object'} On instance: None",
|
||||
"Mensagem de erro: 'valor' is a required property Failed validating 'required' in schema: {'properties': {'calendario': {'$ref': '#/components/schemas/CalendarioCob', 'x-scope': ['']}, 'chave': {'description': 'Obrigat\\xf3rio - Determina a ' 'chave Pix registrada no DICT ' 'que ser\\xe1 utilizada para a ' 'cobran\\xe7a.', 'example': '7d9f0335-8dcc-4054-9bf9-0dbd61d36906', 'maxLength': 77, 'type': 'string'}, 'devedor': {'$ref': '#/components/schemas/IPessoaCob', 'x-scope': ['']}, 'infoAdicionais': {'description': 'Cada respectiva ' 'informa\\xe7\\xe3o ' 'adicional contida ' 'na lista (nome e ' 'valor) ser\\xe1 ' 'apresentada ao ' 'pagador.', 'items': {'$ref': '#/components/schemas/InformacaoAdicional', 'x-scope': ['']}, 'maxLength': 50, 'type': 'array'}, 'loc': {'$ref': '#/components/schemas/LocationPayloadID', 'x-scope': ['']}, 'solicitacaoPagador': {'description': 'Determina um ' 'texto a ser ' 'apresentado ao ' 'pagador para ' 'que ele possa ' 'digitar uma ' 'informa\\xe7\\xe3o ' 'correlata.', 'example': 'Servi\\xe7o realizado.', 'maxLength': 140, 'type': 'string'}, 'valor': {'$ref': '#/components/schemas/ValorCob', 'x-scope': ['']}}, 'required': ['calendario', 'chave', 'valor'], 'type': 'object'} On instance: {'calendario': {'expiracao': 3600}, 'chave': '1eeeb615-93af-4923-a40f-16d057f9e23d', 'devedor': {'cpf': '12345678900', 'nome': 'teste'}, 'solicitacaoPagador': 'Servi\\xe7o realizado.', 'teste': 'teste'}",
|
||||
"Mensagem de erro: 'chave' is a required property Failed validating 'required' in schema: {'properties': {'calendario': {'$ref': '#/components/schemas/CalendarioCob', 'x-scope': ['']}, 'chave': {'description': 'Obrigat\\xf3rio - Determina a ' 'chave Pix registrada no DICT ' 'que ser\\xe1 utilizada para a ' 'cobran\\xe7a.', 'example': '7d9f0335-8dcc-4054-9bf9-0dbd61d36906', 'maxLength': 77, 'type': 'string'}, 'devedor': {'$ref': '#/components/schemas/IPessoaCob', 'x-scope': ['']}, 'infoAdicionais': {'description': 'Cada respectiva ' 'informa\\xe7\\xe3o ' 'adicional contida ' 'na lista (nome e ' 'valor) ser\\xe1 ' 'apresentada ao ' 'pagador.', 'items': {'$ref': '#/components/schemas/InformacaoAdicional', 'x-scope': ['']}, 'maxLength': 50, 'type': 'array'}, 'loc': {'$ref': '#/components/schemas/LocationPayloadID', 'x-scope': ['']}, 'solicitacaoPagador': {'description': 'Determina um ' 'texto a ser ' 'apresentado ao ' 'pagador para ' 'que ele possa ' 'digitar uma ' 'informa\\xe7\\xe3o ' 'correlata.', 'example': 'Servi\\xe7o realizado.', 'maxLength': 140, 'type': 'string'}, 'valor': {'$ref': '#/components/schemas/ValorCob', 'x-scope': ['']}}, 'required': ['calendario', 'chave', 'valor'], 'type': 'object'} On instance: {'calendario': {'expiracao': 3600}, 'devedor': {'cpf': '12345678900', 'nome': 'teste'}, 'solicitacaoPagador': 'Servi\\xe7o realizado.', 'teste': 'teste', 'valor': {'original': '2.44'}}",
|
||||
"Mensagem de erro:{'cpf': '123455968767', 'nome': 'Manoel da Silva'} is not valid under any of the given schemas Failed validating 'oneOf' in schema['properties']['devedor']: {'description': 'Identifica o devedor, ou seja, a pessoa ou a ' 'institui\\xe7\\xe3o a quem a cobran\\xe7a est\\xe1 endere\\xe7ada.', 'oneOf': [{'$ref': '#/components/schemas/PessoaFisicaCob', 'x-scope': ['', '#/components/schemas/IPessoaCob']}, {'$ref': '#/components/schemas/PessoaJuridicaCob', 'x-scope': ['', '#/components/schemas/IPessoaCob']}], 'properties': {'nome': {'type': 'string'}}, 'type': 'object'} On instance['devedor']: {'cpf': '12312312322', 'nome': 'Cristiano'}"
|
||||
"Mensagem de erro:{'cpf': '123455968767', 'nome': 'Manoel da Silva'} is not valid under any of the given schemas Failed validating 'oneOf' in schema['properties']['devedor']: {'description': 'Identifica o devedor, ou seja, a pessoa ou a ' 'institui\\xe7\\xe3o a quem a cobran\\xe7a est\\xe1 endere\\xe7ada.', 'oneOf': [{'$ref': '#/components/schemas/PessoaFisicaCob', 'x-scope': ['', '#/components/schemas/IPessoaCob']}, {'$ref': '#/components/schemas/PessoaJuridicaCob', 'x-scope': ['', '#/components/schemas/IPessoaCob']}], 'properties': {'nome': {'type': 'string'}}, 'type': 'object'} On instance['devedor']: {'cpf': '12312312322', 'nome': 'Cristiano'}",
|
||||
"User's SSN: 123-45-6789",
|
||||
"User's Credit Card: 1234 5678 9012 3456",
|
||||
"User's phone number: (123) 456-7890",
|
||||
"User's date of birth: 04/29/1990",
|
||||
"User's IP address: 192.168.1.1",
|
||||
"User's API key: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6"
|
||||
]
|
||||
|
||||
def redact(sensitive_pattern, attribute_pattern, message):
|
||||
@@ -76,17 +82,10 @@ def repl_value(message, pattern, r):
|
||||
|
||||
def change(sensitive_pattern, message):
|
||||
for pattern in sensitive_pattern:
|
||||
return re.sub(pattern, "<REDACTED>", message)
|
||||
message = re.sub(pattern, "<REDACTED>", message)
|
||||
return message
|
||||
|
||||
if __name__ == "__main__":
|
||||
# logger.info("User's SSN: 123-45-6789")
|
||||
# logger.info("User's Credit Card: 1234 5678 9012 3456")
|
||||
# logger.info("User's phone number: (123) 456-7890")
|
||||
# logger.info("User's date of birth: 04/29/1990")
|
||||
# logger.info("User's IP address: 192.168.1.1")
|
||||
# logger.info("User's API key: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6")
|
||||
|
||||
#print(change(SENSITIVE_PATTERNS, "User's SSN: 123-45-6789"))
|
||||
for message in Messages:
|
||||
message = redact(sensitive_pattern=SENSITIVE_PATTERNS, attribute_pattern=ATTRIBUTE_PATTERNS, message=message)
|
||||
print(message)
|
||||
|
||||
Reference in New Issue
Block a user