seabeck.pages.dev

Como criar um script para auditar histórico de alterações de CPF?

Auditar o histórico de alterações de CPF é uma tarefa crítica para garantir a integridade e conformidade de dados em sistemas corporativos. Com um script automatizado, você elimina erros manuais, acelera o processo e mantém um registro confiável de todas as modificações. Este método é a forma mais eficiente de monitorar e validar alterações em tempo real.

Pré-requisitos

Passo 1: Criar o script de auditoria

O primeiro passo é criar um script Python que leia um arquivo CSV contendo o histórico de alterações de CPF. O script deve validar cada CPF e registrar as alterações suspeitas ou inválidas.

import csv
import re

def validar_cpf(cpf):
    cpf = re.sub(r'[^0-9]', '', cpf)
    if len(cpf) != 11:
        return False
    # Algoritmo de validação de CPF
    if cpf == cpf[0] * 11:
        return False
    # Cálculo do primeiro dígito verificador
    soma = sum(int(cpf[i]) * (10 - i) for i in range(9))
    resto = soma % 11
    digito1 = 0 if resto < 2 else 11 - resto
    # Cálculo do segundo dígito verificador
    soma = sum(int(cpf[i]) * (11 - i) for i in range(10))
    resto = soma % 11
    digito2 = 0 if resto < 2 else 11 - resto
    return str(digito1) == cpf[9] and str(digito2) == cpf[10]

def auditar_historico(arquivo_csv):
    alteracoes_invalidas = []
    with open(arquivo_csv, 'r') as arquivo:
        leitor = csv.DictReader(arquivo)
        for linha in leitor:
            cpf = linha['cpf']
            data_alteracao = linha['data_alteracao']
            if not validar_cpf(cpf):
                alteracoes_invalidas.append({
                    'cpf': cpf,
                    'data_alteracao': data_alteracao,
                    'status': 'inválido'
                })
    return alteracoes_invalidas

if __name__ == "__main__":
    arquivo = 'historico_cpf.csv'
    resultado = auditar_historico(arquivo)
    if resultado:
        print("Alterações inválidas encontradas:")
        for item in resultado:
            print(f"CPF: {item['cpf']}, Data: {item['data_alteracao']}, Status: {item['status']}")
    else:
        print("Nenhuma alteração inválida encontrada.")

Passo 2: Preparar o arquivo CSV de entrada

Crie um arquivo CSV chamado historico_cpf.csv com as colunas cpf e data_alteracao. Este arquivo deve conter o histórico de alterações que você deseja auditar.

cpf,data_alteracao
12345678901,2023-01-15
98765432100,2023-02-20
11111111111,2023-03-10

Passo 3: Executar o script

Com o arquivo CSV preparado, execute o script no terminal para auditar as alterações. O script irá validar cada CPF e exibir um relatório das alterações inválidas encontradas.

python auditar_cpf.py

Exemplo Prático

CPF Data de Alteração Status
12345678901 2023-01-15 válido
98765432100 2023-02-20 válido
11111111111 2023-03-10 inválido

Conclusão

Com este script, você automatiza a auditoria de histórico de alterações de CPF em segundos, garantindo precisão e conformidade. A validação algorítmica elimina erros manuais e fornece um relatório claro de todas as inconsistências encontradas.