fundamental-studio/laravel-encryptable
Laravel Encryptable 扩展,使用最多4行代码轻松加密/解密数据库值。
Requires
- illuminate/support: ^7.0
Requires (Dev)
- orchestra/testbench: ^5.0|6.0
This package is auto-updated.
Last update: 2024-09-29 05:48:47 UTC
README
Laravel Encryptable 扩展,使用最多4行代码轻松加密/解密数据库值。
- 一个特质,可用于所有模型。
- 指定所有需要或不需要加密的属性。
- 在创建/更新时自动加密数据。
- 在检索和属性访问时自动解密值。
- 可与所有可用的数据库一起使用。请注意数据的长度。
- 同时尊重类型转换和日期字段。
- 底层使用 Laravel 的 Crypt 特质。
- 尊重属性的类型转换和变异。
由 Fundamental Studio Ltd. 用爱和代码制作。
安装
该包与 Laravel 7+ 版本兼容。
通过 composer
$ composer require fundamental-studio/laravel-encryptable
安装后,Laravel 应自动发现此包。就是这样。您已准备好开始使用了。
文档和用法说明
我们包的使用非常流畅和简单。首先,您需要使用我们包的正确命名空间
use Fundamental\Encryptable\Encryptable;
然后,在您的 Eloquent 模型中使用此特质,如下所示
class User extends Model { use Encryptable; // The rest of your model. }
然后,您可以指定要加密或不需要加密的属性
protected $encryption = [ 'attribute_1', 'attribute_2', 'attribute_3' ];
您还可以指定
protected $encryptAll = true;
并使用 skipEncryption 规则为那些应被省略的属性。
protected $skipEncryption = [ 'attribute_4', 'attribute_5' ];
默认情况下,id 和时间戳字段被省略。
方法
该包尽可能简单。它包含一个特质,该特质重写了默认的 setAttribute 和 getAttributeValue 方法。您可以在 Laravel API 文档 中找到更多关于它们的信息。
没有公开暴露的方法应该使用。
变更日志
所有更改均可在我们的 Changelog 文件中找到。
支持
对于任何进一步的问题、功能请求、问题、想法等,您可以在问题跟踪器中创建问题,或通过 support@fundamental.bg 联系我们
贡献
阅读贡献文件以获取更多信息。
致谢
- Konstantin Rachev
- Vanya Ananieva
该包由 Fundamental Studio Ltd. 的团队捆绑并贡献给社区。
问题
如果您发现任何问题,请使用问题跟踪器。
安全
如果您发现任何与安全相关的问题,请通过 konstantin@fundamental.bg 或 support@fundamental.bg 发送电子邮件,而不是使用问题跟踪器。
许可
MIT 许可证(MIT)。有关更多信息,请参阅许可证文件。