dejury/laravel-envcrypt

此包将帮助您在版本管理中维护不同的.env文件。当然,您可以对文件进行加密,以便安全地推送到版本控制。

v1.0.0 2020-08-05 14:04 UTC

This package is auto-updated.

Last update: 2024-09-06 16:50:52 UTC


README

Latest Version on Packagist Total Downloads

此包允许您将通常存储在.env文件中的某些值存储在加密文件中,这些文件可以是版本控制的一部分。它支持存储多个环境,并自动加载当前环境的变量。它们将在env()函数中可用。

受以下包启发

BeyondCode laravel-credentials
Stechstudio Laravel Env Security

安装

您可以通过composer安装此包

composer require dejury/laravel-envcrypt

通过执行以下命令将相应的配置文件复制到您的laravel目录

php artisan vendor:publish --provider="Dejury\Envcrypt\EnvcryptServiceProvider"

强烈建议使用除默认应用程序密钥之外的另一个加密密钥。还强烈建议不要将加密密钥存储在版本控制中。您可以在配置中设置可用的环境,这可以让应用程序知道要保存哪些环境(如果您选择保存所有环境)。

默认情况下,加密文件存储在您的laravel项目根目录下,您可以在配置中更改此设置。

使用方法

php artisan envcrypt:add KEY_NAME

将保存或编辑执行命令期间请求的值的相应KEY_NAME。您还可以设置环境或选择存储到所有环境。

php artisan envcrypt:remove KEY_NAME

将删除相应的KEY_NAME。您还可以设置环境或选择删除到所有环境。

php artisan envcrypt:view ENVIRONMENT

查看该环境的所有存储值。将以JSON格式显示。

$encryptedEnv = env('KEY_NAME'); // just like you are used to in Laravel

测试

composer test

此包安全吗?

此包的目标是加密存储某些ENV变量。例如API_KEY。您可以将它们安全地存储在版本控制中,并在部署的服务器上自动可用。
这使得通过所有不同的环境部署ENV变量变得更加容易。

当然:此包使用密钥来加密和解密数据。密钥应安全存储,以防止不受欢迎的人解密。只要有人可以访问服务器,就总是可以使用 artisan 命令或手动解密文件来查看解密值。与存储明文值相比,此包在版本控制中始终是更好的选择。

变更日志

请参阅CHANGELOG以获取有关最近更改的更多信息。

贡献

请参阅CONTRIBUTING以获取详细信息。

安全

如果您发现任何安全相关的问题,请通过电子邮件jonathan@hafka.mp联系,而不是使用问题跟踪器。

致谢

许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。

Laravel Package Boilerplate

此包是使用Laravel Package Boilerplate生成的。