サービスアカウント

サービスアカウントは、アプリケーションが Tenable One Cloud Exposure API に対する認証に使用する、人間以外の ID です。各サービスアカウントには、一意の ID、1 つ以上の割り当てられたロール、および独自のシークレットがあります。

シークレットとは、アプリケーションが API に送信する認証情報です。以前のリリースでは、この認証情報はトークンと呼ばれていました。各サービスアカウントは同時に最大 2 つのアクティブなシークレットを保持できるため、実行中のアプリケーションを中断することなく認証情報をローテーションできます。

サービスアカウントは、[Settings > Access Management] にある [Service Accounts] ページで管理します。シークレットを使用して API の呼び出しを開始するには、「 API の概要」を参照してください。

注意: サービスアカウントを作成して管理するには、 Settings アクセス許可が必要です。

サービスアカウントは、アカウント範囲内で動作します。コンソールの上部にあるスコープセレクターから、コンソールの他の場所と同じように範囲を設定します。デフォルトでは、組織全体が選択されています。

セカンダリシークレットローテーション

2 つのシークレットスロットを使用して、ダウンタイムなしで認証情報を置き換えることができます。サービスアカウントで許可されているシークレットが 1 つだけの場合、新しいシークレットを作成する前にアクティブなシークレットを削除する必要があり、接続されたアプリケーションはスイッチオーバー中に認証できませんでした。

ダウンタイムなしでシークレットをローテーションする方法

  1. アプリケーションは シークレット A で認証されます。
  2. シークレット B を作成します。これで、サービスアカウントに 2 つのアクティブなシークレットが含まれるようになりました。
  3. シークレット B を使用するように、アプリケーションコードまたは環境変数を更新します。
  4. アプリケーションが シークレット B で動作することを確認したら、 シークレット A を削除します。

サービスアカウントには、0 個、1 個、または 2 つのシークレットを保持できます。シークレットのないサービスアカウントは引き続き有効ですが、シークレットを作成するまで、アプリケーションはそのサービスアカウントで認証できません。

サービスアカウントを表示する

[Service Accounts] (サービスアカウント) ページに、選択した範囲内のすべてのサービスアカウントが一覧表示されます。

サービスアカウントを表示する方法

  1. 左側のナビゲーションバーで、 Settings [> Access Management] > [Service Accounts] (サービスアカウント) をクリックします。
  2. (オプション)行を展開すると、そのサービスアカウントに割り当てられた範囲が表示されます。

この表には、次の列が含まれています。

列 説明
名前 サービスアカウントの名前
Description (説明) サービスアカウントの説明 (オプション)
範囲 サービスアカウントが動作する範囲。
利用時間 サービスアカウントのシークレットが最後に使用されたタイムスタンプ。
変更時刻 サービスアカウントが最後に変更された日付
変更者 サービスアカウントを変更したユーザー

[作成時刻] と [作成者] 列はデフォルトでは非表示になっています。

サービスアカウントの各行には、次のオプションを含むアクションメニューが含まれています。 ロールの割り当ての追加、 新しいシークレットの作成、 編集、 削除。

サービスアカウントの作成

クラウドサイバーエクスポージャー は、コンソール上部にある範囲セレクターで現在選択されている範囲内にサービスアカウントを作成します。

サービスアカウントを作成する方法

  1. 左側のナビゲーションバーで、 Settings [> Access Management] > [Service Accounts] (サービスアカウント) をクリックします。
  2. [Create] をクリックします。

    [新しいサービスアカウントの作成] ウィンドウが表示されます。

  3. [名前] ボックスに、サービスアカウントの意味のある名前を入力します。
  4. (オプション) [説明] ボックスに説明を入力します。
  5. (オプション)[ロール] ドロップダウンボックスで、ロールを選択します。ロールは後で追加できます。詳細については、「 サービスアカウントを編集する」を参照してください。
  6. [Create] をクリックします。

    [新しいシークレットの作成] ウィンドウに、サービスアカウントの最初のシークレットが表示されます。

  7. シークレットを安全な場所にコピーします。
  8. [Close] (閉じる) をクリックします。
警告: シークレットは作成時に一度だけ表示されます。ウィンドウを閉じた後は、シークレットを再度表示することはできません。紛失した場合は、シークレットを削除して新しいシークレットを作成してください。

シークレットを作成する

2 つ目のシークレットを作成して認証情報をローテーションするか、何も持たないサービスアカウントのシークレットを作成します。シークレットは、[アクション] メニューまたは [サービスアカウントの編集] ウィンドウから作成できます。

シークレットを作成する方法

  1. 左側のナビゲーションバーで、 Settings [> Access Management] > [Service Accounts] (サービスアカウント) をクリックします。
  2. テーブルで、サービスアカウントを見つけます。
  3. サービスアカウントのアクションメニューをクリックし、[新しいシークレットの作成] をクリックします。

    [新しいシークレットの作成] ウィンドウに新しいシークレットが表示されます。

  4. シークレットを安全な場所にコピーします。
  5. [Close] (閉じる) をクリックします。
注意: サービスアカウントは、最大 2 つのアクティブなシークレットを保持します。サービスアカウントにすでに 2 つある場合にシークレットを作成するには、まず既存のシークレットの 1 つを削除します。

シークレットを削除する

シークレットに依存しているアプリケーションがないことを確認した後、[サービスアカウントの編集] ウィンドウからシークレットを削除します。

シークレットを削除する方法

  1. 左側のナビゲーションバーで、 Settings [> Access Management] > [Service Accounts] (サービスアカウント) をクリックします。
  2. テーブルで、サービスアカウントを見つけます。
  3. サービスアカウントのアクションメニューをクリックし、[編集] をクリックします。
  4. [シークレット] セクションで、削除するシークレットの横にある削除アイコンをクリックします。
  5. [シークレットを削除しますか?] ウィンドウで、[シークレットの削除] をクリックします。
警告: シークレットの削除は永続的であり、元に戻すことはできません。削除されたシークレットは復元できず、現在使用しているコードは直ちに動作を停止します。

ロールの割り当てを追加する

ロールは、サービスアカウントがアクセスできる対象を制御します。サービスアカウントは複数のロールを保持することができ、各ロールは独自の範囲に適用されます。

ロールの範囲は、コンソールの上部にある範囲セレクタで選択された全範囲、または任意の狭いサブセットにすることができます。これにより、あるロールで特定のフォルダーまたはアカウントへのアクセス権を付与し、別のロールで範囲全体をカバーできます。

ロールの割り当てを追加する方法

  1. 左側のナビゲーションバーで、 Settings [> Access Management] > [Service Accounts] (サービスアカウント) をクリックします。
  2. テーブルで、サービスアカウントを見つけます。
  3. サービスアカウントのアクションメニューをクリックし、[ロールの割り当ての追加] をクリックします。

    [ロールの割り当ての追加] ウィンドウが表示されます。

  4. [割り当てられた範囲] ドロップダウンボックスで、ロールが適用される範囲を選択します。
  5. [ロール] ドロップダウンボックスで、ロールを選択します。
  6. [Save] (保存) をクリックします。

サービスアカウントを編集する

[サービスアカウントの編集] ウィンドウを使用して、名前または説明を更新し、シークレットを作成または削除します。

サービスアカウントを編集する方法

  1. 左側のナビゲーションバーで、 Settings [> Access Management] > [Service Accounts] (サービスアカウント) をクリックします。
  2. テーブルで、サービスアカウントを見つけます。
  3. サービスアカウントのアクションメニューをクリックし、[編集] をクリックします。
  4. 名前または説明を更新します。
  5. [Save] (保存) をクリックします。

ウィンドウの [シークレット] セクションには、既存のシークレットが、[作成者]、[作成時間]、[使用時間] の値とともに一覧表示されます。このセクションから、[新しいシークレットの作成] でシークレットを作成したり、削除アイコンでシークレットを削除したりできます。

サービスアカウントを削除する

サービスアカウントを削除する方法

  1. 左側のナビゲーションバーで、 Settings [> Access Management] > [Service Accounts] (サービスアカウント) をクリックします。
  2. テーブルで、サービスアカウントを見つけます。
  3. サービスアカウントのアクションメニューをクリックし、[削除] をクリックします。
  4. プロンプトが表示されたら、削除を確定します。
警告: サービスアカウントは完全に削除されます。サービスアカウントを削除するとそのシークレットが削除され、そのシークレットを使用するコードは直ちに動作を停止します。

サービスアカウントの詳細の表示

サービスアカウントプロファイルは読み取り専用です。このアカウントを使用すると、変更せずにサービスアカウントを確認します。

サービスアカウントの詳細を表示する方法

  1. 左側のナビゲーションバーで、 Settings [> Access Management] > [Service Accounts] (サービスアカウント) をクリックします。
  2. テーブルにあるサービスアカウント名をクリックします。

プロファイルには次の詳細が表示されます。

  • 説明、 範囲、 使用時間、 変更時間
  • 変更者、 作成時間、 作成者
  • 割り当てられた各ロールとその範囲を一覧表示するロール割り当てテーブル
  • 各シークレットを、その作成者、作成者、作成時間、使用時間とともに一覧表示するシークレットテーブル

監査ログ

クラウドサイバーエクスポージャー のレコード システム監査のサービスアカウントに対するアクション の作成 と 削除 。サービスアカウントに割り当てられたロールに対するアクションは、サービスアカウント監査イベントとして記録されません。