1Password SDK
1Passwordマニュアル|Go言語でのシークレット管理を強化する1Password SDKの活用法。プログラムから安全にアクセス可能な統合方法を解説します。
1Password SDK
1Password SDKを使うと、Go、JavaScript、またはPythonを使い、1PasswordにSaveされているシークレットにプログラムでアクセスできるシークレット管理統合を構築できます。1Password SDKを使うと、次のことが可能になります。
シークレット参照を使って1Password のシークレットをコードに安全に読み込みます。
パスワード、API キー、ワンタイムパスワードなど、1PasswordにSaveされているシークレットを読み取り、書き込み、更新できます。
1Passwordアカウント内のアイテムと保管庫を一覧表示できます。
サポートする言語
サポートされている機能
インテグレーションの例
パートナーがSDKを使って1Passwordとの統合を構築した例をご覧ください。
1PasswordにSaveされているAPI キーやその他のシークレットを、平文で公開することなく、安全にPostmanに読み込みませました。
1Passwordからシークレットを環境に動的にインポートするようにしました。プロバイダーは、シークレットの名前のマップを返します。
始める前に、1Passwordアカウントにサインアップする必要があります。
ステップ 1:サービスアカウントをCreateる
1PasswordサービスアカウントをCreateり、SDKで使うシークレットがSaveされている保管庫へのアクセス権を付与します。
SDKがアイテムを更新できるようにするには、適切な保管庫での読み取り権限と書き込み権限の両方をサービスアカウントに付与するようにしてください。
ステップ 2:サービスアカウントトークンを準備する
SDKは、サービスアカウントトークンを使って1Passwordに認証します。環境からトークンをプロビジョニングすることをお勧めします。
次の例を使用して、 という名前の環境変数にトークンをプロビジョニングしますOP_SERVICE_ACCOUNT_TOKEN。ファイルから読み取るなど、他の方法でトークンをプロビジョニングすることもできます。
Bash、sh、zsh
$ export OP_SERVICE_ACCOUNT_TOKEN=<your-service-account-token>
fish
$ set -x OP_SERVICE_ACCOUNT_TOKEN <your-service-account-token>
PowerShell
$ Env:OP_SERVICE_ACCOUNT_TOKEN = "<your-service-account-token>"
ステップ3:SDKをインストールする
あなたのプロジェクトにSDKをインストールします。
Go
go get github.com/1password/onepassword-sdk-go
JavaScript
$ npm install @1password/sdk
Python
pip install onepassword-sdk
ステップ4:SDKをインポートする
SDKをプロジェクトにインポートします。
Go
import "github.com/1password/onepassword-sdk-go"
JavaScript
CommonJS const sdk = require("@1password/sdk");
ES Modules import sdk from "@1password/sdk";
Python
from onepassword import *
ステップ5:SDKを初期化する
SDKを初期化すると、設定パラメーターを含むクライアントインスタンスがCreateされます。
Go
このonepassword.NewClient関数は、サービス アカウントトークンをパラメーターとして受け取ります。SDKはこのトークンを認証に使用します。
次の例では、SDKは環境変数OP_SERVICE_ACCOUNT_TOKENのパラメーターを使って関数onepassword.NewClientからサービスアカウントトークンを取得します。
”My 1Password Integration”と”v1.0.0”の代わりに、アプリケーションの名前とバージョンを必ず指定してください。

JavaScript
このCreateClient関数は、サービスアカウントトークンをパラメーターとして受け取ります。SDK はこのトークンを認証に使用します。
次の例では、SDK は関数OP_SERVICE_ACCOUNT_TOKENのパラメータを使用して環境変数からサービス アカウント トークンを取得しますCreateClient。
My 1Password Integrationおよびの代わりに、アプリケーションの名前とバージョンを必ず指定してくださいv1.0.0。

Python
このclient.authenticate関数は、サービス アカウント トークンをパラメーターとして受け取ります。SDK はこのトークンを認証に使用します。
次の例では、SDK は関数OP_SERVICE_ACCOUNT_TOKENのパラメータを使用して環境変数からサービス アカウント トークンを取得しますclient.authenticate。
My 1Password Integrationおよびの代わりに、アプリケーションの名前とバージョンを必ず指定してくださいv1.0.0。

ステップ6:構築開始
これで、SDK を使って構築を始める準備が整いました。例については、 Go、JavaScript、またはPython SDK の GitHub リポジトリにアクセスするか、次の方法を学んでください。
保管庫とアイテムの一覧
ヘルプを受ける
1Password SDK に関するサポートを受けるには、Developer Slack ワークスペースに参加し、チャネルで質問してください#sdk。
新しい機能をリクエストしたり、バグを報告したりするには、適切な GitHub リポジトリに問題を報告してください。