レコードの作成と更新

record-addおよびrecord-updateコマンドに関する詳細

record-addコマンドのドキュメント

本ページには、Keeperコマンダーにおけるrecord-addコマンドを使用したレコードの作成方法について、包括的な例を記載しています。このコマンドでは、フィールド指定にドット記法を、複雑なフィールドには $JSON: 構文をサポートしています。

Keeperコマンダーでは、行末にバックスラッシュ (\) を使用することで、長いコマンドを複数行に分割して記述でき、可読性が向上します。


コマンド構文

record-add --title "Record Title" --record-type "RECORD_TYPE" [OPTIONS] [FIELDS...]

主な引数

引数
説明

--title / -t

レコードのタイトル (必須)

--record-type / -rt

レコードタイプ (必須)

--notes / -n

レコードのメモ (任意)

--folder

レコードを保存するフォルダのパスまたはUID (任意)

--force / -f

警告を無視して実行 (任意)

--syntax-help

フィールド構文のヘルプを表示


フィールド構文の概要

ドット記法の形式

各要素の説明

要素名
説明

FIELD_SET

任意。f (標準フィールド) またはc (カスタムフィールド) を指定可能

FIELD_TYPE

フィールドタイプ (例: loginpasswordurlなど)

FIELD_LABEL

任意。フィールドにラベルを付ける場合に使用

FIELD_VALUE

フィールドに設定する値


特殊な値の構文

構文
説明

$JSON:{"key": "value"}

複雑なオブジェクト型フィールドに使用

$GEN

パスワード、TOTPコード、鍵ペアなどを自動生成

file=@filename

ファイルの添付。@のあとにファイルパスを指定


レコードタイプ

Keeperコマンダーでは、以下の2種類のレコードタイプがサポートされています。

  • タイプ付きレコード あらかじめ定義されたスキーマに基づく構造化レコード (例: ログイン、銀行口座、連絡先など)

  • レガシーレコード 一般的なレコード形式。使用時は-rt legacyまたは-rt generalを指定します。


フィールドタイプと例

単純フィールドタイプ

フィールドタイプ
説明

login

ユーザー名/ログインID

password

パスワード (マスク表示)

url

ウェブサイトのURL

email

メールアドレス

text

プレーンテキスト

multiline

複数行のテキスト

secret

マスクされたテキストフィールド

note

マスクされた複数行のテキスト

oneTimeCode

TOTP/2要素認証コード (2FA)

date

Unixエポックタイムまたは日付文字列


複雑フィールドタイプ

$JSON: 構文で指定する必要があります。

フィールドタイプ
説明

phone

電話番号 (地域情報や種別を含む)

name

氏名 (名、ミドルネーム、姓)

address

住所 (郵便番号、都道府県、市区町村、番地など)

paymentCard

クレジットカード情報

bankAccount

銀行口座情報

securityQuestion

セキュリティ質問と回答のペア

host

ホスト名とポート番号の組み合わせ

keyPair

SSH鍵ペア

クイックスタート例

基本的なログインレコード

1行で実行する場合 (コピー&ペースト向け/推奨)

複数行で記述する場合 (手入力推奨・コピー&ペースト非推奨)


電話番号付きの基本的な連絡先レコード


複数レコードのスクリプト実行

Keeperコマンダーでは、run-batchrunコマンドを使って複数のレコード操作をスクリプト化できます。

以下は複雑なオブジェクトフィールドの正確な形式を取得する際の最も簡単な方法となります。

  1. ウェブボルトで1件レコードを作成する

  2. コマンダーで以下を実行し、JSON形式を取得する

    $JSON:{"key": "value"} の形式で取得可能

これをもとにバッチスクリプトを作成し、実行できます。

レコードタイプ別の詳細な使用例

1. ログイン情報レコード

2. 銀行口座レコード

3. クレジットカードレコード

4. 連絡先レコード

5. 住所レコード

6. サーバーの認証情報

7. SSHキー

8. ソフトウェアライセンス

9. WiFiパスワード

10. メモ

11. データベース認証情報

12. 運転免許証

13. パスポート

14. 健康保険

15. メンバーシップ

16. 出生証明書

17. ソーシャルセキュリティカード

18. 写真レコード

19. 添付ファイル

20. PAMデータベース

21. PAMディレクトリ

22. PAMマシン

23. PAMユーザー

24. PAMリモートブラウザ

PAM環境の例

各PAMレコードは、Keeperゲートウェイを参照するPAM構成に紐付けられています。このゲートウェイは通常、ローカルネットワーク内またはPAMリソースへのアクセスが可能な場所にインストールされます。以下は、新しいPAM環境を構成する際の基本的な出発点となる例です。

高度な機能

パスワード生成

TOTP/2FAの生成

SSHキーの生成

カスタムフィールド

一般フィールドのリファレンス

データ形式

電話番号形式

名前の形式

住所の形式

秘密の質問の形式

自動消滅型レコード (ワンタイム共有)

--self-destructオプションを使用すると、一度開くと自動的に削除される一時的なレコードを作成できます。この機能は、一度しか閲覧してほしくない機密情報の共有に最適です。

自動消滅の仕組み

  • 指定した時間後に有効期限が切れる一時的な共有URLを作成します

  • レコードは、共有URLが初めて開かれるまで自分のボルト内に残ります

  • URLが開かれてから5分後に自動的に削除されます

  • 有効期限の最長期間は6か月です

構文

時間単位

自己破壊型レコードや一時的な共有リンクの有効期限には、以下の単位を使用できます。

  • mまたはminutes: 分 (※単位を省略した場合はデフォルトで分扱い)

  • hまたはhours: 時間

  • dまたはdays: 日数

使用例

一時的パスワードの共有 (1時間後に失効)

一時的Wi-Fiパスワードの共有 (30分後に失効)

一時的なファイル共有 (24時間後に失効)

緊急連絡先情報の共有 (2時間後に失効)

戻り値

--self-destructを使用すると、レコードUIDではなく共有可能なURLを返します。


重要な注意事項

⚠️ セキュリティに関する注意点

  • URLが鍵です ― URLを知っている人は誰でもレコードにアクセスできます

  • 認証不要 ― 共有URLはログイン認証をバイパスします

  • 一度きりのアクセス ― レコードは最初の表示から5分後に自動削除されます

  • 復元不可 ― 一度削除されるとレコードは元に戻せません

⚠️ 制限事項

  • 有効期限は最大6か月

  • 自動削除レコードは更新不可

  • プレビュー不可 ― 作成後にレコードを再確認することはできません

  • 即時共有 ― URLは作成直後から有効になります


ベストプラクティス

  • URLはすぐにコピーしてください ― 後から取得することはできません

  • セキュリティ強化のため、短い有効期限(数分~数時間)を設定しましょう

  • レコードの目的や背景を「ノート」に記録しておきましょう

  • URLは安全な方法(暗号化メッセージ、対面など)で共有しましょう

  • 一時的なアクセスには $GEN を使って強力なパスワードを生成しましょう

  • URLの有効期限前に受信者が受け取ったことを確認しましょう

活用事例

  • システム管理者向けの緊急アクセス認証情報

  • 外部委託先やコンサルタント用の一時パスワード

  • 機密ファイルの一度きりの文書共有

  • 来客用ネットワークのWi-Fi情報共有

  • チームメンバー間での安全な情報受け渡し

  • 自動化システム間での期限付きシークレット共有


ヒントとベストプラクティス

  • コピー&ペーストには1行のコマンドを使用し、行末のスペースによるエラーを防ぎましょう

  • シェルによる解釈を避けるため、JSONの値には引用符を使いましょう

  • パスワードをハードコードせず、$GENを使用して安全に生成しましょう

  • 複雑なレコードを作成する前に、まずはシンプルなレコードでテストしましょう

  • 標準でないデータにはカスタムフィールド (c.) を活用しましょう

  • --folderパラメータでフォルダ整理を行い、レコードを体系化しましょう

  • --notesを使ってレコードの背景や目的を記録し、管理しやすくしましょう

トラブルシューティング (よくある問題と対処法)

「Expected: =, got: ; Missing =」エラー

  • 複数行コマンドのバックスラッシュの後にスペースを入れないようにしてください

  • コピー&ペーストする際は、1行形式を使用してください

「Field type not supported」 (対応していないフィールドタイプ)

  • 使用可能なフィールドタイプはrecord-add --syntax-helpで確認できます

  • 標準外のフィールドにはc.接頭辞付きのカスタムフィールドを使ってください

JSON解析エラー

  • JSONが正しく引用されていることを確認してください

  • JSON内のシングルクォートは'\''のようにエスケープしてください

  • JSONオブジェクト内ではダブルクォート ( " ) を使用してください

ファイル添付のエラー

  • ファイルパスの前に@を付けてください (例: file=@/path/to/file.txt)

  • ファイルパスが正しくアクセス可能なことを確認してください

  • 相対パスではなく絶対パスの使用を推奨します

record-addrecord-updateの違い

record-addは新しいレコードを作成するためのコマンドであり、record-updateは既存のレコードを編集するために使用します。以下は主な違いの比較です。

record-add
record-update

目的

新規レコードの作成

既存レコードの編集

レコード識別子

不要

必須 (-rまたは--recordを指定)

レコードタイプ

必須 (-rt)

任意 (変更も可能)

フィールドの動作

すべてのフィールドを設定

指定したフィールドのみ更新

メモの動作

新規に設定

+接頭辞付きで追記、接頭辞なしで上書き

record-updateの構文

主な引数

  • --record / -r: レコードのタイトルまたは UID (必須)

  • --title / -t: レコードのタイトルを更新

  • --record-type / -rt: レコードタイプを変更

  • --notes / -n: メモを更新 (先頭に+を付けると追記、それ以外は上書き)

  • --force / -f: 警告を無視して実行

使用例

パスワードとURLを更新

既存の連絡先に電話番号を追加

メモに追記 (先頭の + に注意)

タイトルを変更し、カスタムフィールドを追加

レコードタイプの変更 (構造を変換)

各コマンドの用途

record-add

  • 新しいレコードを作成するとき

  • すべてのフィールドを一から指定したいとき

  • 初期のレコード構造を設定するとき

record-update

  • 既存のレコードを編集したいとき

  • 既存のレコードに新しいフィールドを追加するとき

  • パスワードや認証情報を更新したいとき

  • メモに情報を追記したいとき

  • レコードタイプを変換したいとき


重要な注意点

  • record-updateは指定したフィールドのみを変更します

  • 指定していない既存のフィールドはそのまま保持されます

  • field=のように値を空にすると、そのフィールドを消去できます

  • メモに+を付けると追記、付けない場合は上書きになります

ヘルプ表示

最終更新