-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
6c4d7a4
commit b740a51
Showing
21 changed files
with
2,047 additions
and
49 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"version":1,"defects":{"Unit\\Anonymizers\\CreditCardAnonymizerTest::testAnonymizeCreditCardNumber":7,"Unit\\Anonymizers\\CreditCardAnonymizerTest::testAnonymizeWithDifferentSeparators":8,"Unit\\Anonymizers\\CreditCardAnonymizerTest::testAnonymizeWithoutCreditCardNumber":8,"Unit\\Detectors\\PhoneDetectorTest::testDetectsPhone#5":7},"times":{"Unit\\Anonymizers\\BirthDateAnonymizerTest::testAnonymizeWithDashedDateFormat":0.081,"Unit\\Anonymizers\\BirthDateAnonymizerTest::testAnonymizeWithSlashedDateFormat":0,"Unit\\Anonymizers\\BirthDateAnonymizerTest::testAnonymizeWithoutDate":0,"Unit\\Anonymizers\\CreditCardAnonymizerTest::testAnonymizeCreditCardNumber":0,"Unit\\Anonymizers\\CreditCardAnonymizerTest::testAnonymizeWithDifferentSeparators":0,"Unit\\Anonymizers\\CreditCardAnonymizerTest::testAnonymizeWithoutCreditCardNumber":0,"Unit\\Anonymizers\\EmailAnonymizerTest::testAnonymizeEmailAddress":0,"Unit\\Anonymizers\\EmailAnonymizerTest::testAnonymizeMultipleEmailAddresses":0,"Unit\\Anonymizers\\EmailAnonymizerTest::testAnonymizeWithoutEmailAddress":0,"Unit\\Anonymizers\\PhoneAnonymizerTest::testAnonymizePhoneNumber":0,"Unit\\Anonymizers\\PhoneAnonymizerTest::testAnonymizeMultiplePhoneNumbers":0,"Unit\\Anonymizers\\PhoneAnonymizerTest::testAnonymizeWithoutPhoneNumber":0,"Unit\\Detectors\\BirthDateDetectorTest::testDetectsBrazilianFormatDate":0.014,"Unit\\Detectors\\BirthDateDetectorTest::testDetectsISOFormatDate":0,"Unit\\Detectors\\BirthDateDetectorTest::testDetectsDate#with pt-br date":0,"Unit\\Detectors\\BirthDateDetectorTest::testDetectsDate#with iso date":0,"Unit\\Detectors\\BirthDateDetectorTest::testDetectsDate#without date":0,"Unit\\Detectors\\BirthDateDetectorTest::testDetectsDate#without iso date":0,"Unit\\Detectors\\CreditCardDetectorTest::testDetectsCreditCard#0":0,"Unit\\Detectors\\CreditCardDetectorTest::testDetectsCreditCard#1":0,"Unit\\Detectors\\CreditCardDetectorTest::testDetectsCreditCard#2":0,"Unit\\Detectors\\CreditCardDetectorTest::testDetectsCreditCard#3":0,"Unit\\Detectors\\CreditCardDetectorTest::testDetectsCreditCard#4":0,"Unit\\Detectors\\CreditCardDetectorTest::testDetectsCreditCard#5":0,"Unit\\Detectors\\CreditCardDetectorTest::testDetectsCreditCard#6":0,"Unit\\Detectors\\EmailDetectorTest::testDetectsEmail#0":0,"Unit\\Detectors\\EmailDetectorTest::testDetectsEmail#1":0,"Unit\\Detectors\\EmailDetectorTest::testDetectsEmail#2":0,"Unit\\Detectors\\EmailDetectorTest::testDetectsEmail#3":0,"Unit\\Detectors\\PhoneDetectorTest::testDetectsPhone#0":0,"Unit\\Detectors\\PhoneDetectorTest::testDetectsPhone#1":0,"Unit\\Detectors\\PhoneDetectorTest::testDetectsPhone#2":0,"Unit\\Detectors\\PhoneDetectorTest::testDetectsPhone#3":0,"Unit\\Detectors\\PhoneDetectorTest::testDetectsPhone#4":0,"Unit\\Detectors\\PhoneDetectorTest::testDetectsPhone#5":0}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"version":1,"defects":[],"times":{"Unit\\Anonymizers\\BirthDateAnonymizerTest::testAnonymizeWithDashedDateFormat":0.092,"Unit\\Anonymizers\\BirthDateAnonymizerTest::testAnonymizeWithSlashedDateFormat":0,"Unit\\Anonymizers\\BirthDateAnonymizerTest::testAnonymizeWithoutDate":0}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -14,3 +14,63 @@ Para instalar a biblioteca em seu projeto, utilize o gerenciador de pacotes Comp | |
```bash | ||
composer require ananiaslitz/facelesslog | ||
``` | ||
## Características | ||
- Flexibilidade: Fácil de integrar com qualquer aplicação PHP. | ||
- Configuração Customizável: Suporta configuração personalizada para ativar/desativar detectores e anonimizadores específicos. | ||
- Singleton/Factory Pattern: Implementação eficiente para garantir a gestão otimizada de recursos. | ||
- Mapeamento Detector-Anonimizador: Eficiência aprimorada com anonimizadores mapeados para detectores específicos. | ||
- Suporte a Testes Unitários: Compatível com PHPUnit para testes confiáveis e robustos. | ||
- Logging de Erros e Exceções: Registra erros e exceções para manutenção e monitoramento fáceis. | ||
- Documentação e Exemplos: Documentação detalhada e exemplos práticos para facilitar o uso. | ||
- Compatibilidade com Frameworks: Integrações disponíveis para frameworks populares como Laravel e Symfony. | ||
## Configuração | ||
Aqui está um exemplo de como você pode configurar e usar o facelesslog: | ||
|
||
```php | ||
// Exemplo de uso do FacelessLogger | ||
$logger = FacelessLogger::getInstance(); | ||
|
||
// Adicionar detectores e anonimizadores conforme necessário | ||
$logger->addDetector(new EmailDetector(), new EmailAnonymizer()); | ||
// ... | ||
|
||
// Processar uma mensagem | ||
$message = "User email is [email protected]"; | ||
$anonymizedMessage = $logger->processMessage($message); | ||
|
||
echo $anonymizedMessage; // Saída será uma versão anonimizada da mensagem | ||
``` | ||
|
||
## Criação de Detectores e Anonimizadores Customizados | ||
A biblioteca facelesslog foi projetada com flexibilidade em mente, permitindo que os usuários ampliem sua funcionalidade de acordo com suas necessidades específicas. Para criar seus próprios Detectores e Anonimizadores, basta implementar as interfaces DetectorInterface e AnonymizerInterface. | ||
|
||
#### Implementando a DetectorInterface | ||
A DetectorInterface é uma interface simples que requer a implementação do método detect, que retorna um booleano. Este método é responsável por verificar se uma mensagem contém um certo tipo de informação sensível que você deseja detectar. | ||
|
||
```php | ||
class CustomDetector implements DetectorInterface | ||
{ | ||
public function detect(string $message): bool | ||
{ | ||
// Lógica para detectar uma informação específica na mensagem | ||
} | ||
} | ||
``` | ||
#### Implementando a AnonymizerInterface | ||
A AnonymizerInterface também é uma interface direta que exige a implementação do método anonymize. Este método deve retornar a mensagem com as informações sensíveis anonimizadas ou ocultadas. | ||
```php | ||
class CustomAnonymizer implements AnonymizerInterface | ||
{ | ||
public function anonymize(string $message): string | ||
{ | ||
// Lógica para anonimizar informações sensíveis na mensagem | ||
} | ||
} | ||
``` | ||
|
||
## Contribuição | ||
Sua contribuição é bem-vinda! Se você deseja melhorar a facelesslog, sinta-se à vontade para fazer um fork do repositório e enviar suas pull requests. Para bugs, questões e discussões, por favor, use a seção de issues do GitHub. | ||
|
||
## Licença | ||
Distribuído sob a licença MIT. Veja LICENSE para mais informações. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.