IAM によるアクセス制御

Google Cloud プロジェクトを作成した時点で、プロジェクトに参加しているのは作成したユーザーのみです。デフォルトでは、他のユーザーはプロジェクトやリソースにアクセスできません。Identity and Access Management(IAM)は、 Google Cloud リソース(クラスタなど)を管理します。権限は IAM のプリンシパルに割り当てられます。

IAM では、プリンシパルロールを付与できます。ロールは権限の集合体であり、ロールをプリンシパルに付与することで、1 つ以上の Google Cloud リソースへのアクセス権を制御できます。次のタイプのロールを使用できます。

  • 基本ロールは、オーナー、編集者、閲覧者に限定された大まかな権限を提供します。
  • 事前定義ロールは、基本ロールよりもきめ細かいアクセス権限を提供し、一般的な多くのユースケースに対応します。
  • カスタムロールを使用すると、権限を独自に組み合わせて作成できます。

プリンシパルは次のいずれかです。

  • ユーザー アカウント
  • サービス アカウント
  • Google Workspace Google グループ
  • Google Workspace ドメイン
  • Cloud Identity ドメイン

IAM ポリシーのタイプ

IAM は、次のポリシータイプをサポートしています。

  • 許可ポリシー: プリンシパルにロールを付与します。詳しくは、許可ポリシーをご覧ください。
  • 拒否ポリシー: プリンシパルが付与されているロールに関係なく、プリンシパルが特定の IAM 権限を使用できないようにします。詳細については、拒否ポリシーをご覧ください。

IAM 許可ポリシーで関連する権限を含むロールをプリンシパルに付与している場合でも、拒否ポリシーを使用すると、特定のプリンシパルがプロジェクト、フォルダ、組織で特定のアクションを実行できないように制限できます。

事前定義ロール

IAM には、特定の Google Cloud リソースに対するきめ細かいアクセス権を付与し、他のリソースへの望ましくないアクセスを防ぐための事前定義ロールが用意されています。 Google Cloud は、これらのロールを作成して維持し、Google Cloud Observability に新機能が追加されたときなど、必要に応じて権限を自動的に更新します。

Google Cloud Observability の事前定義ロールには、複数のプロダクト領域にまたがる機能の権限が含まれています。このため、これらのプロダクト領域の事前定義ロールに observability.scopes.get などの権限が含まれている場合があります。たとえば、ログ閲覧者のロール(roles/logging.viewer)には、多くのロギング固有の権限に加えて、observability.scopes.get 権限が含まれています。

次の表に、Google Cloud Observability の事前定義ロールを示します。ロールごとに、テーブルには、ロールのタイトル、説明、含まれている権限、ロールに付与できる最低レベルのリソースタイプが表示されます。 Google Cloud プロジェクト レベルで、またはほとんどの場合に、リソース階層のそれ以上の任意のタイプで、事前定義されたロールを付与できます。

ロールに含まれる個々の権限のすべてのリストを取得するには、ロール メタデータの取得をご覧ください。

Role Permissions

(roles/observability.admin)

Full access to Observability resources.

observability.*

  • observability.analyticsViews.create
  • observability.analyticsViews.delete
  • observability.analyticsViews.get
  • observability.analyticsViews.list
  • observability.analyticsViews.update
  • observability.scopes.get
  • observability.scopes.update

(roles/observability.analyticsUser)

Grants permissions to use Cloud Observability Analytics.

observability.analyticsViews.*

  • observability.analyticsViews.create
  • observability.analyticsViews.delete
  • observability.analyticsViews.get
  • observability.analyticsViews.list
  • observability.analyticsViews.update

observability.scopes.get

(roles/observability.editor)

Edit access to Observability resources.

observability.*

  • observability.analyticsViews.create
  • observability.analyticsViews.delete
  • observability.analyticsViews.get
  • observability.analyticsViews.list
  • observability.analyticsViews.update
  • observability.scopes.get
  • observability.scopes.update

(roles/observability.viewer)

Read only access to Observability resources.

observability.analyticsViews.get

observability.analyticsViews.list

observability.scopes.get

次のステップ