【GCP】サービスアカウントキー作成不可を解消!組織ポリシーの解除完全ガイド
Google Cloud (GCP) の新規アカウント作成時、セキュリティ上の理由で「サービスアカウントキーの作成」がデフォルトで禁止されていることがあります。本記事では、組織の管理者権限を持っていても直面する「ポリシー変更ボタンが押せない」「設定が反映されない」といった課題を解決し、確実にキーを作成する手順を解説します。
1. 背景と課題:なぜキーが作成できないのか?
GCPの新しい組織やプロジェクトでは、セキュリティのベストプラクティスとして「サービスアカウントキーの作成停止」という組織ポリシーが強制適用されています。このため、IAM画面でキーを作成しようとするとエラーが表示されます。
主な課題:
- 「組織管理者」であっても、デフォルトでは「組織ポリシー」を変更する権限がない。
- 新旧2種類のポリシー(通常版とマネージド版)が二重に制限をかけている。
- コンソール上で「ポリシーの編集」ボタンがグレーアウトして押せない。
2. 解決策:3つのステップで制限を解除する
この問題を解決するには、自分自身に適切な権限を付与した上で、組織レベルで2つのポリシーを「オフ」に設定する必要があります。
ステップ1:必要な権限(ロール)の自己付与
組織の最高管理者であっても、個別に以下のロールが必要です。
- IAMと管理 > IAM 画面を開く。
- 自分のアカウントの編集アイコンをクリック。
- 「組織ポリシー管理者 (Organization Policy Admin)」 ロールを追加して保存。
ステップ2:組織レベルへの切り替え
プロジェクト単位の画面では、上位組織から継承されたポリシーを変更できません。
- コンソール左上のプロジェクト選択画面から、組織 を選択します。
ステップ3:2つの組織ポリシーを「オフ」にする
以下の2つのポリシーIDを検索し、それぞれ設定を変更します。
| ポリシーの種類 | ポリシーID |
|---|---|
| マネージド制約 | iam.managed.disableServiceAccountKeyCreation |
| 旧版(レガシー) | constraints/iam.disableServiceAccountKeyCreation |
【設定のポイント】
- 各ポリシーの詳細画面で [ポリシーを管理] または [ポリシーを編集] をクリック。
- 「ポリシーのソース」で [親のリソースのポリシーをオーバーライドする] を選択。
- [ルールを追加] をクリックし、「適用」を [オフ] に設定(「オフ」にすることで「禁止を解除」する意味になります)。
- [ポリシーを設定] をクリックして保存。
3. 実装・運用の要点:UIでエラーが出た場合の対処法
ポリシー設定時に「複数のルールに条件がありません」という赤文字のエラーが出る場合があります。これは、古い空のルールが残っていることが原因です。
- 対処法: ルール一覧にある既存のカードをゴミ箱アイコンで全て削除してから、新しく「適用:オフ」のルールを1つだけ作成してください。
設定完了後、反映まで 3〜5分程度 待機します。その後、対象プロジェクトの「サービスアカウント > キー > 鍵を追加」からJSONキーが作成可能になります。
4. 学び:権限とポリシーの分離
今回のケースから得られる重要な教訓は、GCPにおいて 「組織管理者 (Organization Admin)」は万能ではない という点です。セキュリティに関わる「組織ポリシー」の操作には、専用の管理ロールが必要になります。
また、新旧のポリシーが混在している場合、両方を明示的にオフにしなければ制限は解除されません。コンソールの警告メッセージ(「旧版の制約が有効です」など)を注意深く読み、一つずつ紐解くことが解決への近道です。

