シークレット参照の構文
1Passwordマニュアル|シークレット参照URIを活用して、Vaultやアイテム内の情報を効率的に管理し、安全にアクセスする方法を説明します。
シークレット参照 URI は、情報がSaveされている保管庫、アイテム、セクション、フィールドの名前を使用して、1Password アカウント内でシークレットがSaveされている場所を指します。
$ op://<vault-name>/<item-name>/[section-name/]<field-name>シークレット参照により、コード内のプレーンテキストのシークレットが公開されるリスクがなくなり、1Password アカウントに加えた変更が反映されるため、スクリプトを実行すると最新の値が得られます。
シークレット参照は次の場合に使用できます。
Kubernetes、CircleCI、GitHub Actions、Jenkins、Terraform、Pulumi、Postmanなどのシークレットに安全にアクセスします。
シークレット参照
1Passwordデスクトップアプリ
1Password デスクトップ アプリでシークレット参照をコピーするオプションを表示するには、まず1Password CLI との統合をオンにします。次に、次の手順を実行します。
①参照したいシークレットがSaveされているアイテムを開きます。
②参照したいシークレットを含むフィールドの横にある
をクリックし、Copy Secret Referenceを選択します。

With 1Password for VS Code
1Password for VS Codeを使うと、コードを編集するときに1Passwordからシークレット参照を挿入できます。まず、拡張機能をインストールします。次に、次の手順を実行します。
①Command Paletteを開きます。
②1Password: Get from 1Password と入力します。
③アイテム名またはIDを入力します。
④使うフィールドを選択します。
With 1Password CLI
1Password CLIでシークレットリファレンスを取得するには、--format jsonフラグを付けてop item getを実行し、フィールドラベルを指定する--fieldsフラグを含めます。次にJSON 出力からシークレット参照を取得するためにjqを使用します。例:
項目の全てのフィールドのシークレット参照を取得するには、フィールドを指定せずに --format json フラグを指定してop item getを使用します。
構文規則
サポートされている文字
シークレット参照では大文字と小文字が区別されず、次の文字がサポートされます。
英数字 (
a-z、A-Z、0-9)-、、_および.空白文字
シークレット参照に空白が含まれている場合は、シークレット参照を引用符で囲みます。例:
サポートされていない文字を含むシークレット参照の部分は、名前ではなく一意の識別子 (ID)で参照する必要があります。
ID を取得するには、op item get出力を JSON に設定して実行します。例えば、test/という名前のカスタム テキスト フィールドの ID を取得するには、次のようにします。
ファイルの添付
添付ファイルを参照するには、フィールド名の代わりにファイル名を使用します。
外部設定変数
異なる環境で異なるシークレット セットを使う場合は、シークレット参照内に変数を含め、シークレットを切り替えるように変数を設定できます。
例えば、資格情報が dev および prod という名前の 1Password コンテナーにSaveされていると仮定すると、以下の例の APP_ENV 変数を dev に設定して開発資格情報をロードしたり、 prod に設定して実稼働資格情報をロードしたりできます。
変数を使用して、環境ファイルと構成ファイル内のシークレットのセットを切り替える方法を学習します。
フィールドとファイルのメタデータ属性
クエリ パラメータを含むシークレット参照を使用して、アイテムに関する詳細情報を取得できます。
属性パラメータ
アイテム フィールドとファイル添付に関する情報を取得するには、 attribute(またはattr) クエリ パラメータを使用します。
Field attributes:
属性
意味
type
フィールドの種類
value
フィールドの内容
id
フィールドの一意の識別子
purpose
組み込みフィールドの指定(「ユーザー名」、「パスワード」、または「メモ」)
otp
ワンタイムパスワードフィールドを使用してワンタイムパスワードコードを生Createします
File attachment attributes:
属性
意味
type
フィールドの種類
content
添付ファイルの内容
size
添付ファイルのサイズ
id
添付ファイルの一意の識別子
name
添付ファイルの名前
例えば、アイテムのワンタイム パスワード コードを取得するには、次のようにします。
フィールドのタイプを取得するには:
添付ファイルの名前を取得するには:
SSH フォーマットパラメータ
OpenSSH 形式で SSH 秘密キーを取得するには、SSH鍵のシークレット参照に値 openssh を指定した ssh-format クエリ パラメーターを含めます。
シークレット参照の例
セクション内のフィールド
管理セクション内にある PagerDuty の電子メール フィールドを参照するシークレット参照をCreateするには、次を使用します。
①Management アイテムがSaveされているvaultを指します
②PagerDuty アイテムを参照します
③Adimn フィールドが含まれるセクションを指します
④email 参照したいシークレットが配置されているフィールドを指します

セクションのないフィールド
セクションの一部ではない Stripe 公開鍵 フィールドの秘密参照をCreateするには、次を使用します。
①dev アイテムがSaveされている金庫を指します
②Stripe アイテムを指します
③publishable-key 参照したい秘密が配置されているフィールドを指します。

さらに詳しく
Last updated