devkind / simple-laravel-encryptable
1.01
2023-09-04 06:18 UTC
Requires
- php: ^7.4|^8.0
- ext-openssl: *
- illuminate/support: ^8.0
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
README
Laravel Encryptable Attributes 包为使用 Eloquent 模型在数据库中存储的数据提供无缝加密和解密。使用此包,所有值在存储前都会自动加密,在查询时会自动解密,确保数据在静态存储时的安全性,同时保持数据的可访问性。
这里应该是您的描述。尽量将其限制在一两段之内,并可能提及您支持的 PSRs 以避免与用户和贡献者产生混淆。
安装
您可以通过 composer 安装此包
composer require devkind/simple-laravel-encryptable
您可以使用以下命令发布配置文件
php artisan vendor:publish --provider="Devkind\SimpleLaravelEncryptable\SimpleLaravelEncryptableServiceProvider" --tag="simple-encryptable"
环境变量
以下是可用于调整加密的值
注意: ENCRYPTION_IV 是在使用此包前必须设置的 重要字段。
ENCRYPTION_KEY=
ENCRYPTION_CIPHER=
ENCRYPTION_IV=
ENCRYPTION_PREFIX=XXX
使用方法
要使用此包,只需将 Encryptable 特性添加到所有模型,并将您想要匿名化的数据库列名添加到 $encryptable。
<?php namespace App\Models; use Devkind\SimpleLaravelEncryptable\Encryptable; use Illuminate\Database\Eloquent\Model; class User extends Model { use Encryptable; protected $encryptable = [ 'password', ]; }
完成之后,所有值在存储到数据库之前都会被加密,在通过 Eloquent 查询时会自动解密。
通过 Facade 手动加密
use Devkind\SimpleLaravelEncryptable\SimpleEncryptable; $value = "your-decrypted-value"; $encrypted = SimpleEncryptable::encrypt($value); // returns the encrypted value
通过 Facade 手动解密
use Devkind\SimpleLaravelEncryptable\SimpleEncryptable; $encrypted = "your-encrypted-value"; $value = SimpleEncryptable::decrypt($value); // returns the decrypted value
测试
composer test
变更日志
请参阅变更日志以获取最近更改的更多信息。
贡献
有关详细信息,请参阅贡献指南。
安全性
如果您发现任何与安全相关的问题,请通过电子邮件backend@devkind.com联系,而不是使用问题跟踪器。
致谢
许可协议
MIT 许可协议(MIT)。有关更多信息,请参阅许可文件。
Laravel 包模板
此包是使用Laravel 包模板生成的。