Vaultシークレット
Vaultは、最新のコンピューティングにおけるトークン、パスワード、証明書、キー、およびその他のシークレットへのアクセスを保護、保存、および厳密に制御します。Vault拡張機能は、パイプラインにVaultシークレットへのアクセスを提供します。
インストール
- 共有シークレットを作成します。
$ openssl rand -hex 16
bea26a2221fd8090ea38720fc445eca6
- 拡張機能をダウンロードして実行します。
$ docker run -d \
--publish=3000:3000 \
--env=DRONE_DEBUG=true \
--env=DRONE_SECRET=bea26a2221fd8090ea38720fc445eca6 \
--env=VAULT_ADDR=... \
--env=VAULT_TOKEN=... \
--restart=always \
--name=secrets \
drone/vault
- Droneランナーの構成を更新して、拡張アドレスと共有シークレットを含めます。
DRONE_SECRET_PLUGIN_ENDPOINT=http://1.2.3.4:3000
DRONE_SECRET_PLUGIN_TOKEN=bea26a2221fd8090ea38720fc445eca6
検証
コマンドラインユーティリティを使用して、拡張機能が構成され、要求を処理していることを確認できます。
- コマンドラインユーティリティに拡張エンドポイントとシークレットを提供します。
$ export DRONE_SECRET_ENDPOINT=http://1.2.3.4:3000
$ export DRONE_SECRET_SECRET=bea26a2221fd8090ea38720fc445eca6
- コマンドラインユーティリティを使用して、シークレットを取得します。
$ drone plugins secret get secrets/data/docker username