IAM Roleとは? Principal・Permissionとの関係

プログラミング・Web開発カテゴリを表すパンダのイラスト プログラミング・Web開発

この記事について

この記事は、生成AIを活用した自動生成フローで作成しています。

Google CloudのPermissionをまとめたRoleをPrincipalへ付与することで、リソースへのアクセスを制御します。

情報確認基準日:2026-09-19

まず結論

Google CloudのPermissionをまとめたRoleをPrincipalへ付与することで、リソースへのアクセスを制御します。

観点要点
Principal誰がアクセスするか
Credentialどう本人・Workloadを証明するか
Role何を許可するか
運用長期秘密情報を減らす
flowchart LR
 P[Principal] --> Auth[認証]
 Auth --> IAM[IAM]
 Role[Role / Permission] --> IAM
 IAM --> Resource[Google Cloud Resource]

実務でのポイント

人間ユーザー、Service Account、外部Workload、外部IdPユーザーを区別し、用途に合う認証方式を選びます。長期鍵を安易に配布しない設計が重要です。

セキュリティ

Refresh TokenやService Account鍵など長期資格情報を公開リポジトリへ保存しません。最小権限、短命資格情報、監査ログを組み合わせます。

公式情報

次に何をすればよい?

現在のPrincipalと資格情報を棚卸しし、不要な長期鍵を減らせるか公式ガイドに沿って検討します。

個別一次情報の深掘り

IAMではprincipalにroleをgrantし、roleがpermissionの集合を持ちます。初心者はPrincipal→Role→Permissionの関係を分け、Basic roleを広く付与するよりpredefined/custom roleで必要最小権限を検討します。

Google公式一次情報

Papanda TRY:Principal→Role→Permissionを展開表示

架空IAM policy JSONをPowerShellで読み、principalごとにroleを一覧化する教材を作ります。Owner等の強い権限を自動変更せず、読むだけの棚卸しから始めます。

結局どういうサービス?

Google CloudのPermissionをまとめたRoleをPrincipalへ付与することで、リソースへのアクセスを制御します。

補強監査メモ

この領域は「認証情報をファイルで配る」設計から、短期資格情報・フェデレーション・標準ライブラリへ寄せる流れを意識して整理します。RESTを直接呼ぶ場合とClient Libraryを使う場合でも、最終的な権限はIAMやOAuth scope等で制御されます。

実務チェック

  1. Principal(誰/何が呼ぶか)を特定する。

  2. 長期JSON keyを本当に必要とするか確認する。

  3. 外部環境ならWorkload/Workforce Identity Federationを検討する。

  4. ADCやClient Libraryで認証処理を共通化できるか確認する。

  5. REST直叩きではHTTP status、pagination、retry、quotaを明示的に扱う。

  6. credential、token、個人識別子を公開GitHubやログへ残さない。

Microsoft経験者への読み替え

Managed Identity、federated credential、RBAC、SDK利用と似た設計観点があります。ただしGoogle IAMのRole/Permission、ADC、各APIのscopeをGoogle公式仕様で個別確認します。

文書情報

記事タイトル
IAM Roleとは? Principal・Permissionとの関係
作成日
更新日
Source URL
https://papanda925.com/?p=16830

ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

タイトルとURLをコピーしました