Criteri dell'organizzazione Cloud SQL

Questa pagina spiega come usare un criterio dell'organizzazione con il progetto Cloud SQL. Per iniziare a creare i criteri dell'organizzazione, consulta Aggiungere criteri dell'organizzazione.

Panoramica

I criteri dell'organizzazione consentono agli amministratori di impostare restrizioni sul modo in cui gli utenti possono configurare le istanze. I criteri dell'organizzazione utilizzano regole, chiamate vincoli, che l'amministratore dell'organizzazione inserisce in un progetto, una cartella o un'organizzazione. I vincoli applicano il criterio in tutte le istanze. Se, ad esempio, provi ad aggiungere un'istanza a un'entità che ha un criterio dell'organizzazione, il vincolo esegue un controllo per verificare che la configurazione dell'istanza rispetti i requisiti del vincolo. Se il controllo non va a buon fine, Cloud SQL non crea l'istanza.

Quando aggiungi progetti a un'organizzazione o a una cartella che utilizza un criterio dell'organizzazione, i progetti ereditano i vincoli di tale criterio.

Per ulteriori informazioni sui criteri dell'organizzazione, vedi Servizio Criteri dell'organizzazione, Vincoli e Valutazione della gerarchia.

Esistono due tipi di criteri dell'organizzazione specifici di Cloud SQL:

Criteri di connessione dell'organizzazione

I criteri dell'organizzazione di connessione offrono un controllo centralizzato delle impostazioni dell'IP pubblico per Cloud SQL, per ridurre la superficie di attacco di sicurezza delle istanze Cloud SQL da internet. Un amministratore dei criteri dell'organizzazione può utilizzare un criterio di connessione per limitare le configurazioni IP pubblici di Cloud SQL a livello di progetto, cartella o organizzazione.

Vincoli dei criteri dell'organizzazione di connessione

Per il criterio dell'organizzazione di connessione, esistono due tipi di vincoli che forzano l'accesso alle istanze Cloud SQL.

Vincolo Descrizione Predefinito
Limita l'accesso IP pubblico nelle istanze Cloud SQL Questo vincolo booleano limita la configurazione dell'IP pubblico nelle istanze Cloud SQL in cui il vincolo è impostato su True. Questo vincolo non è retroattivo. Le istanze Cloud SQL con accesso IP pubblico esistente continuano a funzionare anche dopo l'applicazione di questo vincolo.

Per impostazione predefinita, è consentito l'accesso IP pubblico alle istanze Cloud SQL.

constraints/sql.restrictPublicIp
CONSENTI
Limita reti autorizzate nelle istanze di Cloud SQL Se impostato su True, questo vincolo booleano limita l'aggiunta di reti autorizzate per l'accesso ai database senza proxy alle istanze Cloud SQL. Questo vincolo non è retroattivo. Le istanze Cloud SQL con reti autorizzate esistenti continuano a funzionare anche dopo l'applicazione di questo vincolo.
Per impostazione predefinita, puoi aggiungere reti autorizzate alle istanze Cloud SQL.

constraints/sql.restrictAuthorizedNetworks
CONSENTI

Limitazioni per i criteri dell'organizzazione di connessione

Quando imposti il criterio dell'organizzazione per ogni progetto, devi determinare se una delle seguenti condizioni si applica al tuo progetto:

Conflitti negli indirizzi IP pubblici delle repliche di lettura

Le repliche di lettura di Cloud SQL si connettono all'istanza principale tramite la connessione al database senza proxy. Puoi utilizzare l'impostazione dell'istanza principale Reti autorizzate per configurare in modo esplicito o implicito gli indirizzi IP pubblici della replica di lettura.

Se sia l'istanza principale sia quella di replica si trovano all'interno della stessa regione e abilita l'IP privato, non c'è conflitto con i vincoli dei criteri dell'organizzazione di connessione.

Incompatibilità con l'utilizzo di gcloud sql connect

Il comando gcloud sql connect utilizza un indirizzo IP pubblico per connettersi direttamente alle istanze Cloud SQL. Pertanto, non è compatibile con il vincolo sql.restrictPublicIp. Questo è generalmente un problema per le istanze che utilizzano l'IP privato.

Inoltre, il comando gcloud sql connect non utilizza il proxy, il che lo rende incompatibile con il vincolo sql.restrictAuthorizedNetworks.

Utilizza invece la versione beta del comando:

gcloud beta auth login
gcloud beta sql connect [INSTANCE_ID]

Questa versione utilizza il proxy di autenticazione Cloud SQL. Per informazioni di riferimento, consulta gcloud beta sql connect.

La prima volta che esegui questo comando, ti viene richiesto di installare il componente gcloud Cloud SQL Auth Proxy. Per farlo, devi avere l'autorizzazione di scrittura nella directory di installazione di gcloud SDK sul tuo computer client.

Accesso ai servizi in hosting su Google Cloud

Se l'applicazione richiede l'accesso alle istanze Cloud SQL da altri servizi in hosting su Google Cloud, come App Engine, l'applicazione deve utilizzare indirizzi IP pubblici. Non applicare il vincolo sql.restrictPublicIp al progetto. Tuttavia, puoi applicare sql.restrictAuthorizedNetworks, poiché le connessioni da App Engine passano attraverso la connessione sicura (tramite proxy).

Indirizzi IP privati non RFC 1918

Le connessioni a un'istanza Cloud SQL utilizzando un indirizzo IP privato vengono autorizzate automaticamente per gli intervalli di indirizzi RFC 1918. Questo consente a tutti i client privati di accedere al database senza passare attraverso il proxy. Devi configurare gli intervalli di indirizzi non RFC 1918 come reti autorizzate.

Per utilizzare intervalli di IP privati non RFC 1918 che non sono configurati nelle reti autorizzate, puoi eseguire una o entrambe le seguenti azioni:

  1. Non applicare in modo forzato sql.restrictAuthorizedNetworks. Se le reti autorizzate applicano anche sql.restrictPublicIp, non puoi configurarle nella console. Utilizza invece l'API Cloud SQL o gcloud CLI.
  2. Utilizza connessioni tramite proxy per le istanze IP private.

Criteri dell'organizzazione relativi alle chiavi di crittografia gestite dal cliente (CMEK)

Cloud SQL supporta due vincoli dei criteri dell'organizzazione che aiutano a garantire la protezione CMEK in un'organizzazione: constraints/gcp.restrictNonCmekServices e constraints/gcp.restrictCmekCryptoKeyProjects.

Il vincolo constraints/gcp.restrictNonCmekServices richiede la protezione da CMEK per sqladmin.googleapis.com. Quando aggiungi questo vincolo e aggiungi sqladmin.googleapis.com all'elenco dei servizi dei criteri Deny, Cloud SQL si rifiuta di creare nuove istanze a meno che non siano abilitate con CMEK.

Il vincolo constraints/gcp.restrictCmekCryptoKeyProjects limita le CryptoKey Cloud KMS da utilizzare per la protezione CMEK nelle istanze Cloud SQL per PostgreSQL. Con questo vincolo, quando Cloud SQL crea una nuova istanza con CMEK, la CryptoKey deve provenire da un progetto, una cartella o un'organizzazione consentiti.

Questi vincoli vengono applicati solo alle istanze Cloud SQL per PostgreSQL appena create.

Per maggiori informazioni sulla panoramica, consulta i criteri dell'organizzazione CMEK. Per informazioni sui vincoli dei criteri dell'organizzazione CMEK, vedi Vincoli dei criteri dell'organizzazione.

Regole di applicazione dei criteri dell'organizzazione

Cloud SQL applica il criterio dell'organizzazione durante le seguenti operazioni:

  • Creazione dell'istanza
  • Creazione della replica
  • Riavvio dell'istanza
  • Migrazione delle istanze
  • Clone di istanza

Come tutti i vincoli dei criteri dell'organizzazione, le modifiche ai criteri non si applicano retroattivamente alle istanze esistenti.

  • Un nuovo criterio non ha effetto sulle istanze esistenti.
  • Una configurazione dell'istanza esistente rimane valida, a meno che un utente non modifichi la configurazione dell'istanza da uno stato di conformità a uno di non conformità utilizzando la console, gcloud CLI o RPC.
  • Un aggiornamento di manutenzione pianificato non comporta l'applicazione di un criterio, perché la manutenzione non cambia la configurazione delle istanze.

Passaggi successivi