Configura i ruoli di condivisione di BigQuery
Questo documento descrive i ruoli Identity and Access Management (IAM) utilizzati per BigQuery sharing (in precedenza Analytics Hub) e come concederli agli utenti. Per ulteriori informazioni, vedi Ruoli e autorizzazioni di condivisione di BigQuery.
Ruoli IAM di condivisione di BigQuery
Le seguenti sezioni descrivono i ruoli di condivisione BigQuery predefiniti. Puoi assegnare questi ruoli agli utenti per eseguire varie attività sugli scambi e sulle schede di dati.
Ruolo Analytics Hub Admin
Per gestire gli scambi di dati,
la condivisione BigQuery fornisce il
ruolo Amministratore hub Analytics
(roles/analyticshub.admin) che puoi concedere per un progetto o uno scambio di dati. Google Cloud Questo ruolo consente agli utenti di:
- Crea, aggiorna ed elimina scambi di dati.
- Crea, aggiorna, elimina e condividi schede.
- Gestisci gli amministratori di BigQuery sharing, gli amministratori delle schede, i publisher, gli abbonati e i visualizzatori.
Gli utenti con questo ruolo sono chiamati amministratori della condivisione BigQuery.
Ruoli Publisher e Listing Admin di Analytics Hub
Per gestire le schede, la condivisione fornisce i seguenti ruoli predefiniti che puoi concedere per un progetto, uno scambio di dati o una scheda:
Ruolo Publisher di Analytics Hub (
roles/analyticshub.publisher), che consente agli utenti di:- Crea, aggiorna ed elimina schede.
- Imposta policy IAM sulle schede.
Gli utenti con questo ruolo sono chiamati publisher di condivisione di BigQuery.
Ruolo Analytics Hub Listing Admin (
roles/analyticshub.listingAdmin), che consente agli utenti di:- Aggiorna ed elimina le schede.
- Imposta policy IAM sulle schede.
Gli utenti con questo ruolo sono chiamati amministratori delle schede di condivisione BigQuery.
Ruoli Analytics Hub Subscriber e Analytics Hub Visualizzatore
Per visualizzare e abbonarti a schede e scambi di dati, la condivisione fornisce i seguenti ruoli predefiniti che puoi concedere per un progetto, uno scambio di dati o una scheda:
Ruolo Iscritto di Analytics Hub (
roles/analyticshub.subscriber), che consente agli utenti di visualizzare e iscriversi agli elenchi.Gli utenti con questo ruolo sono chiamati abbonati alla condivisione BigQuery.
Ruolo Visualizzatore Analytics Hub (
roles/analyticshub.viewer), che consente agli utenti di visualizzare le schede e le autorizzazioni dello scambio di dati.Gli utenti con questo ruolo vengono chiamati visualizzatori della condivisione BigQuery.
Ruolo Analytics Hub Subscription Owner
Per gestire gli abbonamenti, la condivisione fornisce il seguente ruolo predefinito che puoi concedere a livello di progetto:
- Ruolo Proprietario sottoscrizione Analytics Hub
(
roles/analyticshub.subscriptionOwner), che consente agli utenti di gestire le proprie sottoscrizioni.
Gli utenti con questo ruolo sono denominati proprietari dell'abbonamento di condivisione BigQuery.
Concedi ruoli IAM per la condivisione di BigQuery
A seconda delle tue esigenze, puoi concedere i ruoli IAM ai seguenti livelli della gerarchia delle risorse:
Progetto. Se concedi agli utenti un ruolo per un progetto, il ruolo viene applicato a tutti gli scambi di dati e gli elenchi contenuti nel progetto.
Scambio di dati. Se concedi agli utenti un ruolo per uno scambio di dati, il ruolo viene applicato a tutte le schede contenute nello scambio di dati.
Scheda. Se concedi agli utenti un ruolo per una scheda, questo viene applicato solo a quella scheda specifica.
Concedere il ruolo per un progetto
Se vuoi impostare criteri IAM su un progetto, devi disporre del
ruolo Amministratore IAM progetto
(roles/resourcemanager.projectIamAdmin) su quel progetto. Per concedere i ruoli Identity and Access Management di condivisione BigQuery predefiniti per un progetto, seleziona una delle seguenti opzioni.
Console
Vai a IAM per il progetto.
Fai clic su Concedi l'accesso.
Nel campo Nuove entità, inserisci l'indirizzo email dell'identità a cui vuoi concedere l'accesso. Ad esempio:
- Email Account Google:
test-user@gmail.com - Gruppo Google:
admins@googlegroups.com - Service account:
server@example.gserviceaccount.com - Dominio Google Workspace:
example.com
- Email Account Google:
Nell'elenco Seleziona un ruolo, tieni il puntatore del mouse su Analytics Hub e seleziona uno dei seguenti ruoli:
- Analytics Hub Admin
- Analytics Hub Listing Admin
- Analytics Hub Publisher
- Analytics Hub Subscriber
- Analytics Hub Subscription Owner
- Analytics Hub Viewer
(Facoltativo) Per controllare ulteriormente l'accesso dell'utente alle risorse Google Cloud , aggiungi l'associazione di ruoli condizionale.
Salva le modifiche.
Puoi eliminare e aggiornare gli amministratori di un progetto tramite lo stesso pannello IAM, spiegato nei passaggi precedenti.
gcloud
Per concedere i ruoli a livello di progetto, utilizza il comando gcloud projects add-iam-policy-binding:
gcloud projects add-iam-policy-binding PROJECT_ID \
--member='PRINCIPAL' \
--role='roles/analyticshub.admin'
Sostituisci quanto segue:
PROJECT_ID: l'ID progetto, ad esempiomy-project-1PRINCIPAL: un'identità valida a cui vuoi assegnare il ruoloAd esempio:
- Email Account Google:
user:user@gmail.com - Gruppo Google:
group:admins@googlegroups.com - Service account:
serviceAccount:server@example.gserviceaccount.com - Dominio Google Workspace:
domain:example.com
- Email Account Google:
API
Leggi la policy esistente con il metodo
getIamPolicydella risorsa. Per i progetti, utilizza il metodoprojects.getIamPolicy.POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy
Sostituisci
PROJECT_IDcon l'ID progetto, ad esempiomy-project-1.Per aggiungere le entità e i relativi ruoli associati, modifica la policy con un editor di testo. Utilizza il seguente formato per aggiungere membri:
user:test-user@gmail.comgroup:admins@example.comserviceAccount:test123@example.domain.comdomain:example.domain.com
Ad esempio, per concedere il ruolo
roles/analyticshub.adminagroup:admins@example.com, aggiungi la seguente associazione alla policy:{ "members": [ "group:admins@example.com" ], "role":"roles/analyticshub.admin" }Scrivi la policy aggiornata utilizzando il metodo
setIamPolicy.Ad esempio, per impostare una policy a livello di progetto, utilizza il metodo
project.setIamPolicy. Nel corpo della richiesta, fornisci la policy IAM aggiornata del passaggio precedente.POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy
Sostituisci
PROJECT_IDcon l'ID progetto.
Concedere il ruolo per uno scambio di dati
Per concedere il ruolo per uno scambio di dati:
Console
Nella console Google Cloud , vai alla pagina Condivisione (Analytics Hub).
Fai clic sul nome dello scambio di dati per cui vuoi impostare le autorizzazioni.
Vai alla scheda Dettagli.
Fai clic su Imposta autorizzazioni.
Per aggiungere entità, fai clic su Aggiungi entità.
Nel campo Nuove entità, aggiungi gli ID email a cui vuoi concedere l'accesso. Puoi anche utilizzare
allUsersper rendere una risorsa pubblica e accessibile a tutti su internet oppureallAuthenticatedUsersper renderla accessibile solo agli utenti Google che hanno eseguito l'accesso.Nel menu Seleziona un ruolo, seleziona Analytics Hub, quindi seleziona uno dei seguenti ruoli IAM (Identity and Access Management):
- Analytics Hub Admin
- Analytics Hub Listing Admin
- Analytics Hub Publisher
- Analytics Hub Subscriber
- Analytics Hub Subscription Owner
- Analytics Hub Viewer
Fai clic su Salva.
API
Leggi la policy esistente con il metodo
getIamPolicydell'elenco utilizzando il metodoprojects.locations.dataExchanges.getIamPolicy:POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
Sostituisci quanto segue:
PROJECT_ID: l'ID progetto, ad esempiomy-project-1.LOCATION: la posizione per lo scambio di dati. Utilizza lettere minuscole.DATAEXCHANGE_ID: l'ID piattaforma di scambio di dati.
BigQuery sharing (in precedenza Analytics Hub) restituisce le norme attuali.
Per aggiungere o rimuovere i membri e i relativi ruoli IAM (Identity and Access Management) associati, modifica la policy con un editor di testo. Utilizza il seguente formato per aggiungere membri:
user:test-user@gmail.comgroup:admins@example.comserviceAccount:test123@example.domain.comdomain:example.domain.com
Ad esempio, per concedere il ruolo
roles/analyticshub.subscriberagroup:subscribers@example.com, aggiungi la seguente associazione alla policy:{ "members": [ "group:subscribers@example.com" ], "role":"roles/analyticshub.subscriber" }Scrivi la policy aggiornata utilizzando il metodo
projects.locations.dataExchanges.setIamPolicy. Nel corpo della richiesta, fornisci la policy IAM aggiornata del passaggio precedente.POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
Nel corpo della richiesta, fornisci i dettagli della scheda. Se la richiesta va a buon fine, il corpo della risposta contiene i dettagli della scheda.
Quando concedi autorizzazioni a livello di risorsa, ad esempio su uno
scambio di dati, devi utilizzare lettere minuscole per la parte relativa alla località del
nome della risorsa. L'utilizzo di valori in maiuscolo o con combinazione di maiuscole e minuscole
può causare errori Permission Denied.
- Usa:
projects/myproject/locations/us/dataExchanges/123 - Evita:
projects/myproject/locations/US/dataExchanges/123 - Evita:
projects/myproject/locations/Eu/dataExchanges/123
Puoi eliminare e aggiornare i ruoli per uno scambio di dati tramite lo stesso pannello IAM, come spiegato nei passaggi precedenti.
Concedere il ruolo per una scheda
Per concedere il ruolo per una scheda:
Console
Nella console Google Cloud , vai alla pagina Condivisione (Analytics Hub).
Fai clic sul nome dello scambio di dati contenente la scheda.
Fai clic sulla scheda a cui vuoi aggiungere utenti.
Fai clic su Imposta autorizzazioni.
Per aggiungere entità, fai clic su Aggiungi entità.
Nel campo Nuove entità, aggiungi gli ID email dell'identità a cui vuoi concedere l'accesso.
Nel menu Seleziona un ruolo, seleziona Analytics Hub, quindi seleziona uno dei seguenti ruoli IAM (Identity and Access Management):
- Analytics Hub Admin
- Analytics Hub Listing Admin
- Analytics Hub Publisher
- Analytics Hub Subscriber
- Analytics Hub Subscription Owner
- Analytics Hub Viewer
Fai clic su Salva.
API
Leggi la policy esistente con il metodo
getIamPolicydell'elenco utilizzando il metodoprojects.locations.dataExchanges.listings.getIamPolicy:POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID:getIamPolicy
Sostituisci quanto segue:
PROJECT_ID: l'ID progetto, ad esempiomy-project-1.LOCATION: la posizione del data exchange che contiene la scheda. Utilizza lettere minuscole.DATAEXCHANGE_ID: l'ID piattaforma di scambio di dati.LISTING_ID: l'ID scheda.
La condivisione restituisce la policy corrente.
Per aggiungere o rimuovere i membri e i relativi ruoli IAM (Identity and Access Management) associati, modifica la policy con un editor di testo. Utilizza il seguente formato per aggiungere membri:
user:test-user@gmail.comgroup:admins@example.comserviceAccount:test123@example.domain.comdomain:example.domain.com
Ad esempio, per concedere il ruolo
roles/analyticshub.publisheragroup:publishers@example.com, aggiungi la seguente associazione alla policy:{ "members": [ "group:publishers@example.com" ], "role":"roles/analyticshub.publisher" }Scrivi la policy aggiornata utilizzando il metodo
projects.locations.dataExchanges.listings.setIamPolicy. Nel corpo della richiesta, fornisci la policy IAM aggiornata del passaggio precedente.POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING-ID:setIamPolicy
Nel corpo della richiesta, fornisci i dettagli della scheda. Se la richiesta va a buon fine, il corpo della risposta contiene i dettagli della scheda.
Quando concedi autorizzazioni a livello di risorsa, ad esempio per una scheda, devi utilizzare lettere minuscole per la parte relativa alla località del nome della risorsa. L'utilizzo di valori in maiuscolo o con combinazione di maiuscole e minuscole
può causare errori Permission Denied.
- Usa:
projects/myproject/locations/us/dataExchanges/123/listings/456 - Evita:
projects/myproject/locations/US/dataExchanges/123/listings/456 - Evita:
projects/myproject/locations/Eu/dataExchanges/123/listings/456
Puoi eliminare e aggiornare i ruoli per una scheda tramite lo stesso pannello IAM, spiegato nei passaggi precedenti.
Passaggi successivi
- Scopri di più sui ruoli IAM di BigQuery.
- Scopri di più sulla condivisione di BigQuery.
- Scopri come gestire gli scambi di dati.
- Scopri come gestire le schede.
- Scopri come visualizzare e abbonarti a schede e Data Exchange.