Configurare i ruoli di BigQuery sharing
Per gestire in modo sicuro l'accesso agli scambi di dati e alle inserzioni di BigQuery sharing (in precedenza Analytics Hub), concedi ruoli Identity and Access Management (IAM) specifici per BigQuery sharing. Assegnando questi ruoli, controlli le autorizzazioni utente per i tuoi dati, assicurandoti che solo gli utenti autorizzati possano scoprire, abbonarsi e gestire le tue risorse di condivisione dei dati.
Ruoli IAM di BigQuery sharing
Le seguenti sezioni descrivono i ruoli predefiniti di BigQuery sharing. Puoi assegnare questi ruoli agli utenti per eseguire varie attività sugli scambi di dati e sulle inserzioni.
Ruolo di amministratore di Analytics Hub
Per gestire gli scambi di dati,
BigQuery sharing fornisce il
ruolo di amministratore di Analytics Hub
(roles/analyticshub.admin) che puoi concedere per un Google Cloud progetto o uno scambio di
dati. Questo ruolo consente agli utenti di eseguire le seguenti operazioni:
- Creare, aggiornare ed eliminare scambi di dati.
- Creare, aggiornare, eliminare e condividere le inserzioni.
- Gestire gli amministratori, gli amministratori delle inserzioni, i publisher, gli abbonati e i visualizzatori di BigQuery sharing.
Con questo ruolo, diventi un amministratore di BigQuery sharing.
Ruoli di publisher di Analytics Hub e amministratore delle inserzioni
Per gestire le inserzioni, Sharing fornisce i seguenti ruoli predefiniti che puoi concedere per un progetto, uno scambio di dati o un'inserzione:
Ruolo di publisher di Analytics Hub (
roles/analyticshub.publisher), che consente agli utenti di eseguire le seguenti operazioni:- Creare, aggiornare ed eliminare le inserzioni.
- Impostare le policy IAM sulle inserzioni.
Con questo ruolo, diventi un publisher di BigQuery sharing.
Ruolo di amministratore delle inserzioni di Analytics Hub (
roles/analyticshub.listingAdmin), che consente agli utenti di eseguire le seguenti operazioni:- Aggiornare ed eliminare le inserzioni.
- Impostare le policy IAM sulle inserzioni.
Con questo ruolo, diventi un amministratore delle inserzioni di BigQuery sharing.
Ruoli di abbonato e visualizzatore di Analytics Hub
Per visualizzare e abbonarsi alle inserzioni e agli scambi di dati, Sharing fornisce i seguenti ruoli predefiniti che puoi concedere per un progetto, uno scambio di dati o un'inserzione:
Ruolo di abbonato di Analytics Hub (
roles/analyticshub.subscriber), che consente agli utenti di visualizzare e abbonarsi alle inserzioni.Con questo ruolo, diventi un abbonato di BigQuery sharing.
Ruolo di visualizzatore di Analytics Hub (
roles/analyticshub.viewer), che consente agli utenti di visualizzare le inserzioni e le autorizzazioni di scambio di dati.Con questo ruolo, diventi un visualizzatore di BigQuery sharing.
Ruolo di proprietario dell'abbonamento ad Analytics Hub
Per gestire gli abbonamenti, Sharing fornisce il seguente ruolo predefinito che puoi concedere a livello di progetto:
- Ruolo di proprietario dell'abbonamento ad Analytics Hub
(
roles/analyticshub.subscriptionOwner), che consente agli utenti di gestire i propri abbonamenti.
Con questo ruolo, diventi un proprietario dell'abbonamento a BigQuery sharing.
Concedere i ruoli IAM di BigQuery sharing
A seconda delle tue esigenze, puoi concedere i ruoli IAM ai seguenti livelli della gerarchia delle risorse:
- Progetto. Se concedi un ruolo per un progetto, questo si applica a tutti gli scambi di dati e le inserzioni del progetto.
- Scambio di dati. Se concedi un ruolo per uno scambio di dati, questo si applica a tutte le inserzioni dello scambio di dati.
- Scheda. Se concedi un ruolo per un'inserzione, questo si applica solo a quella specifica inserzione.
Concedere il ruolo per un progetto
Se vuoi impostare le policy IAM su un progetto, devi disporre del
ruolo Project IAM Admin
(roles/resourcemanager.projectIamAdmin) per il progetto. Per concedere i ruoli Identity and Access Management predefiniti di BigQuery sharing 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:
- Amministratore di Analytics Hub
- Amministratore delle inserzioni di Analytics Hub
- Publisher di Analytics Hub
- Abbonato di Analytics Hub
- Proprietario dell'abbonamento ad Analytics Hub
- Visualizzatore di Analytics Hub
(Facoltativo) Per controllare ulteriormente l'accesso alle Google Cloud risorse, aggiungi un'associazione di ruoli condizionale.
Salva le modifiche.
Puoi eliminare e aggiornare gli amministratori del progetto utilizzando lo stesso riquadro IAM.
gcloud
Per concedere i ruoli a livello di progetto, utilizza il
gcloud projects add-iam-policy-binding comando:
gcloud projects add-iam-policy-binding PROJECT_ID \
--member='PRINCIPAL' \
--role='roles/analyticshub.admin'
Sostituisci quanto segue:
PROJECT_ID: il progetto, ad esempiomy-project-1.PRINCIPAL: un'identità valida a cui vuoi assegnare il ruolo. Ad esempio:- Indirizzo email dell'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
- Indirizzo email dell'Account Google:
API
Leggi la policy esistente con il metodo
getIamPolicydella risorsa. Per i progetti, utilizza ilprojects.getIamPolicymetodo.POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy
Sostituisci
PROJECT_IDcon il 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
project.setIamPolicymetodo. 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 Google Cloud console, vai alla pagina Sharing (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 le 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 Identity and Access Management (IAM):
- Amministratore di Analytics Hub
- Amministratore delle inserzioni di Analytics Hub
- Publisher di Analytics Hub
- Abbonato di Analytics Hub
- Proprietario dell'abbonamento ad Analytics Hub
- Visualizzatore di Analytics Hub
Fai clic su Salva.
API
Leggi la policy esistente con il metodo
getIamPolicydell'inserzione utilizzando ilprojects.locations.dataExchanges.getIamPolicymetodo: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 località dello scambio di dati. Utilizza lettere minuscole.DATAEXCHANGE_ID: l'ID piattaforma di scambio.
BigQuery sharing (in precedenza Analytics Hub) restituisce la policy corrente.
Per aggiungere o rimuovere i membri e i relativi ruoli Identity and Access Management (IAM) 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
projects.locations.dataExchanges.setIamPolicymetodo. 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 dell'inserzione. Se la richiesta va a buon fine, il corpo della risposta contiene i dettagli dell'inserzione.
Quando concedi le 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 maiuscole e minuscole può causare errori Permission Denied.
- Utilizza:
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 di scambio di dati utilizzando lo stesso riquadro IAM.
Concedere il ruolo per un'inserzione
Per concedere il ruolo per un'inserzione:
Console
Nella Google Cloud console, vai alla pagina Sharing (Analytics Hub).
Fai clic sul nome dello scambio di dati che contiene l'inserzione.
Fai clic sulla scheda per cui vuoi aggiungere utenti.
Fai clic su Imposta autorizzazioni.
Per aggiungere le 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 Identity and Access Management (IAM):
- Amministratore di Analytics Hub
- Amministratore delle inserzioni di Analytics Hub
- Publisher di Analytics Hub
- Abbonato di Analytics Hub
- Proprietario dell'abbonamento ad Analytics Hub
- Visualizzatore di Analytics Hub
Fai clic su Salva.
API
Leggi la policy esistente con il metodo
getIamPolicydell'inserzione utilizzando ilprojects.locations.dataExchanges.listings.getIamPolicymetodo: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 località dello scambio di dati che contiene l'inserzione. Utilizza lettere minuscole.DATAEXCHANGE_ID: l'ID piattaforma di scambio.LISTING_ID: l'ID della scheda.
Sharing restituisce la policy corrente.
Per aggiungere o rimuovere i membri e i relativi ruoli Identity and Access Management (IAM) 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
projects.locations.dataExchanges.listings.setIamPolicymetodo. 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 dell'inserzione. Se la richiesta va a buon fine, il corpo della risposta contiene i dettagli dell'inserzione.
Quando concedi le autorizzazioni a livello di risorsa, ad esempio su un'inserzione, devi utilizzare lettere minuscole per la parte relativa alla località del nome della risorsa. L'utilizzo di valori in maiuscolo o con maiuscole e minuscole può causare errori Permission Denied.
- Utilizza:
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 delle schede utilizzando lo stesso riquadro IAM.
Passaggi successivi
- Scopri di più su ruoli e autorizzazioni di BigQuery sharing.
- Scopri di più su BigQuery sharing.
- Scopri come gestire gli scambi di dati.
- Scopri come gestire le inserzioni.
- Scopri come visualizzare e abbonarti alle inserzioni e agli scambi di dati.