JavaScript SDK
Keeperシークレットマネージャー用Javascript SDKの詳細
ダウンロードとインストール
NPMによるインストール
npm install @keeper-security/secrets-manager-coreソースコード
JavaScriptのソースコードは、GitHubリポジトリで入手できます。
SDKの使用
ストレージの初期化
シークレットを取得するには、まずマシンのローカルストレージを初期化する必要があります。
initializeStorage(storage:KeyValueStorage, clientKey:String? = null, hostName:String? = null)storage
KeyValueStorage
はい
保存場所
clientKey
string
オプション
null
Keeperシークレットマネージャーに接続するためのトークン
hostName
string
オプション
null
シークレットを取得するサーバーの場所。 何も指定しない場合は、keepersecurity.com (米国) が使用されます
使用例
シークレットの取得
storage
KeyValueStorage
はい
保存場所
recordsFilter
string[]
オプション
空のリスト
取得するUIDレコード
レスポンス
型: KeeperSecrets
すべてのKeeperのレコード、または指定したフィルタ条件に一致するレコードを含むオブジェクト
使用例
すべてのシークレットを取得
タイトルでシークレットを取得
options
SecretsManagerOptions
はい
事前に設定されたオプション
recordTitle
string
はい
検索するレコードタイトル
使用例
シークレットから値を取得
パスワードを取得
フィールドタイプはKeeperレコードタイプに基づきます。利用可能なフィールドの詳細な一覧については、コマンダーで record-type-info コマンドをご参照ください。
Keeper表記法を使用して他のフィールドを取得
secrets
KeeperSecrets
はい
照会するシークレット
query
string
はい
Keeper表記法を使用したクエリ
この表記を使用したクエリで指定するレコードUIDは、
secretsパラメーターで渡されたシークレットのいずれかである必要があります。そうでない場合、クエリでは何も取得されません。
戻り値
型: any
ドット記法を使用したクエリで指定された位置のフィールドに値が存在する場合はその値 (存在しない場合は不定)
TOTPコードを取得
url
string
はい
TOTP Url
この表記を使用したクエリで指定するレコードUIDは、
secretsパラメーターで渡されたシークレットのいずれかである必要があります。そうでない場合、クエリでは何も取得されません。
戻り値
型: any
ドット記法を使用したクエリで指定された位置のフィールドに値が存在する場合はその値 (存在しない場合は不定)
シークレットを更新
レコードを更新するコマンドは、成功してもローカルのレコード情報 (特に「リビジョン番号」) が自動では更新されません。そのため、同じレコードに続けて更新を行うと、「リビジョンが合っていない」というエラーで失敗してしまいます。そのため、レコードを更新した後は、必ずそのレコードを最新の状態に再読み込みしてください。
options
SecretManagerOptions
はい
record
KeeperRecord
はい
戻り値
型: Promise<void>
ランダムなパスワードを生成
length
int
オプション
64
lowercase
int
オプション
0
uppercase
int
オプション
0
digits
int
オプション
0
specialCharacters
int
オプション
0
各パラメーターは、それぞれの文字タイプを最低何文字含めるかを指定します。たとえば、uppercase は「大文字を最低何文字含めるか」を示します。
戻り値
型: String
ファイルのダウンロード
file
KeeperFile
はい
ダウンロードするファイル
レスポンス
型: Promise<Uint8Array>
ダウンロード用のファイルのバイト列
サムネイルのダウンロード
file
KeeperFile
はい
ダウンロードするサムネイル付きファイル
レスポンス
型: Promise<Uint8Array>
ダウンロード用サムネイルのバイト列
ファイルのアップロード
ファイルのアップロード:
options
SecretsManagerOptions
はい
ストレージとクエリの設定
ownerRecord
KeeperRecord
はい
アップロードされたファイルを添付するレコード
file
KeeperFileUpload
はい
アップロードするファイル
Keeperファイルアップロードオブジェクトを作成:
name
string
はい
アップロード後にKeeperに格納されるファイルの名前
title
string
はい
アップロード後にKeeperに格納されるファイルのタイトル
type
string
オプション
ファイルのデータのMIMEタイプ。何も指定しない場合は、「application/octet-stream」が使用されます
data
Uint8Array
はい
バイト型のファイルデータ
使用例
シークレットの作成
要件
共有フォルダのUID
共有フォルダには、シークレットマネージャーアプリケーションからアクセスできること
ユーザーとシークレットマネージャーアプリケーションには編集権限が付与されていること
共有フォルダには、少なくとも1つのレコードが存在すること
作成されたレコードとレコードのフィールドは正しい形式で設定されていること
各レコードタイプのフィールド形式については、こちらのページをご参照ください
TOTPフィールドには、KSM SDK以外で生成されたURLのみを指定できます
レコードを作成した後、
uploadFileを使用して添付ファイルをアップロードできます
options
SecretManagerOptions
はい
folderUid
string
はい
record
JSON Object
はい
options
SecretManagerOptions
はい
createOptions
CreateOptions
はい
record
JSON Object
はい
この例では、ログイン値と生成されたパスワードを含むログイン情報タイプのレコードを作成します。
この例では、カスタムのレコードタイプのレコードを作成します。
シークレットの削除
JavaScript KSM SDKでKeeperボルトのレコードを削除できます。
smOptions
SecretManagerOptions
はい
recordUids
string[]
はい
キャッシュ
ネットワークへのアクセスが失われた際にシークレットへのアクセスも失うという事態を避けるため、JavaScript SDKでは、シークレットを暗号化されたファイルとしてローカルマシンにキャッシュすることができます。
SecretManagerOptions に queryFunction: cachingPostFunction を追加
使用例:
フォルダ
フォルダは完全なCRUD (作成、読み取り、更新、削除操作) に対応しています。
フォルダの読み取り
フォルダの完全な階層構造をダウンロードします。
レスポンス
型: KeeperFolder[]
使用例
フォルダの作成
作成には CreateOptions とフォルダ名の指定が必要です。CreateOptions に含まれる folder UID パラメータは必須で、これは共有フォルダのUIDを指定します。sub-folder UID は任意で、省略された場合は、指定された共有フォルダの直下に通常のフォルダが新規作成されます。なお、sub-folder UID は必ずしも親の共有フォルダの直下である必要はなく、何階層も深い位置を指定することも可能です。
options
SecretsManagerOptions
はい
事前に設定されたオプション
createOptions
CreateOptions
はい
親およびサブフォルダのUID
folderName
string
はい
フォルダ名
使用例
フォルダの更新
フォルダのメタデータ (現在はフォルダ名のみ) を更新します。
options
SecretsManagerOptions
はい
事前に設定されたオプション
folderUid
string
はい
フォルダのUID
folderName
string
はい
新しいフォルダ名
使用例
フォルダの削除
フォルダのリストを削除します。空でないフォルダを削除するには、forceDeletionフラグを使用します。
options
SecretsManagerOptions
はい
事前に設定されたオプション
folderUids
string[]
はい
フォルダUIDリスト
forceDeletion
bool
いいえ
false
空でないフォルダを強制的に削除
使用例
最終更新

