Laravel扩展推荐:Ciphersweet包(加密/解密字段)

简介本篇文章给大家分享一个Laravel扩展:Ciphersweet包,介绍一下怎么利用LaravelCiphersweet来加密/解密Laravel中的Eloquent模型字段,希望对大家有所帮助!LaravelCiphersweet是由Spatie提供的一个包,用于在Laravel应用程序中集成可搜索的字段级加密。该包的readme解释了密码甜蜜可以帮助解决的问题,如下所示:在你的项目中,你可能会

  

本篇文章给大家分享一个Laravel扩展:Ciphersweet包,介绍一下怎么利用Laravel Ciphersweet 来加密/解密 Laravel 中的 Eloquent 模型字段,希望对大家有所帮助!

Laravel扩展推荐:Ciphersweet包(加密/解密字段)

LaravelCiphersweet是由Spatie提供的一个包,用于在Laravel应用程序中集成可搜索的字段级加密。该包的readme解释了密码甜蜜可以帮助解决的问题,如下所示:

在你的项目中,你可能会将敏感的个人数据存储在数据库中。如果未经授权的人访问你的数据库,则所有敏感数据都可以读取,这显然是不好的。

要解决此问题,你可以对个人数据进行加密。这样,未经授权的人无法读取它,但当你需要显示或使用数据时,你的应用程序仍然可以解密它。

这个包是Ciphersweet的包装器,可以轻松地将其功能集成到 Laravel 模型中。以下是自述文setup instructions中的模型示例,该示例说明了使用 Ciphersweet 模型的外

useSpatieLaravelCipherSweetContractsCipherSweetEncrypted;useSpatieLaravelCipherSweetConcernsUsesCipherSweet;useParagonIECipherSweetEncryptedRow;useIlluminateData EloquentModel;classUserextendsModelimplementsCipherSweetEncrypted{useUsesCipherSweet;publicstaticfunctionconfigureCipherSweet(EncryptedRow$encryptedRow):void{$encryptedRow->addField('email')->addBlindIndex('email',newBlindIndex('email_index'));}}

这允许你加密用户的电子邮件,以防止未经授权的人读取数据,但允许你解密数据以显示或使用它。

一旦你配置了此包并设置了模型,你就可以使用盲索引在数据库中搜索加密数据:

$user=User::whereBlind('email','email_index','rias@spatie.be');

此包还有助于生成加密密钥和加密模型属性,以加快与密码的集成。

我想指出的是,你不应该在不了解你试图解决的用例的来龙去脉的情况下盲目地使用这个包。你可以在此页面上了解有关 CipherSweet 的更多信息,其中包含许多链接资源

CipherSweet 还具有PHP 特定文档可帮助您快速了解底层 PHP 包。

我还建议阅读 Rias 的帖子,使用 CipherSweet 加密 Laravel Eloquent 模型。

要开始使用这个包,请在 GitHub 上的spatie/laravel-ciphersweet上查看它。

下载链接:网站源码/小程序源码/网站模板下载

网站技巧

PHP+ajax大文件分片上传示例代码

2025-2-13 21:37:45

网站技巧

linux 定时任务

2025-2-24 21:20:18

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧