Google Cloud リソースに対するアクセス権限の付与

スキャンモードが googlecloud で動作する Ksocket は GCE インスタンスに関する情報を API 経由で収集します。

この際、対象の Google Cloud のプロジェクトに対して Compute 閲覧者(Compute Viewer) 相当のロールを必要とします。

そのため、以下のいずれかの方法で必要な権限を付与してください。

接続されたサービスアカウントを使用する場合

接続されたサービスアカウント を使用し Ksocket がインストールされた GCE インスタンスに対象プロジェクトへの権限を付与します。

具体的な設定手順は下記リンクを参照してください。

※サービスアカウントキー用のファイル(Ksocket インストール先の ./etc/ksocket/googlecloud.toml)が存在する場合は削除してください。

サービスアカウントキーを使用する場合

サービスアカウントキーを使用し Ksocket に対象となる管理対象プロジェクトへの権限を付与します。

サービスアカウントおよびサービスアカウントキーを作成します。

対象のプロジェクトをスコープとするロールを、作成したサービスアカウントに付与します。

上記の具体的な手順は下記リンクを参照してください。

作成したサービスアカウントキーは Ksocket を動作させるインスタンス内に配置します。

その後 Ksocket のインストール先に ./etc/ksocket/googlecloud.toml を作成し、以下のように設定してください1

# Google Cloud からダウンロードしたサービスアカウントキーのファイルパスを指定
# 絶対パスまたは相対パスを指定でき、相対パスの場合は、`$KSOCKET_HOME/etc/ksocket` を基準とする
serviceAccountFile = "/opt/fixpoint/ksocket/etc/ksocket/service-account-key.json"
# Windows の場合は、"C:\ProgramData\Fixpoint\ksocket\etc\ksocket\service-account-key.json"
1

設定ファイルがある場合はサービスアカウントキーの利用を優先します。
設定ファイル中に指定がない場合は、接続されたサービスアカウントによるスキャンを試みます。