Controllo dell'accesso con IAM

Questa pagina descrive i ruoli e le autorizzazioni Identity and Access Management (IAM) necessari per acquistare e gestire prodotti commerciali su Cloud Marketplace.

Con IAM, gestisci il controllo dell'accesso definendo chi (identità) ha quale accesso (ruolo) a quale risorsa. Per le app commerciali su Cloud Marketplace, gli utenti della tua Google Cloud organizzazione richiedono ruoli IAM per registrarsi ai piani di Cloud Marketplace e per apportare modifiche ai piani di fatturazione.

Prima di iniziare

  • Per concedere ruoli e autorizzazioni Cloud Marketplace utilizzando gcloud, installa gcloud CLI. In caso contrario, puoi concedere i ruoli utilizzando la console Google Cloud .

Ruoli IAM per l'acquisto e la gestione dei prodotti

Ti consigliamo di assegnare il ruolo IAM Amministratore account di fatturazione agli utenti che acquistano servizi da Cloud Marketplace.

Gli utenti che vogliono accedere ai servizi devono avere almeno il ruolo Visualizzatore.

Per un controllo più granulare sulle autorizzazioni degli utenti, puoi creare ruoli personalizzati con le autorizzazioni che vuoi concedere.

Requisiti specifici per i prodotti

Per utilizzare i seguenti servizi in un progetto Google Cloud , devi disporre del ruolo Editor progetto:

  • Google Cloud Dataprep di Trifacta
  • Neo4j Aura Professional
  • Redis Enterprise Cloud

Elenco di ruoli e autorizzazioni IAM

Puoi concedere agli utenti uno o più dei seguenti ruoli IAM. A seconda del ruolo che concedi agli utenti, devi assegnare il ruolo anche a un account di fatturazione, a un'organizzazione o a un progetto. Google Cloud Per maggiori dettagli, consulta la sezione Concedere ruoli IAM agli utenti.

Role Permissions

(roles/commercebusinessenablement.admin)

Admin of Various Provider Configuration resources

bigquery.datasets.create

bigquery.datasets.get

bigquery.datasets.update

commercebusinessenablement.leadgenConfig.*

  • commercebusinessenablement.leadgenConfig.get
  • commercebusinessenablement.leadgenConfig.update

commercebusinessenablement.partnerAccounts.*

  • commercebusinessenablement.partnerAccounts.get
  • commercebusinessenablement.partnerAccounts.list

commercebusinessenablement.partnerInfo.get

commercebusinessenablement.resellerConfig.*

  • commercebusinessenablement.resellerConfig.get
  • commercebusinessenablement.resellerConfig.update

commercebusinessenablement.resellerRestrictions.*

  • commercebusinessenablement.resellerRestrictions.list
  • commercebusinessenablement.resellerRestrictions.update

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

serviceusage.operations.get

serviceusage.services.enable

serviceusage.services.get

(roles/commercebusinessenablement.paymentConfigAdmin)

Administration of Payment Configuration resource

commercebusinessenablement.partnerInfo.get

commercebusinessenablement.paymentConfig.*

  • commercebusinessenablement.paymentConfig.get
  • commercebusinessenablement.paymentConfig.update

resourcemanager.projects.get

resourcemanager.projects.list

(roles/commercebusinessenablement.paymentConfigViewer)

Viewer of Payment Configuration resource

commercebusinessenablement.partnerInfo.get

commercebusinessenablement.paymentConfig.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/commercebusinessenablement.rebatesAdmin)

Provides admin access to rebates

commercebusinessenablement.operations.*

  • commercebusinessenablement.operations.cancel
  • commercebusinessenablement.operations.delete
  • commercebusinessenablement.operations.get
  • commercebusinessenablement.operations.list

commercebusinessenablement.partnerInfo.get

commercebusinessenablement.refunds.*

  • commercebusinessenablement.refunds.cancel
  • commercebusinessenablement.refunds.create
  • commercebusinessenablement.refunds.delete
  • commercebusinessenablement.refunds.get
  • commercebusinessenablement.refunds.list
  • commercebusinessenablement.refunds.start
  • commercebusinessenablement.refunds.update

(roles/commercebusinessenablement.rebatesViewer)

Provides read-only access to rebates

commercebusinessenablement.operations.get

commercebusinessenablement.operations.list

commercebusinessenablement.partnerInfo.get

commercebusinessenablement.refunds.get

commercebusinessenablement.refunds.list

(roles/commercebusinessenablement.resellerDiscountAdmin)

Provides admin access to reseller discount offers

commercebusinessenablement.partnerAccounts.*

  • commercebusinessenablement.partnerAccounts.get
  • commercebusinessenablement.partnerAccounts.list

commercebusinessenablement.partnerInfo.get

commercebusinessenablement.resellerConfig.get

commercebusinessenablement.resellerDiscountConfig.get

commercebusinessenablement.resellerDiscountOffers.*

  • commercebusinessenablement.resellerDiscountOffers.cancel
  • commercebusinessenablement.resellerDiscountOffers.create
  • commercebusinessenablement.resellerDiscountOffers.list

commercebusinessenablement.resellerPrivateOfferPlans.*

  • commercebusinessenablement.resellerPrivateOfferPlans.cancel
  • commercebusinessenablement.resellerPrivateOfferPlans.create
  • commercebusinessenablement.resellerPrivateOfferPlans.delete
  • commercebusinessenablement.resellerPrivateOfferPlans.get
  • commercebusinessenablement.resellerPrivateOfferPlans.list
  • commercebusinessenablement.resellerPrivateOfferPlans.publish
  • commercebusinessenablement.resellerPrivateOfferPlans.update

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/commercebusinessenablement.resellerDiscountViewer)

Provides read-only access to reseller discount offers

commercebusinessenablement.partnerAccounts.*

  • commercebusinessenablement.partnerAccounts.get
  • commercebusinessenablement.partnerAccounts.list

commercebusinessenablement.partnerInfo.get

commercebusinessenablement.resellerConfig.get

commercebusinessenablement.resellerDiscountConfig.get

commercebusinessenablement.resellerDiscountOffers.list

commercebusinessenablement.resellerPrivateOfferPlans.get

commercebusinessenablement.resellerPrivateOfferPlans.list

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/commercebusinessenablement.viewer)

Viewer of Various Provider Configuration resource

commercebusinessenablement.leadgenConfig.get

commercebusinessenablement.partnerAccounts.*

  • commercebusinessenablement.partnerAccounts.get
  • commercebusinessenablement.partnerAccounts.list

commercebusinessenablement.partnerInfo.get

commercebusinessenablement.resellerConfig.get

commercebusinessenablement.resellerRestrictions.list

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

Concedere ruoli IAM agli utenti

Dei ruoli nella tabella precedente, i ruoli consumerprocurement.orderAdmin e consumerprocurement.orderViewer devono essere assegnati a livello di account di fatturazione o organizzazione, mentre i ruoli consumerprocurement.entitlementManager e consumerprocurement.entitlementViewer devono essere assegnati a livello di progetto o organizzazione.

Per concedere ruoli agli utenti utilizzando gcloud, esegui uno dei seguenti comandi:

Organizzazione

Devi disporre del ruolo resourcemanager.organizationAdmin per assegnare ruoli a livello di organizzazione.

gcloud organizations add-iam-policy-binding organization-id \
--member=member --role=role-id

I valori segnaposto sono:

  • organization-id: l'ID numerico dell'organizzazione per cui stai concedendo il ruolo.
  • member: l'utente a cui stai concedendo l'accesso.
  • role-id: l'ID ruolo della tabella precedente.

Account di fatturazione

Per assegnare ruoli a livello di account di fatturazione, devi disporre del ruolo billing.admin.

gcloud beta billing accounts set-iam-policy account-id \
policy-file

I valori segnaposto sono:

Progetto

Devi disporre del ruolo resourcemanager.folderAdmin per assegnare i ruoli a livello di progetto.

gcloud projects add-iam-policy-binding project-id \
--member=member --role=role-id

I valori segnaposto sono:

  • project-id: il progetto per cui stai concedendo il ruolo.
  • member: l'utente a cui stai concedendo l'accesso.
  • role-id: l'ID ruolo della tabella precedente.

Per concedere ruoli agli utenti utilizzando la console Google Cloud , consulta la documentazione IAM su Concessione, modifica e revoca dell'accesso per gli utenti.

Utilizzo dei ruoli personalizzati con Cloud Marketplace

Se vuoi un controllo granulare sulle autorizzazioni che concedi agli utenti, puoi creare ruoli personalizzati con le autorizzazioni che vuoi concedere.

Se crei un ruolo personalizzato per gli utenti che acquistano servizi da Cloud Marketplace, il ruolo deve includere le seguenti autorizzazioni per l'account di fatturazione che utilizzano per acquistare i servizi:

Accesso ai siti web dei partner con il Single Sign-On (SSO)

Alcuni prodotti Marketplace supportano il Single Sign-On (SSO) a un sito web esterno del partner. Gli utenti autorizzati all'interno dell'organizzazione hanno accesso a un pulsante "GESTISCI SU FORNITORE" nella pagina dei dettagli del prodotto. Questo pulsante indirizza gli utenti al sito web del partner. In alcuni casi, agli utenti viene chiesto di "Accedere con Google". In altri casi, gli utenti hanno eseguito l'accesso a un contesto di account condiviso.

Per accedere alla funzionalità SSO, gli utenti vanno alla pagina dei dettagli del prodotto e selezionano un progetto appropriato. Il progetto deve essere collegato a un account di fatturazione in cui è stato acquistato il piano. Per informazioni dettagliate sulla gestione dei piani di Marketplace, vedi Gestire i piani di fatturazione.

Inoltre, l'utente deve disporre di autorizzazioni IAM sufficienti all'interno del progetto selezionato. Per la maggior parte dei prodotti, al momento è richiesto il roles/consumerprocurement.entitlementManager (o roles/editor ruolo di base).

Autorizzazioni minime per prodotti specifici

I seguenti prodotti possono operare su un insieme diverso di autorizzazioni per accedere alle funzionalità SSO:

  • Apache Kafka su Confluent Cloud
  • DataStax Astra per Apache Cassandra
  • Elastic Cloud
  • Neo4j Aura Professional
  • Redis Enterprise Cloud

Per questi prodotti, puoi utilizzare le seguenti autorizzazioni minime:

  • consumerprocurement.entitlements.get
  • consumerprocurement.entitlements.list
  • serviceusage.services.get
  • serviceusage.services.list
  • resourcemanager.projects.get

Queste autorizzazioni vengono in genere concesse con i ruoli roles/consumerprocurement.entitlementManager o roles/consumerprocurement.entitlementViewer.