egeniq/monolog-gdpr

一些Monolog处理器,有助于满足GDPR下的安全要求。

v2.0.0 2022-05-30 12:26 UTC

This package is not auto-updated.

Last update: 2024-09-16 23:17:43 UTC


README

一些Monolog处理器,有助于满足GDPR下的安全要求。这些处理器将用其SHA-1等效值替换数据,同时您仍然可以搜索日志

警告:这些处理器将json序列化您的 $context。这可能会导致一些不期望的副作用。

安装

使用以下命令安装最新版本

$ composer require egeniq/monolog-gdpr

加盐散列

此库支持使用 processor->setSalt(<salt>) 加盐散列。要计算散列值,您可以使用以下bash命令

$ echo -n 'foo@bar.com<YourSalt>' | openssl sha1

RedactEmailProcessor

将所有电子邮件地址替换为其SHA-1散列。

用法

<?php

use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Egeniq\Monolog\Gdpr\Processor\RedactEmailProcessor;

$log = new Logger('name');
$log->pushHandler(new StreamHandler('path/to/your.log', Logger::WARNING));

$processor = new RedactEmailProcessor();
// optionally you may configure a salt:
$processor->setSalt('h@tsefl@ts!');
$log->pushProcessor($processor);

$log->log(Logger::DEBUG, 'This is a test for foo@bar.com', ['foo' => ['bar' => 'foo@bar.com']]);

RedactIpProcessor

将所有IPv4地址替换为其SHA-1散列。

用法

<?php

use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Egeniq\Monolog\Gdpr\Processor\RedactIpProcessor;

$log = new Logger('name');
$log->pushHandler(new StreamHandler('path/to/your.log', Logger::WARNING));

$processor = new RedactIpProcessor();

// optionally you may configure a salt:
$processor->setSalt('h@tsefl@ts!');
$log->pushProcessor($processor);

$log->log(Logger::DEBUG, 'This is a test for 127.0.0.1', ['foo' => ['bar' => '127.0.0.1']]);

许可证

该软件包采用MIT许可证授权 - 详细信息请参阅LICENSE文件