muffin/crypt

安装: 590

依赖: 1

建议者: 0

安全: 0

星标: 5

关注者: 3

分支: 5

类型:cakephp-plugin

0.1.0 2017-09-13 08:56 UTC

This package is auto-updated.

Last update: 2024-08-28 01:12:58 UTC


README

Build Status Coverage Total Downloads License

允许 ORM 对数据进行(非)对称加密/解密的 CakePHP 3 行为。

特别感谢安全专家 @ircmaxell@voodooKobra工作进行了审查

自行承担风险使用。

安装

使用 Composer

composer require muffin/crypt

然后您需要加载插件。您可以使用以下 shell 命令

bin/cake plugin load Muffin/Crypt

或者通过手动添加以下语句到 bootstrap.php

Plugin::load('Muffin/Crypt');

用法

默认情况下,行为将使用 Cake\Utility\Security 并不会解密每个查找操作。当设置行为时,这两个配置都可以被覆盖。

$this->addBehavior('Muffin/Crypt.Crypt', [
    'fields' => ['cc_number', 'cc_cvv'],
    'strategy' => '\Muffin\Crypt\Model\Behavior\Strategy\AsymmetricStrategy',
    'implementedEvents' => [
        'Model.beforeSave' => 'beforeSave',
        'Model.beforeFind' => 'beforeFind',
    ]
]);

如果加密的字段属于特定类型(例如,POINT),并且当配置行为时指定,则行为将负责在数据之间进行转换。如果使用自定义类型,请确保将其添加到您的表中。

$this->addBehavior('Muffin/Crypt.Crypt', [
    'fields' => ['location' => 'point'],
]);

补丁和功能

  • 分支
  • 修改、修复
  • 测试 - 这很重要,所以它不会无意中损坏
  • 提交 - 不要更改许可证、todo、版本等。(如果确实更改了,请将它们放入自己的提交中,这样我在拉取时可以忽略它们)
  • 拉取请求 - 主题分支的加分项

为了确保您的 PR 被上游考虑,您必须遵循 CakePHP 编码标准

错误和反馈

http://github.com/usemuffin/crypt/issues

许可证

版权所有 (c) 2017, Use Muffin,许可协议为 MIT 许可证