IAM によるアクセス制御

Service Usage は、Identity and Access Management(IAM)を使用して、サービスへのアクセスを制御します。このページでは、Service Usage に関連する IAM のロールと権限と、それらを使用してアクセスを制御する方法について説明します。

リソースモデル

Service Usage には、3 つの関連するリソースがあります。

  1. 使用しているサービス。

  2. サービスを使用しているプロジェクト。

  3. 特定のメソッドによって返されるオペレーションまたは長時間実行オペレーション。

各 Service Usage メソッドでは、これらの 1 つ以上のリソースに対する権限が必要です。

IAM の権限

以下の表に、各 Service Usage API メソッドに対して必要な権限を示します。API リファレンスでこの情報を確認することもできます。

メソッド 必要な権限
services.batchEnable プロジェクトに対して:serviceusage.services.enable
サービスに対して:servicemanagement.services.bind
services.enable プロジェクトに対してserviceusage.services.enable
サービスに対して:servicemanagement.services.bind
services.disable プロジェクトに対して:serviceusage.services.disable
services.get プロジェクトに対して:serviceusage.services.get
services.list プロジェクトに対して:serviceusage.services.list
services.consumerQuotaMetrics.list
services.consumerQuotaMetrics.get
services.consumerQuotaMetrics.limits.get
services.consumerQuotaMetrics.limits.consumerOverrides.list
services.consumerQuotaMetrics.limits.adminOverrides.list
services.consumerQuotaMetrics.limits.producerOverrides.list
プロジェクトに対して:serviceusage.quota.get
サービスに対して:servicemanagement.services.bind
services.consumerQuotaMetrics.consumerOverrides.create
services.consumerQuotaMetrics.consumerOverrides.patch
services.consumerQuotaMetrics.consumerOverrides.delete
services.adminQuotaMetrics.adminOverrides.create
services.adminQuotaMetrics.adminOverrides.patch
services.adminQuotaMetrics.adminOverrides.delete
プロジェクトに対してserviceusage.quota.update
サービスに対して:servicemanagement.services.bind
割り当てと課金のためにプロジェクトを使用する目的のため。詳細については、システム パラメータをご覧ください。 プロジェクトに対して:serviceusage.services.use

IAM ロール

IAM では、ユーザーにロールを付与することで権限を付与します。次の表に、IAM の基本ロールと事前定義ロール、およびそれらのロールに含まれる Service Usage に関連する権限を示します。

ロールの詳細については、ロールについてをご覧ください。

基本ロール

名前 タイトル 権限
roles/viewer 閲覧者 serviceusage.services.get
serviceusage.services.list
serviceusage.quotas.get

roles/editor

roles/owner

編集者

オーナー

serviceusage.services.get
serviceusage.services.list
serviceusage.services.disable
serviceusage.services.enable
serviceusage.services.use
serviceusage.quotas.get
serviceusage.quotas.update

事前定義ロール

Role Permissions

(roles/serviceusage.apiKeysAdmin)

Ability to create, delete, update, get and list API keys for a project.

apikeys.*

  • apikeys.keys.create
  • apikeys.keys.delete
  • apikeys.keys.get
  • apikeys.keys.getKeyString
  • apikeys.keys.list
  • apikeys.keys.lookup
  • apikeys.keys.undelete
  • apikeys.keys.update

serviceusage.apiKeys.*

  • serviceusage.apiKeys.regenerate
  • serviceusage.apiKeys.revert

(roles/serviceusage.apiKeysViewer)

Ability to get and list API keys for a project.

apikeys.keys.get

apikeys.keys.getKeyString

apikeys.keys.list

apikeys.keys.lookup

(roles/serviceusage.serviceUsageAdmin)

Ability to enable, disable, and inspect service states, inspect operations, and consume quota and billing for a consumer project.

monitoring.timeSeries.list

serviceusage.quotas.*

  • serviceusage.quotas.get
  • serviceusage.quotas.update

serviceusage.services.*

  • serviceusage.services.disable
  • serviceusage.services.enable
  • serviceusage.services.get
  • serviceusage.services.list
  • serviceusage.services.use

(roles/serviceusage.serviceUsageConsumer)

Ability to inspect service states and operations, and consume quota and billing for a consumer project.

monitoring.timeSeries.list

serviceusage.quotas.get

serviceusage.services.get

serviceusage.services.list

serviceusage.services.use

(roles/serviceusage.serviceUsageViewer)

Ability to inspect service states and operations for a consumer project.

monitoring.timeSeries.list

serviceusage.quotas.get

serviceusage.services.get

serviceusage.services.list