1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ZOZOAdvent Calendar 2022

Day 11

GCEのデフォルトサービスアカウントにEditor権限を渡さない方法

Last updated at Posted at 2022-12-10

Google Compute Engineのインスタンスを立ち上げるときに、特に指定をしない場合はデフォルトのサービスアカウントが紐づくことになります。

このサービスアカウントは、PROJECT_NUMBER-compute@developer.gserviceaccount.com というアカウント名でEditor権限をもちます。
Editor権限はGCPにおいてかなり強い権限であり、IAM系以外のほぼ全ての操作を行うことができます。
そのため、多くの場合でこの権限は過剰です。

このデフォルトサービスアカウントの生成そのものを停止することはできませんが、Editor権限の付与を停止することはできます。
停止をするためにOrganization Policyを使います。

automaticIamGrantsForDefaultServiceAccounts というPolicyをONにすることで、そのポリシーが適用されたOrganization, Folder, Projectで生成されたデフォルトサービスアカウントがEditor権限を持たなくなります。
そして、その後に必要な権限だけを付与することができます。

このポリシーをOrganizationレベルで適用する例を以下に示します。
これを適用するとそのOrganization内で新たに作成されるデフォルトサービスアカウントが権限を持たない状態になります。
なお、既に生成されているサービスアカウントの権限が剥奪されることはなく、それらの権限はそのままになります。

data "google_organization" "org" {
  domain = "<Orgのドメイン名>"
}

resource "google_organization_policy" "gce-default-sa" {
  org_id     = data.google_organization.org.org_id
  constraint = "iam.automaticIamGrantsForDefaultServiceAccounts"

  boolean_policy {
    enforced = true
  }
}
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?