トラブルシューティング
シークレットマネージャーでよくある問題の解決策
アクセスの拒否
コマンダーでシークレットマネージャーコマンドを実行しようとすると、ツールからaccess_denied
と表示されます
解決策
Keeperシークレットマネージャーを利用するには、以下の2つの権限条件を満たす必要があります。
Keeperアカウントのシークレットマネージャーアドオンを有効にすること
シークレットマネージャー強制ポリシーが有効化されたロールが割り当てられていること
シークレットマネージャーアドオンの有効化
シークレットマネージャーは、Keeper管理コンソールの「安全なアドオン」セクションから追加できます。
シークレットマネージャー強制適用ポリシーの有効化
Keeper管理コンソールで、ロール強制を使用して、ロールにシークレットマネージャーを追加します。 新しいロールを選択または作成し、「強制ポリシー」設定を開いて、[Keeper Secrets Manager]タブに移動し、そのロールに対してシークレットマネージャーを許可または禁止します。
シークレットマネージャーが許可されたロールに属するユーザーはすべて、Keeperボルトでシークレットマネージャータブを表示して、シークレットマネージャーアプリケーションとデバイスの作成および管理ができます。
「-」で始まるUIDレコード
レコードまたはフォルダUIDを入力として使用するコマンドをKSM CLIで実行する場合、コマンドラインインターフェースは、「-」で始まるUIDとコマンドのオプションを区別できません。 使用しているUIDが「-」 (ダッシュ/ハイフン) で始まる場合は、UIDの前に「--」を追加するだけで使用できます。
例:
ksm secret get -- -id8QpE2ZAkdd4KlCfoWQ
*この例のUIDは実際のレコードUIDではありません
レコードが見つかりません
シークレットマネージャーを使用してシークレットを取得しようとすると、レコードが見つからなかったと表示されます。
解決策
このメッセージが表示される理由は、以下の2つが考えられます。
検索対象のレコードがシークレットマネージャーアプリケーションで共有されていません。
レコードがタイプ指定されていない従来の (V2) 記録です。
シークレットマネージャーでレコードを共有
個々のレコードをシークレットマネージャーアプリケーションで共有することも、共有フォルダをシークレットマネージャーアプリケーションで共有することもできます。これにより、そのフォルダ内のすべてのレコードにアクセスできるようになります。
シークレットマネージャーアプリケーションでレコードまたは共有フォルダを共有するには、コマンダーで以下のコマンドを使用します。
タイプ指定されたレコードを識別
Keeperシークレットマネージャーでは、タイプ指定されたレコード (V3) のみがサポートされています。 タイプ指定されていない従来のレコードを照会すると、シークレットマネージャーはレコードが見つからないと応答します。
コマンダーでレコードが入力されているか否かを確認するには、get
コマンドを使用します
レコードにタイプが設定されている場合 (シークレットマネージャーと互換性がある) は、レコードの情報に表示されます。
レコードがタイプ指定されていない場合 (シークレットマネージャーと互換性がない) は、Typeフィールドが表示されません。
また、ls -l
コマンドを使用して、現在のフォルダ内のすべてのレコードを表示できます。 結果表示されたテーブルには、タイプ列があります。 タイプ列が空白のレコードはすべて、タイプ指定されていないレコードです。
上の例では、一番下のレコード (#4) はタイプ指定されていないので、シークレットマネージャーとの互換性がありません。
タイプ指定されたレコードの作成
タイプ指定されたレコードは、ボルトの[新規作成]をクリックするか、またはコマンダーのrecord-addコマンドを使用して作成できます。
レコードタイプを選択する際、「一般」タイプを除くすべてのタイプでシークレットマネージャーと互換性があります。
一般タイプのレコードは、従来のタイプ指定されていないレコードと同じ扱いになります。
既存のレコードを置きかえる
タイプ指定されていない既存のレコードをシークレットマネージャーで使用したい場合は、タイプを「ログイン」にしてレコードを作成し、そのレコードに情報をコピーすることをお勧めします。
ログインタイプのレコードには、従来のタイプ指定されていないKeeperのレコードと同じフィールドがあります。
タイプ指定された新しいレコードをシークレットマネージャーアプリケーションがアクセスできる共有フォルダに配置するか、UIDを使用してアプリケーションで直接共有します。
タイプ指定されていないレコードの変換
タイプ指定されていないレコードは、Keeperコマンダーのconvert
コマンドを使用して、シークレットマネージャーが利用できるタイプ指定されたレコードに変換できます。
形式:
convert <UID> --type <TYPE>
例:
convertコマンドは、パターンを使用してす該当するすべてのレコードを検索し、すべてのサブフォルダに変換を適用でき、すべてのレコードタイプをサポートします。
convert
コマンドの使用方法の詳細は、こちらのページをご参照ください。
スロットリング
KeeperシークレットマネージャーAPIは、短時間に大量のリクエストを送信する接続を制限します。 接続が制限されている場合、503応答コードなどのエラーが表示されます (実際のメッセージは、使用している統合機能/SDKによって異なります)。
レート制限の詳細
シークレットマネージャーAPIは、10秒の間隔を置かずに200回を超える呼び出しを行うシステムに制限を設けています。
このカウントは、10秒タイマーが切れるとリセットされますが、10秒以内に次のリクエストが送信されるたびにタイマーが更新されます。そのため、10秒間の間隔を置かなければシステムは引き続き制限されます。
スロットリングされる可能性のある場合の例
10秒以内に201回呼び出した場合
9秒ごとに1回呼び出し、201回目の呼び出しを行った場合
スロットリング制限を解決する方法
リクエストを送信する各マシンに対して追加のデバイスIDを生成する
200回の呼び出しごとにリクエストを10秒間一時停止する
スロットリング制限の変更が必要な場合は、Keeperチーム (commander@keepersecurity.com) にお問い合わせください。
最終更新