Panoramica di Microsoft Active Directory gestito in Cloud SQL

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Puoi integrare Cloud SQL per SQL Server con Managed Service for Microsoft Active Directory (noto anche come Microsoft Active Directory gestito).

Questa pagina contiene informazioni da esaminare prima di avviare un'integrazione. Dopo aver esaminato le informazioni riportate di seguito, incluse le limitazioni, consulta Utilizzo di Cloud SQL con Microsoft Active Directory gestito.

Vantaggi dell'integrazione con Microsoft Active Directory gestito

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

L'integrazione di Cloud SQL per SQL Server con un dominio AD presenta l'ulteriore vantaggio dell'integrazione di Cloud con i domini AD on-premise.

Prerequisiti per l'integrazione

Puoi eseguire l'integrazione con Microsoft Active Directory gestito, aggiungendo il supporto per Autenticazione Windows a un'istanza. Tuttavia, prima dell'integrazione, devi soddisfare i seguenti requisiti per il progetto Google Cloud:

Creare e configurare un account di servizio

È necessario un account di servizio per prodotto per progetto per ogni progetto che intendi integrare con Microsoft Active Directory gestito. Utilizza gcloud o la console per creare l'account a livello di progetto. All'account di servizio per prodotto e a progetto deve essere concesso il ruolo managedidentities.sqlintegrator nel progetto. Per maggiori informazioni, consulta la pagina gcloud projects set-iam-policy.

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

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

gcloud beta services identity create --service=sqladmin.googleapis.com \
             --project=[PROJECT]

Il comando in questione restituisce il nome di un 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 le autorizzazioni esistenti. Per le autorizzazioni richieste, consulta Autorizzazioni richieste.

Per concedere l'autorizzazione necessaria per l'integrazione, esegui questo comando. Se il tuo Microsoft Active Directory gestito si trova in un progetto diverso, [AD_PROJECT_ID] deve essere quello contenente l'istanza Microsoft Active Directory gestita, mentre [SQL_PROJECT_NUMBER] dell'account di servizio deve essere quello contenente l'istanza 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

Vedi anche gcloud beta services identity create.

Best practice per l'integrazione con Microsoft Active Directory gestito

Quando pianifichi un'integrazione, controlla quanto segue:

La presenza di un'istanza SQL Server e di un'istanza AD gestita nella stessa regione offre la latenza di rete più bassa e le prestazioni ottimali. Pertanto, quando possibile, configura un'istanza SQL Server e un'istanza AD nella stessa regione. Inoltre, indipendentemente dal fatto che siano stati configurati o meno nella stessa area geografica, è possibile impostare una regione principale e una di backup per una maggiore disponibilità.

Topologie per l'integrazione con Microsoft Active Directory gestito

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

  • Aggiungi gruppi o accessi di singoli utenti direttamente in SQL Server
  • Utilizza i gruppi universali quando tutti i gruppi e gli utenti appartengono alla stessa foresta

Se erano supportati gruppi locali del dominio, i singoli account utente e i gruppi globali e universali potrebbero essere aggiunti come figli di un gruppo locale del dominio (che controlla l'accesso a SQL Server). Questo ti permette di aggiungere un gruppo locale del dominio come accesso a SQL Server. In Cloud SQL per SQL Server, puoi abilitare funzionalità simili, come descritto in questa sezione.

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

Se hai più domini, in più foreste e hai più gruppi globali, puoi aggiungere tutti gli account utente individuali e i gruppi globali e universali, direttamente come accessi a SQL Server. Come esempio di Opzione 1, vedi il seguente diagramma:

Topologia AD, opzione 1.

Opzione 2: definisci 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. Successivamente, puoi aggiungere tutti gli account utente individuali e i gruppi globali e universali come elementi secondari di tale gruppo universale e aggiungere il gruppo universale definito come accesso a SQL Server. Come esempio di Opzione 2, vedi il seguente diagramma:

Topologia AD, opzione 2.

Limitazioni e alternative

Durante l'integrazione con Microsoft Active Directory gestito si applicano le seguenti limitazioni:

  • I gruppi locali del dominio non sono supportati, ma puoi aggiungere gruppi globali o accessi di singoli utenti direttamente in SQL Server. In alternativa, puoi utilizzare i gruppi universali quando tutti i gruppi e gli utenti appartengono alla stessa foresta.
  • In generale, ai nuovi utenti creati tramite la console Google Cloud viene assegnato il ruolo CustomerDbRootRole, che ha questo ruolo di database fisso dell'agente SQL Server: SQLAgentUserRole. Tuttavia, agli utenti creati direttamente tramite SQL Server, ad esempio utenti Microsoft Active Directory gestiti, non è possibile concedere questo ruolo o utilizzare SQL Server Agent, perché il database MSDB in cui deve essere concesso il ruolo è protetto.
  • Alcune operazioni limitate possono causare il seguente errore: "Impossibile ottenere informazioni sul gruppo/utente Windows NT". Un esempio di questo tipo di operazione limitata è la creazione di accessi da parte di utenti da domini collegati tramite una relazione di trust. Un altro esempio è la concessione dei privilegi agli utenti da domini collegati attraverso una relazione di trust. In questi casi, spesso riprovare l'operazione è riuscita. Se il nuovo tentativo non va a buon fine, 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 del tuo dominio è ad.mydomain.com, crea gli accessi SQL Server per ad\user anziché per ad.mydomain.com\user.
  • Per accedere alle istanze SQL Server, utilizza sempre i nomi di dominio completi. Ad esempio, puoi utilizzare un nome di dominio completo simile a private.myinstance.us-central1.myproject.cloudsql.mydomain.com. I nomi Netbios non sono supportati né i nomi brevi se i suffissi DNS vengono omessi.
  • Gli accessi di SQL Server basati su utenti e gruppi di Active Directory non possono essere gestiti dalla console Google Cloud.
  • In Cloud SQL, se un'istanza SQL Server è stata creata il 12 marzo 2021 o una data precedente, non può essere integrata con Microsoft Active Directory gestito.
  • L'autenticazione di Windows non funziona con un trust esterno. L'errore potrebbe essere il seguente: "Il nome dell'entità di destinazione non è corretto. Impossibile generare contesto SSPI." Inoltre, per quanto riguarda i consigli di Microsoft, utilizza un trust forestale anziché un trust esterno per l'autenticazione Kerberos.

Non supportato per l'integrazione

Le seguenti funzionalità non sono attualmente supportate durante l'integrazione con Microsoft Active Directory gestito:

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

Passaggi successivi