Panoramica di Microsoft Active Directory gestito in Cloud SQL

Puoi integrare Cloud SQL per SQL Server con Managed Service for Microsoft Active Directory (chiamato anche Managed Microsoft AD).

Questa pagina contiene informazioni da esaminare prima di iniziare un'integrazione. Dopo aver esaminato le seguenti informazioni, incluse le limitazioni, consulta Utilizzare Cloud SQL con Managed Microsoft AD.

Vantaggi dell'integrazione con Managed Microsoft AD

L'autenticazione, l'autorizzazione e altro ancora sono disponibili tramite Managed Microsoft AD. Ad esempio, l'aggiunta di un'istanza a un dominio Managed Microsoft AD ti consente di accedere utilizzando l'autenticazione di Windows con un'identità basata su Active Directory.

L'integrazione di Cloud SQL per SQL Server con un dominio Active Directory offre l'ulteriore vantaggio dell'integrazione cloud con i domini Active Directory on-premise.

Prerequisiti per l'integrazione

Puoi eseguire l'integrazione con Managed Microsoft AD, aggiungendo il supporto per l'autenticazione di Windows a un'istanza. Tuttavia, prima dell'integrazione, il progetto deve soddisfare i seguenti requisiti: Google Cloud

Creare e configurare un account di servizio

Hai bisogno di un account di servizio per prodotto e per progetto per ogni progetto che prevedi di integrare con Managed Microsoft AD. Utilizza gcloud o la console per creare l'account a livello di progetto. All'account di servizio per prodotto e per progetto deve essere concesso il ruolo managedidentities.sqlintegrator nel progetto. Per ulteriori informazioni, consulta gcloud projects set-iam-policy.

Se utilizzi la Google Cloud console, Cloud SQL crea automaticamente un account di servizio e ti chiede di concedere ilmanagedidentities.sqlintegrator ruolo.

Per creare un account di servizio con gcloud, esegui il seguente comando:

gcloud beta services identity create --service=sqladmin.googleapis.com \
    --project=PROJECT_NUMBER

Questo comando restituisce un nome di account di servizio nel seguente formato:

    service-PROJECT_NUMBER@gcp-sa-cloud-sql.iam.gserviceaccount.com

Ecco un esempio di nome di account di servizio:

    service-333445@gcp-sa-cloud-sql.iam.gserviceaccount.com

La concessione dell'autorizzazione necessaria per l'integrazione richiede autorizzazioni esistenti. Per le autorizzazioni richieste, consulta Autorizzazioni richieste.

Per concedere l'autorizzazione necessaria per l'integrazione, esegui il seguente comando. Se Managed Microsoft AD si trova in un progetto diverso, AD_PROJECT_ID deve essere quello contenente l'istanza di Managed Service for Microsoft Active Directory, mentre SQL_PROJECT_NUMBER dell'account di servizio deve essere quello contenente l'istanza di SQL Server:

gcloud projects add-iam-policy-binding AD_PROJECT_ID \
--member=serviceAccount:service-SQL_PROJECT_NUMBER@gcp-sa-cloud-sql.iam.gserviceaccount.com \
--role=roles/managedidentities.sqlintegrator

Consulta anche gcloud beta services identity create.

Best practice per l'integrazione con Managed Microsoft AD

Quando pianifichi un'integrazione, esamina quanto segue:

Se un'istanza di SQL Server e un'istanza di Active Directory gestito si trovano nella stessa regione, la latenza di rete è minima e le prestazioni sono ottimali. Pertanto, quando possibile, configura un'istanza di SQL Server e un'istanza di Active Directory nella stessa regione. Inoltre, indipendentemente dal fatto che le configuri o meno nella stessa regione, configura una regione primaria e una di backup per una maggiore disponibilità.

Topologie per l'integrazione con Managed Microsoft AD

Cloud SQL per SQL Server non supporta i gruppi locali di dominio. Tuttavia puoi:

  • Aggiungere gruppi globali o accessi utente individuali direttamente in SQL Server
  • Utilizzare i gruppi universali quando tutti i gruppi e gli utenti appartengono alla stessa foresta

Se i gruppi locali di dominio fossero supportati, gli account utente individuali e i gruppi globali e universali potrebbero essere aggiunti come figli di un gruppo locale di dominio (che protegge l'accesso a SQL Server). In questo modo potresti aggiungere un gruppo locale di dominio come accesso a SQL Server. In Cloud SQL per SQL Server, puoi abilitare funzionalità simili, come descritto in questa sezione.

Opzione 1: aggiungere account utente e gruppi come accessi a SQL Server

Se hai più domini, in più foreste e più gruppi globali, puoi aggiungere tutti gli account utente individuali e i gruppi globali e universali direttamente come accessi a SQL Server. Per un esempio dell'opzione 1, consulta il seguente diagramma:

Topologia di AD, opzione 1.

Opzione 2: definire un gruppo universale in uno dei tuoi domini

Se i tuoi domini si trovano nella stessa foresta, puoi definire un gruppo universale in uno dei tuoi domini. Poi puoi aggiungere tutti gli account utente individuali e i gruppi globali e universali come figli del gruppo universale definito e aggiungere il gruppo universale definito come accesso a SQL Server. Per un esempio dell'opzione 2, consulta il seguente diagramma:

Topologia AD, opzione 2.

Limitazioni e alternative

Quando esegui l'integrazione con Managed Microsoft AD, si applicano le seguenti limitazioni:

  • I gruppi locali di dominio non sono supportati, ma puoi aggiungere gruppi globali o accessi utente individuali direttamente in SQL Server. In alternativa, puoi utilizzare i gruppi universali quando tutti i gruppi e gli utenti appartengono alla stessa foresta.
  • In generale, agli utenti creati tramite la Google Cloud console viene assegnato il CustomerDbRootRole ruolo, che ha il seguente ruolo di database fisso di SQL Server Agent: SQLAgentUserRole. Tuttavia, agli utenti creati direttamente tramite SQL Server, come gli utenti di Managed Microsoft AD, non è possibile concedere questo ruolo o utilizzare SQL Server Agent, perché il database MSDB in cui deve essere concesso questo ruolo è protetto.
  • Alcune operazioni con limitazioni potrebbero generare il seguente errore: "Could not obtain information about Windows NT group/user". Un esempio di questo tipo di operazione con limitazioni è la creazione di accessi da parte di utenti di domini connessi tramite una relazione di trust. Un altro esempio è la concessione di privilegi agli utenti di domini connessi tramite una relazione di trust. In questi casi, spesso il nuovo tentativo dell'operazione ha esito positivo. Se il nuovo tentativo non riesce, chiudi la connessione e aprine una nuova.
  • I nomi di dominio completi (FQDN) non sono supportati da SQL Server su Windows. Pertanto, quando crei gli accessi a SQL Server, utilizza i nomi di dominio (nomi brevi) anziché i nomi di dominio completi. Ad esempio, se il nome di dominio è ad.mydomain.com, crea gli accessi a SQL Server per ad\user, anziché per ad.mydomain.com\user.
  • Per accedere alle istanze di SQL Server, utilizza sempre i nomi di dominio completi. Ad esempio, potresti utilizzare un nome di dominio completo simile a private.myinstance.us-central1.myproject.cloudsql.mydomain.com. I nomi NetBIOS non sono supportati, così come i nomi brevi se i suffissi DNS vengono omessi.
  • Gli accessi a SQL Server basati su utenti e gruppi di Active Directory non possono essere gestiti dalla Google Cloud console.
  • In Cloud SQL, se un'istanza di SQL Server è stata creata entro il 12 marzo 2021 o prima, non può essere integrata con Managed Microsoft AD.
  • L'autenticazione di Windows non funziona con un trust esterno. L'errore potrebbe essere il seguente: "The target principal name is incorrect. Cannot generate SSPI context." Inoltre, in base alle raccomandazioni di Microsoft, utilizza un trust di foresta anziché un trust esterno per l'autenticazione Kerberos.

Endpoint di Active Directory e connessioni TLS

Se utilizzi l'autenticazione di Windows e vuoi stabilire una connessione TLS senza considerare attendibile il certificato del server, devi ruotare i certificati dopo aver abilitato l'autenticazione di Windows sull'istanza.

Se la connessione non riesce e uno dei certificati è stato creato prima del 15 marzo, 2025, devi ruotare di nuovo il certificato del server e riprovare a stabilire la connessione.

Non supportato per l'integrazione

Le seguenti funzionalità non sono supportate quando esegui l'integrazione con Managed Microsoft AD:

  • Gruppi locali di dominio.
  • Eliminazione degli accessi a SQL Server da parte di utenti di domini connessi tramite una relazione di trust. Puoi eseguire questa operazione con un utente del tuo dominio gestito o tramite l'accesso sqlserver.
  • Autenticazione NTLM.
  • Accesso con un indirizzo IP da domini connessi tramite una relazione di trust.
  • Istanze con nomi lunghi (più di 63 caratteri).

Passaggi successivi