jc-it/secrets

v1.0.0 2022-01-12 15:44 UTC

This package is auto-updated.

Last update: 2024-09-12 22:35:11 UTC


README

codecov Continous integration Packagist Total Downloads Packagist Monthly Downloads GitHub tag (latest by date) Packagist Version

此包提供秘密存储。

安装

安装此扩展的首选方式是通过 composer

运行以下命令

$ composer require jc-it/secrets

或者将以下内容添加到你的 composer.json 文件的 require 部分。

"jc-it/secrets": "^<latest version>"

配置

建议仅在应用程序加载前在配置文件中使用此包,这样它们就不会在崩溃或其他意外情况下被应用程序丢弃。

$secrets = new \JCIT\secrets\Secrets(
    new \JCIT\secrets\storages\Chained(
        new \JCIT\secrets\storages\Cache(getenv()),
        new \JCIT\secrets\storages\Json('/run/env.json'),
        new \JCIT\secrets\storages\Filesystem(__DIR__ . '/secrets'),
    )
);

注意,在 Chained 存储中的顺序很重要,找到的第一个秘密值将被返回。

用法

初始化后,只需调用以下代码

$secrets->get('<secret>', '<optional default value>');

要确保设置了秘密,请使用

$secrets->getAndThrowOnNull('<secret>');

扩展

为了实现自己的存储,只需扩展 \JCIT\secrets\interfaces\StorageInterface

待办事项

致谢