Questa pagina fornisce informazioni sui ruoli e sulle autorizzazioni di Identity and Access Management (IAM) e su come vengono utilizzati con le istanze Cloud SQL.
Introduzione
Questa pagina si concentra sugli aspetti di IAM pertinenti in particolare a Cloud SQL. Per una discussione dettagliata Per IAM e le sue funzionalità in generale, consulta Identity and Access Management. Nella consulta la sezione Gestione dei criteri IAM. IAM ti consente di controllare chi ha accesso alle risorse nel tuo progetto Google Cloud. L'insieme di regole di accesso che applichi è un criterio IAM. Un criterio IAM applicato al progetto definisce le azioni che gli utenti possono eseguire su tutte le risorse al suo interno.
I membri indicano "chi" di IAM. I membri possono essere singoli utenti gruppi, domini e persino il pubblico nel suo complesso. Ai membri vengono assegnati dei ruoli che consentono ai membri di eseguire azioni in Cloud SQL e Google Cloud più in generale. Ogni ruolo è una raccolta di uno maggiori autorizzazioni. Le autorizzazioni sono le unità di base di IAM: ogni autorizzazione consente di eseguire una determinata azione. Consulta: Ruoli IAM in Cloud SQL e le autorizzazioni IAM in Cloud SQL per gli elenchi completi di tutti i ruoli e le autorizzazioni disponibili in Cloud SQL.
Quando utilizzi un account per connetterti a un account Cloud SQL
istanza, l'account deve avere la classe Cloud SQL > il ruolo Cliente (roles/cloudsql.client
), che
include le autorizzazioni
richiesta per la connessione.
Puoi aggiungere ruoli a un account nella console nella pagina IAM e amministrazione > IAM e visualizzare le autorizzazioni appartenenti a ciascun ruolo nella pagina IAM e amministrazione > Ruoli.
Cloud SQL utilizza account di servizio per l'autenticazione tra Cloud SQL
e altri prodotti Google Cloud. Gli account di servizio forniscono credentials
in formato JSON, che puoi scaricare dalla console e utilizzare per l'autenticazione in vari scenari.
Ruoli e autorizzazioni Cloud SQL con il proxy di autenticazione Cloud SQL
Se ti connetti a un'istanza Cloud SQL da Compute Engine utilizzando il proxy di autenticazione Cloud SQL, puoi utilizzare l'account di servizio Compute Engine predefinito associato di Compute Engine.
Come per tutti gli account che si connettono a un'istanza Cloud SQL, deve disporre del ruolo Cloud SQL > Cliente.
Ruoli e autorizzazioni di Cloud SQL con opzioni serverless
Utilizza un account di servizio per autorizzare l'accesso da queste opzioni. Il servizio autorizza l'accesso a tutto il codice Cloud SQL in un progetto specifico. Quando creare un'applicazione o una funzione Cloud Run, questo servizio crea questo account per te. Puoi trovare l'account nella IAM e Amministratore > IAM , con il suffisso appropriato:
Opzione serverless | Sufisso dell'account di servizio |
---|---|
App Engine | @gae-api-prod.google.com.iam.gserviceaccount.com |
Funzioni Cloud Run | @appspot.gserviceaccount.com |
Cloud Run | compute@developer.gserviceaccount.com |
Ruoli e autorizzazioni Cloud SQL con Cloud Storage
Le funzionalità di importazione ed esportazione in Cloud SQL funzionano in sinergia. Le esportazioni scrivono in Cloud Storage e le importazioni leggono da lì. Per questo motivo, l'account di servizio che utilizzi per queste operazioni richiede sia la lettura che la scrittura le autorizzazioni per Cloud Storage:
- Per importare ed esportare dati da Cloud Storage, Cloud SQL
l'account di servizio dell'istanza deve avere
storage.objectAdmin
Ruolo IAM impostato nel progetto. Puoi trovare il nome dell'account di servizio dell'istanza nella pagina Panoramica dell'istanza nella console Google Cloud. - Puoi utilizzare il comando
gcloud storage buckets add-iam-policy-binding
per concedere Ruolo IAM all'account di servizio per il bucket. - Per assistenza sull'impostazione dei ruoli e delle autorizzazioni IAM, consulta Utilizzare le autorizzazioni IAM.
- Per ulteriori informazioni, consulta IAM per Cloud Storage.
Ruoli e autorizzazioni Cloud SQL per l'integrazione di Dataplex
Per fornire l'accesso ai metadati di Cloud SQL su Dataplex, puoi concedere a un utente il ruolo roles/cloudsql.schemaViewer
o aggiungere l'autorizzazione cloudsql.schemas.view
a un ruolo personalizzato.
Per saperne di più, consulta Gestire le risorse Cloud SQL con Dataplex Catalog.
Ruoli e autorizzazioni di Cloud SQL con altri scenari
Cloud SQL interagisce con altri prodotti e strumenti Google Cloud. Queste interazioni richiedono anche ruoli e autorizzazioni specifici, che possono variare da una situazione all'altra. La documentazione di Cloud SQL fornisce informazioni informazioni su questi requisiti per ciascun caso riportato di seguito:
- Utilizzo delle chiavi di crittografia gestite dal cliente (CMEK).
- Ruoli IAM per amministrare i Controlli di servizio VPC.
Usa IAM con i progetti
Le sezioni seguenti mostrano come completare le attività di IAM di base sui progetti.
Per completare le seguenti attività, devi disporre delle autorizzazioni IAM resourcemanager.projects.getIamPolicy
e resourcemanager.projects.setIamPolicy
.
Aggiungere un membro a un criterio a livello di progetto
Per un elenco di ruoli associati a Cloud SQL, consulta Ruoli IAM.
Console
- Vai alla pagina IAM e amministrazione nella console Google Cloud.
- Nel menu a discesa del progetto sulla barra superiore, seleziona il progetto in cui vuoi aggiungere un membro.
- Fai clic su Aggiungi. Viene visualizzata la finestra di dialogo Aggiungi membri e ruoli al progetto.
- Nel campo Nuovi membri, specifica il nome dell'entità a cui stai concedendo l'accesso.
- Nel menu a discesa Seleziona un ruolo, assegna il ruolo appropriato al . I ruoli che influiscono sulle risorse Cloud SQL si trovano nei sottomenu Progetto e Cloud SQL.
- Fai clic su Salva.
gcloud
Per aggiungere un criterio IAM a livello di progetto, utilizza
gcloud beta projects add-iam-policy-binding
.
Visualizza il criterio IAM per un progetto
Console
- Vai alla sezione IAM e Amministrazione la console Google Cloud
- Nel menu a discesa del progetto nella barra in alto, seleziona il progetto di cui vuoi visualizzare le norme.
- Esistono due modi per visualizzare le autorizzazioni per il progetto:
- Visualizza per Membri: visualizza la colonna Ruolo associata al singolo utente per vedere i ruoli di ogni membro.
- Visualizza per Ruoli: utilizza il menu a discesa associato ai singoli ruoli per vedere quali membri dispongono del ruolo.
gcloud
Per visualizzare il criterio IAM di un progetto, utilizza
gcloud beta projects get-iam-policy
.
Rimuovere un membro da un criterio a livello di progetto
Console
- Vai alla pagina IAM e amministrazione nella console Google Cloud.
- Nel menu a discesa del progetto nella barra in alto, seleziona il progetto da cui vuoi rimuovere un membro.
- Assicurati di visualizzare le autorizzazioni per Membri e seleziona i membri che vuoi rimuovere.
- Fai clic su Rimuovi.
- Nella finestra in overlay visualizzata, fai clic su Conferma.
gcloud
Per rimuovere un criterio IAM a livello di progetto, utilizza
gcloud beta projects remove-iam-policy-binding
Best practice
L'IAM, come qualsiasi altra impostazione amministrativa, richiede una gestione attiva per essere efficace. Prima di rendere una risorsa accessibile ad altri utenti, assicurati di sapere quali ruoli vuoi che svolgano. Nel tempo, le modifiche alla gestione dei progetti, ai modelli di utilizzo e all'organizzazione la proprietà può richiedere la modifica delle impostazioni IAM su progetti, soprattutto se gestisci Cloud SQL in un'organizzazione di grandi dimensioni o per un ampio gruppo di utenti. Quando valuti e pianifichi le impostazioni di controllo dell'accesso, tieni presenti le seguenti best practice:
Utilizza il principio del privilegio minimo quando concedi l'accesso. Il principio del privilegio minimo è una linea guida di sicurezza per la concessione dell'accesso alle risorse. Quando concedi l'accesso in base al principio del privilegio minimo, fornisci a un utente solo l'accesso di cui ha bisogno per svolgere l'attività assegnata.
Evita di concedere ruoli con autorizzazione
setIamPolicy
a persone che non conosci. La concessione dell'autorizzazionesetIamPolicy
consente a un utente di modificare le autorizzazioni e di assumere il controllo dei dati. Dovresti usare i ruoli consetIamPolicy
solo quando si desidera delegare il controllo amministrativo su di oggetti e bucket.Assicurati di delegare il controllo amministrativo delle tue risorse. Assicurati che le tue risorse possano essere gestite da altri membri del team se una persona con accesso amministrativo lascia il gruppo. Ecco due modi comuni per farlo:
- Assegna il ruolo Amministratore Cloud SQL per il tuo progetto a un gruppo anziché a un privato.
- Assegna il ruolo Amministratore Cloud SQL per il tuo progetto ad almeno due singoli utenti.
Passaggi successivi
- Scopri di più sul controllo dell'accesso