トラブルシューティング
シークレットマネージャーでよくある問題の解決策
アクセスの拒否
コマンダーでシークレットマネージャーコマンドを実行しようとすると、ツールから access_denied と表示されます。
解決策
Keeperシークレットマネージャーを利用するには、以下の2つの権限条件を満たす必要があります。
Keeperアカウントでシークレットマネージャーアドオンが有効になっており、有効期限内のサブスクリプションがあること
シークレットマネージャー強制ポリシーが有効化されたロールが割り当てられていること
シークレットマネージャーアドオンの有効化
シークレットマネージャーは、Keeper管理コンソールの「安全なアドオン」セクションから追加できます。
シークレットマネージャー強制適用ポリシーの有効化
Keeper管理コンソールで、ロールの強制ポリシーにシークレットマネージャーを追加します。新しいロールを選択または作成し、[強制適用ポリシー] 設定を開いて [特権アクセス管理] タブに移動し、そのロールに対してシークレットマネージャーを許可または禁止します。
シークレットマネージャーが許可されたロールに属するユーザーには、Keeperボルトでシークレットマネージャータブが表示され、シークレットマネージャーアプリケーションとデバイスの作成および管理ができます。
「-」で始まるUIDレコード
レコードまたはフォルダUIDを入力として使用するコマンドをKSM CLIで実行する場合、コマンドラインインターフェースは「-」で始まるUIDとコマンドのオプションを区別できません。使用しているUIDが「-」 (ダッシュ/ハイフン) で始まる場合は、UIDの前に「--」を追加するだけで使用できます。
例:
ksm secret get -- -id8QpE2ZAkdd4KlCfoWQ
*この例のUIDは実際のレコードUIDではありません
レコードが見つかりません
シークレットマネージャーを使用してシークレットを取得しようとすると、レコードが見つからなかったと表示されます。
解決策
このメッセージが表示される理由は、以下の2つが考えられます。
検索対象のレコードがシークレットマネージャーアプリケーションと共有されていないこと
レコードがタイプ指定されていない従来の (V2) レコードであること
シークレットマネージャーでレコードを共有
個々のレコードをシークレットマネージャーアプリケーションで共有することも、共有フォルダをシークレットマネージャーアプリケーションで共有することもできます。これにより、そのフォルダ内のすべてのレコードにアクセスできるようになります。
シークレットマネージャーアプリケーションでレコードまたは共有フォルダを共有するには、コマンダーで以下のコマンドを使用します。
タイプ指定されたレコードを識別
Keeperシークレットマネージャーで利用できるのは、タイプ指定されたレコード (V3) のみです。タイプ指定されていない従来のレコードを照会すると、シークレットマネージャーはレコードが見つからないと応答します。
コマンダーでレコードがタイプ指定されているかどうかを確認するには、get コマンドを使用します。
レコードにタイプが設定されている場合 (シークレットマネージャーと互換性がある) は、レコードの情報に表示されます。
レコードがタイプ指定されていない場合 (シークレットマネージャーと互換性がない) は、Typeフィールドが表示されません。
また、ls -l コマンドで現在のフォルダ内のすべてのレコードを表示できます。表示されるテーブルにはタイプ列があり、タイプ列が空白のレコードはタイプ指定されていないレコードです。
上の例では、一番下のレコード (#4) はタイプ指定されていないので、シークレットマネージャーとの互換性がありません。
タイプ指定されたレコードの作成
タイプ指定されたレコードは、ボルトの [新規作成] をクリックするか、またはコマンダーのaddコマンドを使用して作成できます。
既存のレコードを置き換える
タイプ指定されていない既存のレコードをシークレットマネージャーで使用したい場合は、タイプを「ログイン」にしてレコードを作成し、そのレコードに情報をコピーすることをお勧めします。
ログインタイプのレコードには、従来のタイプ指定されていないKeeperのレコードと同じフィールドがあります。


タイプ指定された新しいレコードをシークレットマネージャーアプリケーションがアクセスできる共有フォルダに配置するか、UIDを使用してアプリケーションで直接共有します。
タイプ指定されていないレコードの変換
タイプ指定されていないレコードは、Keeperコマンダーの convert コマンドを使用して、シークレットマネージャーが利用できるタイプ指定されたレコードに変換できます。
形式
convert <UID> --type <TYPE>
例
convert コマンドは、パターンを使用して該当するすべてのレコードを検索し、すべてのサブフォルダに変換を再帰的に適用でき、すべてのレコードタイプに対応しています。
convert コマンドの使用方法の詳細は、コマンダーのドキュメントをご参照ください。
スロットリング
KeeperシークレットマネージャーAPIは、デバイスIDに基づいてリクエストを制限します。接続が制限されると、503のレスポンスコードなどのエラーが返されます (実際のメッセージは使用している統合機能やSDKによって異なります)。
レート制限の詳細
シークレットマネージャーAPIは、10秒の間隔を置かずに200回を超える呼び出しを行うシステムに制限を設けています。
このカウントは、10秒タイマーが切れるとリセットされますが、10秒以内に次のリクエストが送信されるたびにタイマーが更新されます。そのため、10秒間の間隔を置かなければシステムは引き続き制限されます。
スロットリングが発生する例
10秒以内に201回呼び出した場合
9秒ごとに1回呼び出し、201回目の呼び出しを行った場合
スロットリング制限を解決する方法
リクエストを送信する各マシンに対して追加のデバイスIDを生成する
200回の呼び出しごとにリクエストを10秒間一時停止する
最終更新

