このページでは、Cloud Marketplace で商用プロダクトを購入して管理するために必要な Identity and Access Management(IAM)のロールと権限について説明します。
IAM では、誰(ID)がどのリソースに対してどのようなアクセス権(ロール)を持つかを定義することにより、アクセス制御を管理します。Cloud Marketplace 上の商用アプリの場合、Google Cloud 組織のユーザーは、Cloud Marketplace プランへの登録および料金プランの変更を行うために IAM ロールが必要です。
- Cloud Marketplace プロダクトの課金管理について学習する。
- 請求に影響する要素の詳細。
- IAM の基本コンセプトについて学習する。
- Google Cloud リソースの階層について学習する。
始める前に
gcloud
を使用して Cloud Marketplace のロールと権限を付与するには、gcloud CLI をインストールします。それ以外の場合は、Google Cloud コンソールを使用してロールを付与できます。
プロダクトの購入と管理に必要な IAM のロール
Cloud Marketplace からサービスを購入するユーザーには、課金管理者(roles/billing.admin
)IAM ロールを割り当てることをおすすめします。
サービスにアクセスするユーザーには、少なくともプロジェクト閲覧者(roles/viewer
)のロールが必要です。
ユーザー権限をきめ細かく制御する必要がある場合は、付与する権限を使用してカスタムロールを作成できます。
IAM のロールと権限のリスト
次の IAM ロールの 1 つまたは複数をユーザーに付与できます。ユーザーに付与するロールに応じて、Google Cloud の請求先アカウント、組織、プロジェクトにもロールを割り当てる必要があります。詳細については、ユーザーに IAM ロールを付与するをご覧ください。
ロール | 権限 |
---|---|
コマース ビジネス支援構成管理者ベータ版( さまざまなプロバイダ構成リソースの管理者 |
commercebusinessenablement.
commercebusinessenablement.
commercebusinessenablement. commercebusinessenablement. resourcemanager. resourcemanager.projects.get resourcemanager.projects.list |
コマース ビジネス支援 PaymentConfig 管理者ベータ版( 支払い構成リソースの管理 |
commercebusinessenablement.
resourcemanager.projects.get resourcemanager.projects.list |
コマース ビジネス支援 PaymentConfig 閲覧者ベータ版( 支払い構成リソースの閲覧者 |
commercebusinessenablement. resourcemanager.projects.get resourcemanager.projects.list |
コマース ビジネス支援販売パートナー割引管理者ベータ版( 販売パートナー割引特典に対する管理者権限を付与します |
commercebusinessenablement.
commercebusinessenablement. commercebusinessenablement.
commercebusinessenablement.
resourcemanager. resourcemanager.projects.get resourcemanager.projects.list |
コマース ビジネス支援販売パートナー割引閲覧者ベータ版( 販売パートナー割引特典に対する読み取り専用アクセス権を付与します |
commercebusinessenablement.
commercebusinessenablement. commercebusinessenablement. commercebusinessenablement. resourcemanager. resourcemanager.projects.get resourcemanager.projects.list |
コマース ビジネス支援構成閲覧者ベータ版( さまざまなプロバイダ構成リソースの閲覧者 |
commercebusinessenablement.
commercebusinessenablement.
commercebusinessenablement. commercebusinessenablement. resourcemanager. resourcemanager.projects.get resourcemanager.projects.list |
コマース オファー カタログ オファー閲覧者ベータ版( オファーを表示できます。 |
commerceoffercatalog.*
|
Commerce Organization Governance 管理者ベータ版( Organization Governance API に対する完全アクセス権 |
commerceorggovernance.*
resourcemanager.projects.get resourcemanager.projects.list |
Commerce Organization Governance 閲覧者ベータ版( 読み取り専用 Organization Governance API に対する完全アクセス権。 |
commerceorggovernance. commerceorggovernance. commerceorggovernance. commerceorggovernance. commerceorggovernance. resourcemanager.projects.get resourcemanager.projects.list |
Commerce Price Management イベント ビューア ベータ版( イベントの表示を許可します |
commerceprice.events.*
resourcemanager.projects.get resourcemanager.projects.list |
Commerce Price Management Private Offers 管理者ベータ版( Private Offers を管理できます。 |
commerceprice.*
resourcemanager.projects.get resourcemanager.projects.list serviceusage.services.get serviceusage.services.list |
Commerce Price Management 閲覧者ベータ版( クーポン、無料トライアル、SKU を表示できます。 |
commerceprice. commerceprice. resourcemanager.projects.get resourcemanager.projects.list serviceusage.services.get serviceusage.services.list |
Commerce Producer 管理者ベータ版( Cloud Commerce Producer API 内のすべてのリソースに対する完全アクセス権を付与します。 |
commercebusinessenablement. resourcemanager.projects.get resourcemanager.projects.list |
Commerce Producer 閲覧者ベータ版( Cloud Commerce Producer API 内のすべてのリソースに対する読み取りアクセス権を付与します。 |
commercebusinessenablement. resourcemanager.projects.get resourcemanager.projects.list |
Consumer Procurement Entitlement 管理者ベータ版( エンタイトルメントを管理し、ユーザー プロジェクトのサービス状態の有効化、無効化、検査を行うことができます。 |
consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement.
consumerprocurement.
consumerprocurement.
orgpolicy.policy.get resourcemanager.projects.get resourcemanager.projects.list serviceusage.operations.get serviceusage.services.disable serviceusage.services.enable serviceusage.services.get serviceusage.services.list |
Consumer Procurement Entitlement 閲覧者ベータ版( ユーザー プロジェクトのエンタイトルメントとサービスの状態を検査できます。 |
consumerprocurement. consumerprocurement. consumerprocurement.
consumerprocurement. consumerprocurement. orgpolicy.policy.get resourcemanager.projects.get resourcemanager.projects.list serviceusage.services.get serviceusage.services.list |
Consumer Procurement イベント ビューア ベータ版( 監査ログの検査を許可します |
consumerprocurement.events.*
|
Consumer Procurement Order 管理者ベータ版( 購入を管理できます。 |
billing.accounts.get billing.accounts.getIamPolicy billing.accounts.list billing. billing.credits.list billing. commerceoffercatalog.*
consumerprocurement.accounts.*
consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement.events.*
consumerprocurement.
consumerprocurement.orders.*
|
Consumer Procurement Order 閲覧者ベータ版( 購入を検査できます。 |
billing.accounts.get billing.accounts.getIamPolicy billing.accounts.list billing.credits.list commerceoffercatalog.*
consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement.orders.get consumerprocurement. |
Consumer Procurement 管理者ベータ版( 請求先アカウントとプロジェクト レベルの両方で購入、同意を管理できます。 |
billing.accounts.get billing.accounts.getIamPolicy billing.accounts.list billing. billing.credits.list billing. commerceoffercatalog.*
consumerprocurement.*
orgpolicy.policy.get resourcemanager.projects.get resourcemanager.projects.list serviceusage.operations.get serviceusage.services.disable serviceusage.services.enable serviceusage.services.get serviceusage.services.list |
Consumer Procurement 閲覧者ベータ版( ユーザー プロジェクトの購入、同意、利用資格、サービスの状態を検査できます。 |
billing.accounts.get billing.accounts.getIamPolicy billing.accounts.list billing.credits.list commerceoffercatalog.*
consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement.
consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement. consumerprocurement.orders.get consumerprocurement. orgpolicy.policy.get resourcemanager.projects.get resourcemanager.projects.list serviceusage.services.get serviceusage.services.list |
ユーザーに IAM ロールを付与する
前のテーブルのロールから、consumerprocurement.orderAdmin
ロールと consumerprocurement.orderViewer
ロールは請求先アカウント レベルまたは組織レベルで割り当てる必要があります。consumerprocurement.entitlementManager
ロールと consumerprocurement.entitlementViewer
ロールは、プロジェクト レベルまたは組織レベルで割り当てる必要があります。
gcloud
を使用してユーザーにロールを付与するには、次のいずれかのコマンドを実行します。
組織
組織レベルでロールを割り当てるには、resourcemanager.organizationAdmin
が必要です。
gcloud organizations add-iam-policy-binding organization-id \
--member=member --role=role-id
プレースホルダの値は次のとおりです。
- organization-id: ロールが付与される組織の数値 ID。
- member: アクセス権が付与されるユーザー。
- role-id: 前のテーブルからのロール ID。
請求先アカウント
請求先アカウント レベルでロールを割り当てるには、billing.admin
が必要です。
gcloud beta billing accounts set-iam-policy account-id \
policy-file
プレースホルダの値は次のとおりです。
- account-id: 請求先アカウント ID。[請求先アカウントの管理] ページで取得できます。
- policy-file: JSON または YAML 形式の IAM ポリシー ファイル。ポリシー ファイルには、前のテーブルのロール ID と、ロールを割り当てるユーザーが含まれている必要があります。
プロジェクト
プロジェクト レベルでロールを割り当てるには、resourcemanager.folderAdmin
が必要です。
gcloud projects add-iam-policy-binding project-id \
--member=member --role=role-id
プレースホルダの値は次のとおりです。
- project-id: ロールが付与されるプロジェクト。
- member: アクセス権が付与されるユーザー。
- role-id: 前のテーブルからのロール ID。
Google Cloud コンソールを使用してユーザーにロールを付与するには、ユーザーのアクセス権の付与、変更、取り消しに関する IAM ドキュメントをご覧ください。
Cloud Marketplace でのカスタムロールの使用
ユーザーに付与する権限を細かく制御するには、付与したい権限のみを持つカスタムロールを作成します。
Cloud Marketplace からサービスを購入するユーザー用のカスタムロールを作成する場合、そのロールには、ユーザーがサービスの購入に使用する請求先アカウントに対する以下の権限が含まれている必要があります。
billing.subscriptions.create
とbilling.accounts.get
。通常はroles/billing.admin
ロールで付与されます。consumerprocurement.orders.place
(通常、roles/consumerprocurement.orderAdmin
ロールに付与されます)。consumerprocurement.accounts.create
(通常、roles/consumerprocurement.orderAdmin
ロールに付与されます)。
シングル サインオン(SSO)を使用してパートナー ウェブサイトにアクセスする
一部の Marketplace プロダクトでは、パートナーの外部ウェブサイトへのシングル サインオン(SSO)がサポートされています。組織内の承認済みユーザーは、プロダクトの詳細ページの [プロバイダで管理] ボタンにアクセスできます。このボタンを使用すると、ユーザーはパートナーのウェブサイトに移動します。ユーザーが「Google でログイン」を求められることがあります。それ以外の場合、ユーザーは共有アカウントのコンテキストでログインします。
SSO 機能にアクセスするには、プロダクトの詳細ページに移動し、適切なプロジェクトを選択します。プロジェクトは、プランを購入した請求先アカウントにリンクされている必要があります。Marketplace プランの管理の詳細については、料金プランの管理をご覧ください。
さらに、選択したプロジェクト内で十分な IAM 権限を持っている必要があります。ほとんどのプロダクトでは、現在 roles/consumerprocurement.entitlementManager
(またはroles/editor
基本ロール)が必要です。
特定のプロダクトの最小権限
次のプロダクトは、SSO 機能にアクセスするためのさまざまな権限セットで動作します。
- Apache Kafka on Confluent Cloud
- Apache Cassandra 向け DataStax Astra
- Elastic Cloud
- Neo4j Aura Professional
- Redis Enterprise Cloud
これらのプロダクトでは、次の最小権限を使用できます。
consumerprocurement.entitlements.get
consumerprocurement.entitlements.list
serviceusage.services.get
serviceusage.services.list
resourcemanager.projects.get
これらの権限には通常、roles/consumerprocurement.entitlementManager
または roles/consumerprocurement.entitlementViewer
のロールが付与されます。