Connectサーバーで1Password CLIを使用する
1Passwordマニュアル|コマンドラインでシークレットを管理し、Connectサーバーと連携してアイテムを取得する方法を詳しく解説します。
1Password CLI をConnect サーバーと共に使用して、コマンド ラインでシークレットをプロビジョニングし、アイテムを取得できます。
必要条件
Connect サーバーで 1Password CLI を使う前に、次の操Createを行う必要があります。
1Passwordにサインアップします。
Connect サーバーを本番環境からアクセスできるようにします。
OP_CONNECT_HOSTおよびOP_CONNECT_TOKEN環境変数を、運用環境の Connect インスタンスの資格情報に設定します。
必要な手順を完了すると、Connect サーバーで次の 1Password CLI コマンドを使用できるようになります。
詳細については、コマンドのドキュメントを参照してください。
継続的インテグレーション(CI)環境
継続的インテグレーション (CI) パイプラインで Connect サーバーと共に 1Password CLI を使うこともできます。1Password CLI を使うと、コード内でプレーンテキスト シークレットの代わりにシークレット参照を使用できます。CI 環境を構成して、環境ごとに異なるシークレット セットを渡すこともできます。
シークレット参照は、他の構成と一緒に定義できるため、インフラストラクチャ アズ コード ツールおよび CI 構成内で適切に機能します。
GitLab CI の例
次のコードブロックは、MySQL サービスを実装する GitLab CI 構成ファイルの例を示しています。GitLabs.gitlab-ci.ymlドキュメントを参照してください。。
.gitlab-ci.yml
services:
- mysql
variables:
# Configure mysql service (https://hub.docker.com/_/mysql/)
MYSQL_DATABASE: op://prod/mysql/database
MYSQL_USERNAME: op://prod/mysql/username
MYSQL_PASSWORD: op://prod/mysql/password
connect:
image: mysql
script:
- echo "SELECT 'OK';" | op run -- mysql --user="$MYSQL_USERNAME" --password="$MYSQL_PASSWORD" --host=mysql "$MYSQL_DATABASE"
CI パイプラインで 1Password CLI を認証するには、 CI 構成ファイルにOP_CONNECT_HOSTおよびOP_CONNECT_TOKEN環境変数を追加します。これらの環境変数が存在すると、1Password CLI は Connect サーバーを使用してシークレットを取得するようになります。
次のコード ブロックは、GitLab CI の例を拡張して Connect 環境変数を含めます。
.gitlab-ci.yml
services:
- mysql
variables:
# Configure mysql service (https://hub.docker.com/_/mysql/)
MYSQL_DATABASE: op://prod/mysql/database
MYSQL_USERNAME: op://prod/mysql/username
MYSQL_PASSWORD: op://prod/mysql/password
# Configure 1Password CLI to use Connect
OP_CONNECT_HOST: <Connect host URL>:8080
OP_CONNECT_TOKEN: token
connect:
image: mysql
script:
- echo "SELECT 'OK';" | mysql --user="$MYSQL_USERNAME" --password="$MYSQL_PASSWORD" --host=mysql "$MYSQL_DATABASE"
さらに詳しく
コード内にプレーンテキストのシークレットを配置することを避けるために、シークレット参照をCreateして使う方法を学習します。
環境からアプリケーションにシークレットを取得する方法を紹介します。
コード内にプレーンテキストのシークレットを配置せずに、シークレットを構成ファイルに自動的にロードする方法を紹介します。
Last updated