will2therich / laravel-model-anonymizer
声明模型匿名化类以帮助匿名化数据。
1.0.0
2024-04-18 11:02 UTC
Requires
- laravel/framework: ^9.0|^10.0|^11.0
This package is auto-updated.
Last update: 2024-09-18 22:31:06 UTC
README
LaravelModelAnonymizer
LaravelModelAnonymizer 是一个 Laravel 扩展包,旨在帮助开发者匿名化模型中的现有数据。这在创建非生产数据集时特别有用,其中需要隐藏敏感信息,同时不影响应用程序数据的完整性。
安装
要安装此包,请在您的 Laravel 项目中运行以下命令
composer require will2therich/laravel-model-anonymizer
安装包后,您需要通过运行以下命令设置环境
php artisan model-anonymizer:install
此命令将在您的 app
文件夹下创建一个名为 Anonymize
的目录。在这里,您可以定义您的匿名化类。
创建匿名化类
匿名化类应放置在 app/Anonymize
目录中。每个类都必须实现 AnonymizeInterface
并定义每个模型属性应该如何匿名化。以下是一个入门示例
namespace App\Anonymize; use Faker\Factory; use Illuminate\Database\Eloquent\Model; use will2therich\LaravelModelAnonymizer\Contracts\AnonymizeInterface; class User implements AnonymizeInterface { public static $model = \App\Models\User::class; public static $name = "User"; public static function anonymize(Model $model) { $faker = Factory::create(); $model->email = $faker->unique()->email(); $model->save(); } }
- 将
anonymize
方法的内容替换为适合您特定模型需求的适当 Faker 方法。 - 将
$model
替换为所需的模型 - 将
$name
替换为要使用的命令名称
用法
设置匿名化类后,您可以通过运行以下命令匿名化数据库
php artisan db:model-anonymize
此命令将遍历您在 Anonymize
目录中定义的每个模型匿名化器,并相应地匿名化每个数据库项。
贡献
LaravelModelAnonymizer 欢迎贡献!请确保您的代码遵循 Laravel 编码标准,并为新功能或修复添加测试。
许可
此包是开源软件,许可协议为 MIT 许可。