broadway / sensitive-data
使用 Broadway 处理敏感数据的小助手
0.4.0
2020-03-07 13:16 UTC
Requires
- php: >=7.2
- broadway/broadway: ^2.3.1
Requires (Dev)
- broadway/coding-standard: ^1.0
- phpstan/phpstan: @stable
- phpunit/phpunit: ^8.0
This package is auto-updated.
Last update: 2024-08-31 00:26:24 UTC
README
使用 Broadway 处理敏感数据的小助手。
安装
$ composer require broadway/sensitive-data
关于
在一个事件源环境中,你可能需要处理最终进入事件流中的敏感数据(例如个人数据)。你可以加密你的事件流或在一定数量或时间后(向上转换)从你的事件流中删除敏感数据。或者,你也可以选择完全不在事件流中存储敏感数据。这就是这个项目发挥作用的地方。
想象一下这样一个用例:客户想用信用卡支付订单,但你被禁止存储信用卡号码。
一个包含信用卡号码的 PayWithCreditCardCommand
应该导致一个没有信用卡号码的 PaymentWithCreditCardRequestedEvent
,但是处理事件的 Processor
需要知道信用卡号码。
该项目引入了一个 SensitiveDataManager
,它可以注入到 CommandHandler
中,以捕获命令中的敏感数据并将其提供给 SensitiveDataProcessor
,从而绕过事件存储。
优点
- 敏感数据不会存储在你的事件流中
- 不需要对事件进行加密或向上转换
缺点
- 敏感数据的处理只能在每个请求中执行一次
示例
可以在examples/
目录中找到详细的示例和测试用例。
许可证
该项目使用 MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件。