シークレット
「シークレット」は、APIトークン・パスワード・秘密鍵などの秘密の値を「パス+値」で保管し、TWP CLI から取り出せるようにする機能です。値は暗号化して保存され、画面に値を表示するかどうかはシークレットごとに設定できます。表示・取り出しのたびに記録(監査ログ)が残ります。
シークレットには2つの種類があります。
| 種類 | 開く場所 | 参照・取り出しできる人 | 登録・変更・削除できる人 |
|---|---|---|---|
| 個人シークレット | 左メニュー「個人設定」→「個人シークレット」 | 本人のみ | 本人のみ |
| プロジェクトのシークレット | プロジェクトのタスク設定 →「シークレット」 | そのプロジェクトのメンバー全員 | そのプロジェクトの管理者 |
全体管理者(テナント管理者)でも、他人の個人シークレットや、自分が所属していないプロジェクトのシークレットは見られません。 値だけでなく、パスや説明などの一覧も表示されません。
利用できる条件
シークレットは、組織でシークレット機能が有効になっていて、利用者に「シークレット」の機能権限(メンバー以上)が付いている場合に使えます。条件を満たさないと、左メニューの「個人シークレット」とタスク設定の「シークレット」は表示されません。機能権限は組織の管理者が設定します。
画面の開き方
- 個人シークレット … 左メニューの見出し「個人設定」を開き、「個人シークレット」を押します
- プロジェクトのシークレット … プロジェクトのタスク一覧で「設定」を開き、「シークレット」のカードを押します
一覧の見方
一覧には次の項目が並びます。値は「画面での表示」の設定に従って表示されます(「表示しない」にしたシークレットの値は画面に出ません)。
| 項目 | 内容 |
|---|---|
| パス | シークレットの名前。/db/password のように「/」で区切って付けます |
| 説明 | 何の値かのメモ |
| バージョン | 値・設定を更新するたびに1つ増えます |
| 画面での表示 | 値を画面に表示してよいかの設定(後述) |
| 値 | 画面での表示設定に従って表示されます |
| 最終更新 / 最終アクセス | 最後に更新した日時と、最後に値が表示・取り出しされた日時 |
シークレットを登録する
- 一覧の右上にある「シークレットを追加」を押します
- 次の項目を入力して「登録」を押します
| 項目 | 入力内容 |
|---|---|
| パス(必須) | 「/」で始め、英数字と「.」「_」「-」を「/」で区切って入力します(例: /db/password、/deploy/api-token)。登録後は変更できません |
| 値(必須) | 保管する値。4096バイトまで入力できます。前後の空白や改行もそのまま保存されます |
| 説明 | 何の値かのメモ |
| 画面での表示 | 「表示しない(CLIのみ)」「クリックで表示」「表示する」から選びます。初期値は「表示しない(CLIのみ)」です |
編集・削除する
- 編集 … 行の鉛筆アイコンを押します。登録済みの値は表示されません。 値を変えるときだけ新しい値を入力し、空欄のまま「更新」を押すと、値はそのままで説明と画面での表示設定だけが変わります
- 削除 … 行のごみ箱アイコンを押して確認画面で「削除」を押します。削除したシークレットは CLI からも取り出せなくなります
プロジェクトのシークレットは、プロジェクトの管理者だけが登録・編集・削除できます。メンバーには「シークレットを追加」ボタンと編集・削除のアイコンが表示されません。
画面での表示設定
値を画面に表示してよいかは、シークレットごとに選べます。
| 設定 | 画面での値の扱い |
|---|---|
| 表示しない(CLIのみ) | 画面から値を見る手段はありません。値の欄には伏せ字と「CLIで取得」が表示されます |
| クリックで表示 | 値の欄の「表示」を押すと値が表示され、30秒たつと自動で伏せ字に戻ります |
| 表示する | 一覧を開くと値が表示されます |
どの設定でも、値を表示・取り出すたびに記録が残ります。画面に出す必要のない値は「表示しない(CLIのみ)」にしておくことをおすすめします。
CLIで取り出す
保管した値は TWP CLI の twp secret コマンドで取り出せます。個人シークレットは次のように取り出します。
twp secret get --me /db/passwordプロジェクトのシークレットは、プロジェクトを指定して取り出します。使えるコマンドとオプションは CLI のコマンド一覧 を参照してください。