pantheon-systems / customer-secrets-php-sdk
支持客户密钥项目库
Requires
- php: ^8.0
- ext-json: *
Requires (Dev)
- g1a/composer-test-scenarios: ^3.2
- phpunit/phpunit: ^9
- squizlabs/php_codesniffer: ^3.6
- symfony/polyfill: ^1.28
- yoast/phpunit-polyfills: ^2.0
This package is auto-updated.
Last update: 2024-09-23 19:55:58 UTC
README
此库应用于访问 Pantheon 站点密钥(目前处于 EA 阶段)。
早期访问
密钥功能目前对早期访问参与者可用。密钥功能正在积极开发中。Pantheon 的开发团队在产品处于早期访问阶段时经常推出新功能。请访问 Pantheon Slack 频道(如果您还没有账户,请先注册账户)以了解如何报名参加我们的早期访问计划。请查阅 Pantheon 的软件评估许可条款,了解有关访问我们软件的更多信息。
安装
使用 composer 安装
composer require pantheon-systems/customer-secrets-php-sdk
用法
在您的 PHP 代码中,执行以下操作
use PantheonSystems\CustomerSecrets\CustomerSecrets;
$client = CustomerSecrets::create()->getClient();
$secret = $client->getSecret('foo');
$secret_value = $secret->getValue();
// You could also get all of your secrets like this:
$secrets = $client->getSecrets();
请参阅包含的类和内部文档以获取更多示例和使用案例。
注意:目前只实现了 get。您应通过 terminus 使用 Terminus Secrets Manager 处理您的密钥。
请参阅我们的详细 Drupal 或 WordPress 示例,以获取更详细的全流程示例。
本地环境使用
SDK 包含一个 CustomerSecretsFakeClient
实现,当 SDK 在 Pantheon 基础设施之外运行时使用。此客户端使用一个密钥 json 文件来构建密钥信息,模拟使用 Secrets 服务在平台上发生的情况。
要获取此文件,您应使用 插件 命令 secret:site:local-generate
,然后设置一个名为 CUSTOMER_SECRETS_FAKE_FILE
的环境变量到您的本地环境(如果您正在运行 dockerized 环境,则为 docker 容器),并使用文件绝对路径作为值。
Lando 示例
要使用 lando 设置此,您应修改您的 .lando.yml
如下
services:
appserver:
overrides:
environment:
CUSTOMER_SECRETS_FAKE_FILE: /app/secrets.json
然后,按照以下方式生成密钥文件
terminus secret:site:local-generate --filepath=./secrets.json
然后,重新构建 lando 应用程序
lando rebuild -y
然后,您将通过 SDK 使用您的密钥。
限制
此 SDK 只会读取作用域为 web
的密钥。密钥在服务器上缓存 15 分钟,因此如果您修改了网站密钥,您应该等待(最多)那么长时间。