Nesta página, explicamos como usar uma política da organização com seu projeto do Cloud SQL. Para começar a criar políticas da organização, consulte Adicionar políticas da organização.
Visão geral
As políticas da organização permitem que os administradores definam restrições sobre como os usuários podem configurar instâncias. As políticas da organização usam regras, chamadas de restrições, que o administrador coloca em um projeto, uma pasta ou uma organização. As restrições aplicam a política em todas as instâncias. Se, por exemplo, você tentar adicionar uma instância a uma entidade que tenha uma política da organização, a restrição executará uma verificação para garantir que a configuração da instância siga os requisitos da restrição. Se a verificação falhar, o Cloud SQL não criará a instância.
À medida que você adiciona projetos a uma organização ou pasta que usa uma política da organização, os projetos herdam as restrições dessa política.
Para mais informações sobre políticas da organização, consulte Serviço de política da organização, Restrições e Avaliação de hierarquia.
Há dois tipos de políticas da organização específicas para o Cloud SQL:
- Políticas de conexão da organização
- Políticas da organização para chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês)
Políticas de conexão da organização
As políticas de conexão da organização fornecem controle centralizado das configurações de IP público do Cloud SQL para reduzir a superfície de ataque à segurança das instâncias do Cloud SQL proveniente da Internet. O administrador de políticas da organização pode usar uma política de conexão para restringir configurações de IP público do Cloud SQL no nível do projeto, da pasta ou da organização.
Restrições da política de conexão da organização
Na política de conexão da organização, há dois tipos de restrições que limitam o acesso às instâncias do Cloud SQL.
Restrição | Descrição | Padrão |
---|---|---|
Restringir o acesso de IP público nas instâncias do Cloud SQL | Essa limitação booleana restringe a configuração do IP público em instâncias do Cloud SQL. Para isso, a limitação precisa estar definida como True . Essa restrição não é retroativa. As instâncias do Cloud SQL com acesso atual de IP público ainda funcionam mesmo após a aplicação dessa restrição.
Por padrão, o acesso de IP público a instâncias do Cloud SQL é permitido. constraints/sql.restrictPublicIp
|
PERMITIR |
Restringir redes autorizadas em instâncias do Cloud SQL | Quando definida como True , essa restrição booleana
restringe a adição de redes autorizadas para que o banco de dados não tenha acesso a
instâncias do Cloud SQL. Essa restrição não é retroativa.
As instâncias do Cloud SQL com redes autorizadas ainda funcionarão
mesmo após a aplicação dessa restrição. Por padrão, é possível adicionar redes autorizadas a instâncias do Cloud SQL. constraints/sql.restrictAuthorizedNetworks |
PERMITIR |
Restrições para políticas de conexão da organização
Ao definir a política da organização de cada projeto, é necessário determinar se alguma das seguintes situações se aplica ao projeto:
- conflitos de IP público de réplicas de leitura;
- incompatibilidade usando gcloud sql connect ;
- Acesso a serviços hospedados no GCP
- Endereços IP privados não RFC 1918
Conflitos de endereços IP públicos de réplicas de leitura
As réplicas de leitura do Cloud SQL se conectam à instância primária por meio da conexão do banco de dados sem proxy. Use a configuração Redes autorizadas da instância primária para definir explicita ou implicitamente os endereços IP públicos da réplica de leitura.
Se as instâncias principal e réplica estiverem dentro da mesma região e ativarem o IP privado, não haverá conflito com as restrições da política de conexão da organização.
Incompatibilidade usando gcloud sql connect
O comando gcloud sql connect
usa um endereço IP público para se conectar diretamente
às instâncias do Cloud SQL. Portanto, ele é
incompatível com a restrição sql.restrictPublicIp
. Geralmente,
isso é um problema para instâncias que usam IP privado.
Além disso, o comando gcloud sql connect
não usa o proxy, o que o torna
incompatível com a restrição sql.restrictAuthorizedNetworks
.
Em vez disso, use a versão Beta do comando:
gcloud beta auth login
gcloud beta sql connect [INSTANCE_ID]
Esta versão usa o proxy do Cloud SQL Auth. Para mais informações de referência,
consulte gcloud beta sql connect
.
Ao executar o comando pela primeira vez, será solicitada a instalação do componente do proxy do Cloud SQL Auth do gcloud. Para isso, é necessário ter permissão de gravação no diretório de instalação do SDK da gcloud na máquina cliente.
Acesso a serviços hospedados no GCP
Se o aplicativo exigir acesso a instâncias do Cloud SQL de outros
serviços hospedados no GCP, como o App Engine, o aplicativo precisará usar endereços IP
públicos. Não aplique a restrição sql.restrictPublicIp
no projeto. No entanto, é possível aplicar
sql.restrictAuthorizedNetworks
porque as conexões do Google App Engine passam pela conexão segura (com proxy).
Endereços IP privados não RFC 1918
As conexões com uma instância do Cloud SQL usando um endereço IP privado são autorizadas automaticamente para intervalos de endereços RFC 1918. Isso permite que todos os clientes particulares acessem o banco de dados sem passar pelo proxy. É necessário configurar intervalos de endereços não RFC 1918 como redes autorizadas.
Para usar intervalos de IP particulares não RFC 1918 que não estejam configurados nas redes autorizadas, execute uma ou ambas as ações a seguir:
- Não aplique
sql.restrictAuthorizedNetworks
. Se as redes autorizadas também aplicaremsql.restrictPublicIp
, não será possível configurá-las no console. Em vez disso, use a API Cloud SQL ou a CLI gcloud. - Use conexões com proxy para instâncias de IP particulares.
Políticas da organização para chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês)
O Cloud SQL é compatível com duas restrições de política da organização que ajudam a garantir
a proteção CMEK em uma organização: constraints/gcp.restrictNonCmekServices
e constraints/gcp.restrictCmekCryptoKeyProjects
.
A restrição constraints/gcp.restrictNonCmekServices
requer proteção com CMEK para o sqladmin.googleapis.com
. Quando você adiciona essa restrição e
adiciona sqladmin.googleapis.com
à lista de serviços da política Deny
,
o Cloud SQL se recusa a criar novas instâncias, a menos que elas estejam ativadas com
CMEK.
A restrição constraints/gcp.restrictCmekCryptoKeyProjects
limita as CryptoKeys do Cloud KMS a serem usadas na proteção CMEK nas
instâncias do Cloud SQL para PostgreSQL. Com essa restrição, quando o Cloud SQL cria uma nova instância com CMEK, a CryptoKey precisa vir de um projeto, uma pasta ou uma organização permitida.
Essas restrições são aplicadas apenas em instâncias recém-criadas do Cloud SQL para PostgreSQL.
Para mais informações sobre a visão geral, consulte Políticas da organização CMEK. Para informações sobre restrições da política da organização CMEK, consulte Restrições da política da organização.
Regras de aplicação da política da organização
O Cloud SQL aplica a política da organização durante as seguintes operações:
- criação de instância
- criação de réplicas;
- Reinicialização da instância
- Migração da instância
- clonagem de instância;
Como todas as restrições de política da organização, as alterações na política não se aplicam retroativamente às instâncias atuais.
- Uma nova política não afeta as instâncias atuais.
- Uma configuração de instância atual permanece válida, a menos que um usuário altere a configuração da instância de um estado de conformidade para não conformidade usando o console, a CLI gcloud ou RPC.
- Uma atualização de manutenção programada não faz com que uma política seja aplicada porque a manutenção não altera a configuração das instâncias.
A seguir
- Como configurar as políticas da organização.
- Saiba como o IP privado funciona com o Cloud SQL.
- Saiba como configurar o IP privado para o Cloud SQL.
- Saiba mais sobre o serviço de política da organização.
- Saiba mais sobre restrições da política da organização.