Questa pagina spiega come utilizzare un criterio dell'organizzazione con il tuo progetto Cloud SQL. Per iniziare a creare criteri dell'organizzazione, vedi Aggiungere i criteri dell'organizzazione.
Panoramica
I criteri dell'organizzazione consentono agli amministratori di impostare limitazioni relative alla modalità di configurazione delle istanze all'interno dell'organizzazione. I criteri dell'organizzazione utilizzano regole, chiamate vincoli, che l'amministratore dell'organizzazione assegna a un progetto, una cartella o un'organizzazione. I vincoli applicano il criterio a tutte le istanze. Se, ad esempio, tenti di aggiungere un'istanza a un'entità con un criterio dell'organizzazione, il vincolo esegue un controllo per garantire 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, consulta Servizio Criteri dell'organizzazione, Vincoli e Valutazione della gerarchia.
Esistono due tipi di criteri dell'organizzazione specifici per Cloud SQL:
- Criteri dell'organizzazione di connessione
- Criteri dell'organizzazione Chiavi di crittografia gestite dal cliente (CMEK)
Criteri di connessione dell'organizzazione
I criteri dell'organizzazione di connessione forniscono il controllo centralizzato delle impostazioni IP pubbliche 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 degli 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 applicano 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 di 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 al 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 i criteri dell'organizzazione per ogni progetto, devi determinare se al progetto è applicabile uno dei seguenti casi:
- Conflitti IP pubblici delle repliche di lettura
- Incompatibilità utilizzando gcloud sql connect
- Accesso ai servizi ospitati su GCP
- Conflitti IP pubblici della replica di failover MySQL
- Indirizzi IP privati non RFC 1918
Conflitti di indirizzi IP pubblici per repliche di lettura
Le repliche di lettura di Cloud SQL si connettono all'istanza principale sulla connessione del database senza proxy. Puoi utilizzare l'impostazione dell'istanza principale Authorized Networks per configurare in modo esplicito o implicito gli indirizzi IP pubblici di replica di lettura.
Se le istanze principale e di replica si trovano nella stessa area geografica e abilitano l'IP privato, non vi è alcun conflitto con i vincoli dei criteri dell'organizzazione di connessione.
Incompatibilità con l'uso 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
. In genere, questo è un problema per le istanze che utilizzano un IP privato.
Inoltre, il comando gcloud sql connect
non utilizza il proxy e non è quindi compatibile 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 chiesto di installare il componente proxy di autenticazione Cloud SQL gcloud. Per questo motivo, devi disporre dell'autorizzazione di scrittura per la directory di installazione dell'SDK gcloud sulla tua macchina client.
Accesso ai servizi ospitati su GCP
Se la tua applicazione richiede l'accesso alle istanze Cloud SQL da altri servizi ospitati da GCP, come App Engine, 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 (con proxy).
Conflitti IP pubblici della replica di failover MySQL
Una replica di failover MySQL agisce come una replica di lettura per i criteri dell'organizzazione di connessione. Se le istanze principale e di replica si trovano nella stessa area geografica e abilitano l'IP privato, non vi è alcun conflitto con i vincoli dei criteri dell'organizzazione di connessione.
Indirizzi IP privati non RFC 1918
Le connessioni a un'istanza Cloud SQL utilizzando un indirizzo IP privato sono autorizzate automaticamente per gli intervalli di indirizzi RFC 1918. Ciò consente a tutti i client privati di accedere al database senza dover passare attraverso il proxy. Devi configurare intervalli di indirizzi non RFC 1918 come reti autorizzate.
Per utilizzare intervalli IP privati non RFC 1918 non configurati nelle reti autorizzate, puoi eseguire una o entrambe le seguenti azioni:
- Non imporre
sql.restrictAuthorizedNetworks
. Se anche le reti autorizzate applicanosql.restrictPublicIp
, non puoi configurarle nella console. Utilizza invece l'API Cloud SQL o gcloud CLI. - Utilizza connessioni con proxy per le istanze IP private.
Problemi noti relativi ai criteri dell'organizzazione di connessione
Limita il vincolo Reti autorizzate
Per le istanze Cloud SQL che hanno una voce reti autorizzate preesistenti, sono consentite voci di reti autorizzate aggiuntive, anche quando si utilizza il vincolo Limita le reti autorizzate (sql.restrictAuthorizedNetworks). Questa operazione influisce anche sulle istanze che hanno abilitato le repliche di sola lettura o di failover, in quanto dispongono di una voce Reti autorizzate per la replica non visibile all'utente.
Questo problema noto verrà rimosso quando il vincolo consentirà solo la rimozione delle voci di reti autorizzate, non la loro aggiunta.
Criteri dell'organizzazione relativi alle chiavi di crittografia gestite dal cliente (CMEK)
Cloud SQL supporta due vincoli dei criteri dell'organizzazione che contribuiscono a garantire la protezione CMEK in un'organizzazione: constraints/gcp.restrictNonCmekServices
e constraints/gcp.restrictCmekCryptoKeyProjects
.
Il vincolo constraints/gcp.restrictNonCmekServices
richiede la protezione CMEK per sqladmin.googleapis.com
. Quando aggiungi questo vincolo e aggiungi sqladmin.googleapis.com
all'elenco di servizi Deny
dei criteri, Cloud SQL 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 MySQL. 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 MySQL appena create.
Per maggiori informazioni di panoramica, consulta i criteri dell'organizzazione CMEK. Per informazioni sui vincoli dei criteri dell'organizzazione CMEK, consulta 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 replica
- Riavvio dell'istanza
- Migrazione delle istanze
- Clone di istanze
Come tutti i vincoli dei criteri dell'organizzazione, le modifiche ai criteri non si applicano in modo retroattivo alle istanze esistenti.
- Un nuovo criterio non ha effetto sulle istanze esistenti.
- La configurazione di un'istanza esistente rimane valida, a meno che un utente non modifichi la configurazione dell'istanza da una conformità a uno stato di non conformità utilizzando la console, gcloud CLI o RPC.
- Un aggiornamento pianificato della manutenzione non comporta un'applicazione dei criteri, perché la manutenzione non modifica la configurazione delle istanze.
Passaggi successivi
- Configurazione dei criteri dell'organizzazione.
- Scopri come funziona l'IP privato con Cloud SQL.
- Scopri come configurare l'IP privato per Cloud SQL.
- Scopri di più sul servizio dei criteri dell'organizzazione.
- Scopri di più sui vincoli dei criteri dell'organizzazione.