rto-websites/laravel-credentials

在您的Laravel应用程序中存储和访问加密凭证。

2.1.0 2020-03-17 08:24 UTC

This package is auto-updated.

Last update: 2024-09-17 18:53:35 UTC


README

Latest Version on Packagist Build Status Quality Score Total Downloads

由于原始包似乎不再维护,这是对beyondcode/laravel-credentials包的修改。有关迁移方法,请参见此处

rto-websites/laravel-credentials包允许您将所有秘密凭证存储在加密文件中,并将该文件放入版本控制,而不是在您的生产环境中将多个凭证添加到.env文件中。

使用加密凭证而不是环境密钥的好处

  • 您的凭证已加密。没有密钥,没有人能读取您的凭证。
  • 加密凭证保存在您的仓库中。您将拥有变更历史记录和变更者信息。
  • 您可以将凭证与代码一起部署。
  • 所有秘密都在一个位置。您只需管理一个文件,而不是多个环境变量。

以下是访问存储凭证的方法。在本例中,我们正在检索密钥api-password的解密凭证。

$credential = credentials('api-password');

您还可以指定一个回退值,如果指定的密钥的凭证无法解密时将使用该值。

$credential = credentials('my-production-token', 'my-fallback-value');

使用内置的编辑命令,您可以轻松地编辑现有的凭证。保存更改后,它们将自动加密。

php artisan credentials:edit

Credentials Demo

安装

您可以通过Composer安装此包。

composer require rto-websites/laravel-credentials

该包将自动注册自身。

您可以选择使用以下命令发布配置:

php artisan vendor:publish --provider="RtoWebsites\Credentials\CredentialsServiceProvider" --tag="config"

这是已发布配置文件的内容

<?php

return [

    /*
     * Defines the file that will be used to store and retrieve the credentials.
     */
    'file' => config_path('credentials.php.enc'),

    /**
     *
     */
    'editor' => env('CREDENTIALS_EDITOR', 'vi'),

    /*
     * Defines the key that will be used to encrypt / decrypt the credentials.
     * The default is your application key. Be sure to keep this key secret!
     */
    'key' => config('app.key'),

    'cipher' => config('app.cipher'),

];

迁移

如果您即将从原始包迁移到此包,您可能需要对您的项目进行一些小的调整。

在大多数情况下,您只需执行以下三个步骤

  1. 运行 composer require rto-websites/laravel-credentials
  2. 从您的 composer.json 中删除 beyondcode/laravel-credentials
  3. 运行 composer update beyondcode/laravel-credentials

如果您已发布配置文件,您需要将此行添加到您的 config/credentials.php

'editor' => env('CREDENTIALS_EDITOR', 'vi'),

如果您没有使用包自动发现,而是手动注册服务提供程序,则需要根据服务提供程序的命名空间更改进行小的调整。
前往您的 config/app.php 并将 BeyondCode\Credentials\CredentialsServiceProvider::class 替换为 RtoWebsites\Credentials\CredentialsServiceProvider::class

测试

composer test

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

贡献

有关详细信息,请参阅CONTRIBUTING

安全

如果您发现任何与安全相关的问题,请通过marcel@beyondco.de发送电子邮件,而不是使用问题跟踪器。

鸣谢

许可

MIT许可(MIT)。有关更多信息,请参阅许可文件