run
1Passwordマニュアル|シークレットを安全に管理し、アプリケーションやスクリプトに環境変数として渡す方法を詳しく解説します。簡単で効率的なセキュリティー対策を実現しましょう。
シークレットを環境変数としてアプリケーションまたはスクリプトに渡します。
op run -- <command> <command>... [flags]
Flags
--env-file stringArray Enable Dotenv integration with specific Dotenv files to
parse. For example: --env-file=.env.
--no-masking Disable masking of secrets on stdout and stderr.
op run
環境変数をスキャンしてシークレット参照を探し、1Password から対応するシークレットをロードし、サブプロセスの実行中はシークレットを環境変数として利用できるようにして、提供されたコマンドをサブプロセスで実行します。
承認されたターミナル セッション内のプロセスがアクセスできる 1Password アイテムを制限するには、使うアイテムをop run
別の保管庫に移動し、その保管庫にのみアクセスできるサービス アカウントでコマンドを使用します。
シェルと環境ファイルの両方に同じ環境変数名が存在する場合は、環境ファイルが優先されます。
複数の環境ファイルに同じ環境変数名が存在する場合、最後の環境ファイルが優先されます。
stdout または stderr に出力される秘密は、デフォルトでは隠されています。 マスクをオフにするには、--no-masking
フラグを含めます。
secretの値を印刷:
export DB_PASSWORD="op://app-prod/db/password"
op run -- printenv DB_PASSWORD
<concealed by 1Password>
op run --no-masking -- printenv DB_PASSWORD
fX6nWkhANeyGE27SQGhYQ
環境ファイルを指定して使用します。
echo "DB_PASSWORD=op://app-dev/db/password" > .env
op run --env-file="./.env" -- printenv DB_PASSWORD
password
シークレット参照内の変数を使用して、さまざまな環境のさまざまなシークレット セットを切り替えます。
cat .env
DB_USERNAME = op://$APP_ENV/db/username
DB_PASSWORD = op://$APP_ENV/db/password
export APP_ENV="dev"
op run --env-file="./.env" -- printenv DB_PASSWORD
dev
export APP_ENV="prod"
op run --env-file="./.env" -- printenv DB_PASSWORD
prod
Last updated