agz/laravel-gcp-secret-injector

在您的Laravel环境中包含GCP密钥,无需在.env文件中显式声明

0.0.1 2024-03-08 21:40 UTC

This package is auto-updated.

Last update: 2024-09-08 22:56:26 UTC


README

此软件包帮助将敏感数据从您的Google Cloud Secret Manager加载到Laravel环境中,而不是在.env文件中显式定义。

先决条件

您需要已经在项目中安装了 google/cloud-secret-manager

安装

您可以通过composer安装此软件包

composer require agz/laravel-secret-injector

要发布配置文件,运行供应商发布命令

php artisan vendor:publish --tag=gcp-secret-injector

配置

发布密钥注入资产后,其配置将位于config/secret-injector.php。配置允许您配置您的环境变量与Google Cloud密钥相对应。

return [

    'project_id' => env('GOOGLE_CLOUD_PROJECT'),
    'includedEnvs' => ['production'],
    'secrets' => []
];

project_id 指向您Google Cloud项目ID。 includedEnvs 指定配置库应激活的环境。例如,默认配置为仅生产环境。这意味着一旦您的APP_ENV设置为生产,则库将从Google Cloud Secret Manager中提取密钥到您的环境。

secrets 用于配置哪些环境变量应指向哪些密钥。

'secrets' => [
        'ENVIROMENTAL_VARIABLE' => 'SECRET_NAME:VERSION',
    ]

例如

'secrets' => [
        'APP_KEY' => 'APP_KEY:latest',
        'DB_PASSWORD' => 'DB_PASSWORD:1',
    ]

测试

composer test

贡献者

许可

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