Questa pagina descrive i modi in cui utilizzare Cloud SQL per:
- Esegui l'integrazione con Managed Service for Microsoft Active Directory (chiamato anche Managed Microsoft AD).
- Connettiti a un'istanza con un utente AD.
Un'istanza Cloud SQL integrata con Microsoft Active Directory gestito supporta l'autenticazione Windows oltre all'autenticazione SQL.
Prima di iniziare
- Nella console Google Cloud, seleziona il nome del progetto.
- Verifica che la fatturazione sia attivata per il tuo progetto Google Cloud. Scopri come verificare che la fatturazione sia attivata per il tuo progetto.
- Installa e inizializza gcloud CLI.
- Assicurati di disporre del ruolo
Cloud SQL Admin
nel tuo account utente. Vai alla pagina IAM. - Esamina i prerequisiti per l'integrazione.
Crea un'istanza con autenticazione Windows
Puoi eseguire l'integrazione con Microsoft AD gestito durante la creazione dell'istanza, attivando l'autenticazione Windows per l'istanza. Per l'integrazione, scegli un dominio a cui l'istanza deve partecipare. Se l'unione a un dominio non riesce, la creazione dell'istanza non riesce.
In preparazione alla creazione di un'istanza con l'autenticazione Windows, consulta i suggerimenti e le limitazioni e le alternative.
È supportata un'istanza con IP pubblico, a condizione che abbia anche un IP privato. L'IP privato deve essere abilitato per l'istanza. Poi puoi scegliere di utilizzare un IP pubblico o privato per connetterti all'istanza, a condizione che entrambi siano disponibili.
Di seguito sono riportate le opzioni per creare un'istanza integrata con Microsoft Active Directory gestito.
Console
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Fai clic su Crea istanza.
- Fai clic su Scegli SQL Server.
- Inserisci un nome per l'istanza. Non includere informazioni sensibili o che consentono l'identificazione personale nel nome dell'istanza, poiché è visibile all'esterno. Non è necessario includere l'ID progetto nel nome dell'istanza. Viene creato automaticamente ove opportuno (ad esempio nei file di log).
- Inserisci la password per l'utente
'sqlserver'
. - Imposta la regione per l'istanza. Consulta Best practice per l'integrazione con Microsoft AD gestito.
- Nella sezione Opzioni di configurazione, imposta le opzioni che preferisci, ma attendi il passaggio successivo per le opzioni di autenticazione.
- Fai clic su Authentication (Autenticazione). Il menu a discesa per l'unione a un dominio Active Directory gestito elenca tutti i domini Microsoft AD gestiti aggiunti in precedenza nel progetto.
- Dal menu a discesa per l'unione a un dominio Active Directory gestito, seleziona un dominio.
- Al termine della selezione delle opzioni di configurazione, fai clic su Crea. Cloud SQL crea automaticamente un account di servizio per prodotto e progetto. Se l'account
non dispone del ruolo appropriato, ti viene chiesto di concedere il ruolo
managedidentities.sqlintegrator
.
gcloud
Il seguente comando crea un'istanza integrata con Microsoft AD gestito e quindi abilitata per l'autenticazione Windows. Per informazioni sul comando di base per la creazione di un'istanza, consulta Creare istanze.
Specifica un parametro di --active-directory-domain=DOMAIN
nel comando gcloud
. Ad esempio, specifica quanto segue:
--active-directory-domain=ad.mydomain.com
Ecco un prototipo del comando gcloud
:
gcloud beta sql instances create INSTANCE_NAME \ --database-version=EDITION \ --root-password=PASSWORD \ --active-directory-domain=DOMAIN\ --cpu=CPU \ --memory=MEMORY \ --network=NETWORK
Terraform
Per creare un'istanza integrata con Managed Microsoft AD, utilizza una risorsa Terraform.
REST
Con l'API REST, puoi creare un'istanza integrata con
Microsoft Active Directory gestito. Specifica un dominio, ad esempio
subdomain.mydomain.com
, per il campo domain
, come mostrato in questo prototipo di richiesta:
{ "databaseVersion":"database-version", "name":"instance-id", "region":"region", "rootPassword":"password", "settings":{ "tier":"machine-type", "ipConfiguration":{ "privateNetwork":"network" }, "activeDirectoryConfig":{ "domain":"domain" } } }
Aggiornare un'istanza con l'autenticazione Windows
Puoi aggiornare il dominio di un'istanza esistente modificando o aggiungendo un dominio.
Per informazioni generali sull'aggiornamento di un'istanza, consulta Modificare le istanze.
Se un'istanza è attualmente unita a un dominio AD gestito, inizialmente viene scollegata da quel dominio prima di essere unita al nuovo dominio. Se l'aggiornamento non va a buon fine, l'istanza potrebbe non essere più unita a nessun dominio.
Console
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
- Fai clic su Modifica.
- Fai clic su Authentication (Autenticazione). Il menu a discesa Unisciti a un dominio Active Directory elenca i domini Microsoft AD gestiti aggiunti in precedenza al progetto.
- Dal menu a discesa per l'unione a un dominio Active Directory gestito, seleziona un nuovo dominio (di sostituzione) per l'istanza.
- Fai clic su Salva per applicare le modifiche.
gcloud
Di seguito è riportato un prototipo di un comando per aggiornare un'istanza esistente.
Il comando aggiunge o
sostituisce un dominio. Passa --active-directory-domain=DOMAIN
al
comando, come segue:
gcloud beta sql instances patch INSTANCE_NAME \ --active-directory-domain=DOMAIN
REST
Con l'API REST puoi aggiornare un'istanza esistente. Specifica un dominio, come subdomain.mydomain.com
, nel campo domain
.
Di seguito è riportato un prototipo di richiesta:
{ "settings":{ "activeDirectoryConfig":{ "domain":"domain" } } }
Eseguire l'integrazione con un dominio AD gestito in un altro progetto
Puoi integrare l'istanza con un dominio Microsoft AD gestito che si trova in un progetto diverso.
Durante la pianificazione dell'integrazione, esamina i vincoli.
Attiva il peering di dominio
Prima di procedere con i passaggi descritti nelle sezioni seguenti, abilita il peering di dominio in modo che il tuo dominio sia disponibile per tutti i progetti necessari con le istanze Cloud SQL per SQL Server.
Per un elenco dei domini di altri progetti già disponibili, puoi specificare quanto segue:
`gcloud active-directory peerings list`
Per ulteriori informazioni, consulta Elenco dei peering di dominio.
Il comando gcloud active-directory peerings list
richiede l'autorizzazione managedidentities.peerings.list
. I seguenti ruoli dispongono di questa
autorizzazione:
roles/managedidentities.peeringViewer
roles/managedidentities.viewer
Per ulteriori informazioni, consulta Controllo dell'accesso con IAM.
Crea un account di servizio
Ripeti questi passaggi per ogni progetto che contiene un'istanza Cloud SQL per SQL Server che intendi integrare.
- Esamina le informazioni di base per la creazione di account di servizio.
Utilizza un comando simile al seguente per creare un account di servizio. Specifica l'ID del progetto contenente le istanze Cloud SQL per SQL Server:
gcloud beta services identity create --service=sqladmin.googleapis.com \ --project=[PROJECT_ID]
Concedi il ruolo
managedidentities.sqlintegrator
nel progetto con l'istanza Microsoft AD gestita. Specifica l'ID del progetto contenente l'istanza Managed Microsoft AD:gcloud projects add-iam-policy-binding [PROJECT_ID] \ --member=serviceAccount:SERVICE_ACCOUNT --role=roles/managedidentities.sqlintegrator
Attivare l'autenticazione Windows tra progetti
Puoi eseguire l'integrazione con un dominio AD in un altro progetto utilizzando i comandi gcloud
o l'API REST di Cloud SQL. In entrambi i casi, devi specificare il nome completo della risorsa del dominio.
Specifica il nome completo della risorsa di dominio quando viene creata o aggiornata un'istanza Cloud SQL per SQL Server. Sono supportati due formati:
projects/PROJECT_ID/locations/global/domains/DOMAIN_NAME
projects/PROJECT_NUMBER/locations/global/domains/DOMAIN_NAME
Ecco un esempio con l'utilizzo di gcloud
:
gcloud beta sql instances patch INSTANCE_NAME \ --active-directory-domain=projects/PROJECT_ID/locations/global/domains/DOMAIN_NAME
Se utilizzi un nome di risorsa del dominio breve (ad esempio DOMAIN_NAME
), il sistema presume che il dominio Microsoft AD gestito si trovi nello stesso progetto delle istanze Cloud SQL per SQL Server.
Vincoli per l'integrazione con progetti diversi
Se esegui l'integrazione con un dominio AD gestito in un progetto diverso, si applicano i seguenti vincoli:
- Fino a 10 reti con istanze Cloud SQL per SQL Server possono condividere un'istanza di Microsoft Active Directory gestita in un progetto diverso.
- La console Google Cloud supporta solo le istanze Microsoft AD gestite nello stesso progetto. Anziché utilizzare la console Google Cloud, puoi eseguire l'integrazione utilizzando i comandi
gcloud
o l'API REST Cloud SQL. - Se vengono utilizzati i Controlli di servizio VPC, le istanze Cloud SQL per SQL Server e un'istanza di Microsoft AD gestita devono trovarsi nello stesso perimetro.
Inoltre, se un'istanza è integrata con un dominio AD gestito in un progetto diverso, il nome di dominio completo (FQDN) visualizzato nella console Google Cloud potrebbe non essere preciso per quell'istanza. Nello specifico, nella pagina Panoramica dell'istanza, in Connetti a questa istanza, i FQDN potrebbero contenere stringhe separate da barre, che puoi ignorare. Ad esempio, un FQDN impreciso potrebbe essere visualizzato come:
private.myinstance.myregion.myproject.projects/mydirectory/locations/global/domains/mydomain.com
In questo caso, il FQDN corretto è:
private.myinstance.myregion.myproject.cloudsql.mydomain.com
Rimuovere l'autenticazione Windows da un'istanza
Puoi rimuovere l'autenticazione Windows e quindi un'integrazione di AD Microsoft gestito da un'istanza esistente.
Console
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
- Fai clic su Modifica.
- Fai clic su Authentication (Autenticazione). Il menu a discesa per l'unione a un dominio Active Directory gestito elenca i domini Microsoft AD gestiti aggiunti in precedenza al progetto.
- Dal menu a discesa, seleziona Nessun dominio/Unisciti in seguito per l'istanza.
- Leggi il messaggio relativo al riavvio dell'istanza e fai clic su Chiudi.
- Fai clic su Salva per applicare le modifiche.
gcloud
Per rimuovere un'istanza da un dominio, rimuovendo così l'autenticazione Windows,
utilizza un valore vuoto per il dominio. In altre parole, nel comando utilizza un valore vuoto per il parametro--active-directory-domain
, come segue:
gcloud beta sql instances patch INSTANCE_NAME \ --active-directory-domain=
REST
Con l'API REST puoi rimuovere un'istanza da un dominio. Specifica un valore vuoto nel campo domain
, come segue:
{ "settings":{ "activeDirectoryConfig":{ "domain":"" } } }
Connettersi a un'istanza con un utente
Per Cloud SQL per SQL Server, l'utente predefinito è sqlserver
.
Dopo aver integrato un'istanza con AD Microsoft gestito, puoi connetterti all'istanza con l'utente sqlserver
come segue:
Crea un accesso SQL Server basato su un utente o un gruppo Windows, come segue:
CREATE LOGIN [domain\user_or_group] FROM WINDOWS
Accedi all'istanza utilizzando l'autenticazione Windows con il nome DNS dell'istanza. Di seguito sono riportati alcuni esempi di nomi DNS delle istanze da specificare:
Per connetterti tramite IP privato:
private.myinstance.us-central1.myproject.cloudsql.mydomain.com
Per connetterti tramite IP pubblico:
public.myinstance.us-central1.myproject.cloudsql.mydomain.com
Per connetterti tramite il proxy di autenticazione Cloud SQL (vedi anche di seguito):
proxy.myinstance.us-central1.myproject.cloudsql.mydomain.com
Se utilizzi l'indirizzo IP dell'istanza, devi configurare i client Kerberos. per supportare i nomi host IP. Cloud SQL non supporta gli accessi da domini collegati tramite un rapporto di attendibilità.
Utilizzare il proxy di autenticazione Cloud SQL con l'autenticazione Windows
Puoi utilizzare il proxy di autenticazione Cloud SQL con l'integrazione di Microsoft Active Directory gestito.
Prima di iniziare, controlla quanto segue:
Passaggi per l'autenticazione di Windows
Per informazioni sullo sfondo per l'avvio del proxy di autenticazione Cloud SQL, consulta Avvia il proxy di autenticazione Cloud SQL.
Per l'autenticazione Windows, devi eseguire il proxy di autenticazione Cloud SQL sulla porta 1433. Per mappare una voce SPN (Service Principal Name) predefinita a un indirizzo del proxy di autenticazione Cloud SQL, utilizza:
proxy.[instance].[location].[project].cloudsql.[domain]
Esegui il proxy di autenticazione Cloud SQL localmente
Se esegui il proxy di autenticazione Cloud SQL localmente, utilizza il file hosts per mappare quanto segue a
127.0.0.1
:
proxy.[instance].[location].[project].cloudsql.[domain]
Ad esempio, puoi aggiungere quanto segue al file hosts
(ad esempio a c:\windows\system32\drivers\etc\hosts
):
127.0.0.1 proxy.[instance].[location].[project].cloudsql.[domain]
In questo esempio, puoi eseguire il proxy di autenticazione Cloud SQL utilizzando questo comando e renderlo disponibile su 127.0.0.1:1433
:
cloud-sql-proxy.exe --credentials-file credential.json project:name
Esegui il proxy di autenticazione Cloud SQL non localmente
Per eseguire il proxy di autenticazione Cloud SQL non localmente, segui le istruzioni riportate in Eseguire il proxy di autenticazione Cloud SQL localmente, ma utilizza una voce diversa nel file hosts.
Nello specifico, se un host non locale è, ad esempio, MyOtherHost
,
puoi aggiungere quanto segue al file hosts:
127.0.0.1 MyOtherHost proxy.[instance].[location].[project].cloudsql.[domain]
Risolvere i problemi relativi al fallback NTLM nei client
Se utilizzi l'autenticazione Windows e un indirizzo IP dell'istanza per accedere a un'istanza, devi configurare un client Kerberos per supportare i nomi host IP.
Cloud SQL non supporta l'autenticazione NTLM, ma alcuni client Kerberos potrebbero provare a ricorrere a questo metodo. Come discusso in questa sezione, se provi a connetterti a SQL Server Management Studio (SSMS) e viene visualizzato il seguente messaggio di errore, una probabile causa è il fallback NTLM:
Login failed. The login is from an untrusted domain and cannot be used with Integrated authentication. (Microsoft SQL Server, Error: 18452)
NTLM è un insieme di protocolli di sicurezza Microsoft per l'autenticazione. Consulta anche Motivi del fallback a NTLM.
Verifica di un fallback NTLM per un client Windows
Da Windows, per verificare che un fallback NTLM abbia causato un errore:
- Accedi con le credenziali on-premise desiderate (non utilizzare "Esegui come…").
- Apri un prompt dei comandi.
- Esegui
klist purge
. - Da SSMS, prova a connetterti a SQL Server con l'autenticazione Windows.
- Esegui
klist
e controlla se è stato emesso un ticket per"MSSQLSvc/<address>:1433 @ domain"
. - Se non esiste un ticket di questo tipo, è probabile che la causa dell'errore sia il fallback NTLM.
- Se esiste un ticket di questo tipo, verifica che il driver SQL Server non imponga l'autenticazione NTLM. Controlla anche se l'autenticazione NTLM è impostata tramite Group Policy.
Verifica di un fallback NTLM per un client Linux
Da Ubuntu 16.04, per verificare che un fallback NTLM abbia causato un errore, segui i passaggi descritti in questa sezione. I passaggi sono simili a quelli per altre distribuzioni Linux.
Configurare l'autenticazione Kerberos
Configura un client Kerberos:
sudo apt-get install krb5-user
Quando ti viene chiesto il realm predefinito, digita un nome di dominio on-premise in lettere maiuscole.
Esegui quanto segue per installare gli strumenti a riga di comando di SQL Server:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list sudo apt-get update sudo apt-get install mssql-tools unixodbc-dev
Connettiti con l'autenticazione Windows
- Esegui lo strumento kinit come segue:
kinit <user_account>
- Per connetterti con l'autenticazione Windows, esegui:
/opt/mssql-tools/bin/sqlcmd -S <address >>
- Esegui il comando
klist
e controlla se è stato emesso un ticket specificamente per:"MSSQLSvc/<address>:1433 @ domain"
- Se il ticket non è stato emesso, l'errore riportato sopra indica probabilmente un problema che causa il fallback a NTLM.
Motivi del fallback a NTLM
Il fallback su NTLM è una configurazione errata del client che può essere associata alle seguenti condizioni:
- Per impostazione predefinita, Windows non tenta l'autenticazione Kerberos per un host se il nome dell'host è un indirizzo IP. Per attivare l'autenticazione Kerberos dal dominio gestito, prova il metodo descritto nella documentazione di Microsoft. Questo metodo non funziona con le credenziali on-premise quando devi utilizzare FQDNS.
- L'autenticazione Kerberos tramite attendibilità esterne non funziona. Utilizza invece le entità foresta come descritto qui.
- L'autenticazione Kerberos richiede il routing dei suffissi dei nomi per consentire il rilevamento di servizi in un'altra foresta. Prova il metodo descritto qui.
- L'autenticazione Kerberos non funziona se non è registrato alcun SPN per il servizio. Utilizza solo FQDN o indirizzi IP ottenuti dalla console Google Cloud per connetterti con l'autenticazione Windows.
Utenti AD on-premise: creazione di un accesso Windows
Puoi utilizzare un utente AD on-premise per creare un accesso Windows a Cloud SQL per SQL Server.
Ad esempio, puoi connetterti utilizzando SQL Server Management Studio (SSMS) in esecuzione su una VM Windows ospitata nel Virtual Private Cloud (VPC) del tuo progetto Google Cloud.
Per l'autenticazione Windows in questo contesto, Cloud SQL per SQL Server supporta solo il protocollo Kerberos. Per l'autenticazione Windows basata su Kerberos, il client deve risolvere il nome DNS dell'AD on-premise e dell'AD Microsoft gestito.
Configurare una relazione di trust unidirezionale o bidirezionale
Inizialmente, decidi se utilizzare una relazione di attendibilità unidirezionale o bidirezionale.
Quindi, segui le istruzioni per stabilire la fiducia tra il dominio AD on-premise e il dominio Microsoft AD gestito.
Configurare una VM Windows e creare un accesso Windows
Dopo aver stabilito la relazione di attendibilità tra il dominio AD on-premise e il dominio AD Microsoft gestito, completa i seguenti passaggi. Ad esempio, per scopo illustrativo, in questi passaggi viene utilizzato SQL Server Management Studio (SSMS), in esecuzione su una VM Windows, in hosting nella VPC del tuo progetto Google Cloud:
- Crea una VM Windows.
- Crea una VM con una versione di Windows supportata da Managed Microsoft AD.
- Crea la VM nel progetto che ospita il tuo dominio AD Microsoft gestito. Se esiste un VPC condiviso che è una rete autorizzata, puoi anche creare la VM in uno dei relativi progetti di servizio.
- Crea la VM su una rete VPC che è una rete autorizzata del dominio AD di Microsoft gestito e che ha configurato l'accesso privato ai servizi per Cloud SQL.
- Unisci la VM Windows al dominio Microsoft AD gestito.
- Installa SSMS sulla VM Windows.
- Risolvi il dominio on-premise nella rete VPC.
- Dalla rete autorizzata su cui è in esecuzione la VM Windows, attiva la risoluzione DNS on-premise seguendo i passaggi descritti nella pagina Risolvere le query per gli oggetti Microsoft AD non gestiti. I passaggi riportati in quella pagina sono prerequisiti per il funzionamento dell'autenticazione Windows basata su Kerberos per gli utenti on-premise.
Crea un accesso Windows per un utente on-premise.
- Segui le istruzioni per la creazione dell'accesso per creare un accesso Windows per un utente on-premise. Ad esempio, specifica un comando simile al seguente:
CREATE LOGIN [DOMAIN_NAME\USER_NAME] FROM WINDOWS
Accedi all'istanza Cloud SQL per SQL Server utilizzando le istruzioni specifiche dell'applicazione per accedere a un utente on-premise. Ad esempio, se utilizzi SQL Server Management Studio, consulta queste istruzioni.
Risolvere i problemi relativi a un utente AD on-premise
Se si verifica un problema durante l'accesso a un'istanza Cloud SQL per SQL Server, esegui queste verifiche:
- Verifica le configurazioni del firewall della rete on-premise e della VPC autorizzata dal progetto, seguendo le istruzioni per la creazione di una relazione di trust con un dominio on-premise.
- Verifica il routing dei suffissi dei nomi per la relazione di attendibilità on-premise.
- Verifica di poter eseguire queste operazioni di risoluzione DNS dalla VM Windows su cui è in esecuzione SSMS:
nslookup fqdn-for-managed-ad-domain
nslookup fqdn-for-on-premises-ad-domain
nslookup fqdn-for-cloud-sql-server-instance
Suggerimenti
- È supportata un'istanza con IP pubblico, a condizione che abbia anche un IP privato. L'IP privato deve essere abilitato per l'istanza. Poi puoi scegliere di utilizzare l'IP pubblico o l'IP privato per connetterti all'istanza, a condizione che entrambi siano disponibili.
- Prima di creare un'istanza, inclusa un'istanza sostitutiva, esamina quanto segue, se necessario:
- Terraform è supportato.
- Se ricevi uno dei seguenti errori, verifica di aver soddisfatto tutti i
prerequisiti per l'integrazione:
- "Account di servizio per prodotto e progetto non trovato"
- "Autorizzazione insufficiente per l'integrazione con il dominio Managed Service for Microsoft Active Directory"
- Se ricevi il messaggio di errore "Dominio non trovato", verifica che il nome di dominio sia corretto e che sia sensibile alle maiuscole.
- Se l'autenticazione Windows non va a buon fine da un dominio connesso tramite un rapporto di attendibilità, verifica che l'autenticazione Windows funzioni per un utente di un dominio gestito. In questo caso:
- Verifica di aver utilizzato un nome DNS. Gli indirizzi IP non sono supportati dai domini collegati utilizzando un rapporto di attendibilità.
- Assicurati di aver seguito tutti i passaggi per la creazione di una relazione di trust con un dominio on-premise, inclusa l'apertura di tutte le porte del firewall.
- Convalida la relazione di attendibilità.
- Verifica che la direzione della relazione di attendibilità consenta agli utenti del dominio (collegato tramite una relazione di attendibilità) di autenticarsi nel dominio gestito.
- Verifica che il routing dei suffissi dei nomi sia impostato sul dominio collegato tramite un rapporto di attendibilità.
- Verifica che la attendibilità funzioni senza utilizzare Cloud SQL per SQL Server:
- Crea una VM Windows.
- Aggiungilo al dominio Microsoft AD gestito.
- Prova a eseguire, ad esempio, Blocco note come utente del dominio collegato tramite un rapporto di attendibilità.
- Riavvia la VM client e verifica di nuovo l'autenticazione Windows.
- Potresti provare a creare un accesso a SQL Server, ma ricevere il seguente errore: "Nome\dominio utente o gruppo Windows NT non trovato. Controlla di nuovo il nome". Questo potrebbe essere accaduto perché i gruppi locali del dominio non sono supportati. Se applicabile, utilizza gruppi globali o universali.
- Quando vengono emesse da un utente di un dominio connesso tramite una relazione di attendibilità, le query di SQL Server possono generare il seguente errore: "Impossibile ottenere informazioni sul gruppo/utente Windows NT". Questo errore può verificarsi, ad esempio, se crei accessi da domini collegati tramite un rapporto di attendibilità. L'errore può verificarsi anche se concedi privilegi per gli accessi da domini collegati tramite una relazione di attendibilità. In questi casi, spesso la ripetizione dell'operazione va a buon fine. Se il nuovo tentativo non va a buon fine, chiudi la connessione e apri una nuova connessione.
Se ricevi l'errore "Impossibile ottenere informazioni sul gruppo/utente Windows NT", controlla la connettività di rete ai domini on-premise utilizzando il file log
active_directory.log
disponibile in Cloud Logging per l'istanza Cloud SQL per SQL Server. Questo file contiene la seguente diagnostica relativa alle modifiche alla connettività del dominio on-premise:- Domini on-premise attendibili dall'istanza Cloud SQL per SQL Server.
Ad esempio, il seguente log mostra il passaggio da nessun dominio attendibile a due nuovi domini attendibili con i relativi nomi NetBIOS,
ONPREM
eCHILD
: Se un dominio on-premise non è elencato o è registrato come non attendibile, controlla se la relazione di attendibilità esiste con il dominio AD gestito ed è convalidata. Se esiste un rapporto di attendibilità unidirezionale tra il dominio AD gestito e il dominio on-premise, gli altri domini on-premise considerati attendibili dal dominio on-premise potrebbero non essere visibili.2023-06-12 20:55:09.975 Detected change in trusted onprem domains: Previously trusted onprem domains: []. Current trusted onprem domains: [ONPREM CHILD]
- Domini on-premise raggiungibili e non raggiungibili utilizzando un ping normale dall'istanza Cloud SQL per SQL Server.
Ad esempio, il seguente log mostra il passaggio da nessun dominio raggiungibile a due nuovi domini raggiungibili,
onprem.com
echild.onprem.com
: Se un dominio non è elencato nei log di raggiungibilità, assicurati innanzitutto che sia registrato come dominio attendibile. In caso contrario, la raggiungibilità non viene verificata. Abbiamo sempre un peering VPC tra un progetto con istanze on-premise e i progetti Google Cloud. Anche un altro peering VPC introduce una connessione di peering transitivo, che Cloud SQL non supporta. Ti consigliamo invece di utilizzare un tunnel VPN per connettere un dominio on-premise a Cloud SQL. Deve esistere al massimo una connessione di peering tra il progetto on-premise e il progetto Google Cloud con le istanze Cloud SQL per SQL Server.2023-06-12 20:55:10.664 Detected change in reachable onprem domains: Previously reachable onprem domains: []. Current reachable onprem domains: [onprem.com child.onprem.com]
- Ping Microsoft chiamata di procedura remota (MSRPC) riusciti e non riusciti ai domini on-premise dall'istanza Cloud SQL per SQL Server.
Ad esempio, il seguente log mostra il passaggio dall'assenza di domini pingabili MSRPC a due nuovi domini pingabili MSRPC,
ONPREM
eCHILD
: I ping MSRPC sono inclusi come diagnostica aggiuntiva e potrebbero non funzionare in alcune configurazioni. Puoi comunque verificare la connettività del dominio on-premise tramite le prime due diagnostiche.2023-06-12 20:55:10.664 Detected change in MSRPC pingable domains: Previously pingable onprem domains: []. Current pingable onprem domains: [ONPREM CHILD]
- Domini on-premise attendibili dall'istanza Cloud SQL per SQL Server.
Ad esempio, il seguente log mostra il passaggio da nessun dominio attendibile a due nuovi domini attendibili con i relativi nomi NetBIOS,
Se le query di SQL Server generano l'errore "L'accesso proviene da un dominio non attendibile", tieni presente che gli indirizzi IP non sono supportati per gli utenti dei domini collegati tramite un rapporto di attendibilità. Inoltre, le seguenti azioni potrebbero risolvere il problema:
- Se viene utilizzato un indirizzo IP per connettere gli utenti da un dominio gestito, segui queste istruzioni.
- Evita di utilizzare proxy e utilizza sempre lo stesso nome DNS per connetterti a Cloud SQL per SQL Server, come indicato nella console Google Cloud.
- Elimina i ticket Kerberos esistenti. L'errore riportato sopra potrebbe verificarsi se hai avuto un client che di recente si è connesso a un'istanza Cloud SQL per SQL Server e l'istanza è stata interrotta e avviata. In alternativa, l'errore potrebbe verificarsi se l'autenticazione Windows è stata disattivata e poi riattivata per l'istanza Cloud SQL per SQL Server. Se il client utilizza la cache delle credenziali di Windows,
blocca e sblocca la workstation client oppure esegui
klist purge
.
Un tentativo di attivare l'autenticazione Windows potrebbe generare l'errore "Per supportare il servizio gestito per Microsoft Active Directory, questa istanza richiede una data di creazione più recente". Tieni presente quanto segue in merito a questo errore:
- In Cloud SQL, se un'istanza Cloud SQL per SQL Server è stata creata prima del 12 marzo 2021, non può essere integrata con AD Microsoft gestito.
- In alcuni casi, se crei un'istanza Cloud SQL per SQL Server e non attivi AD Microsoft gestito al momento della creazione, potresti ricevere lo stesso errore. Dopo aver esaminato gli altri suggerimenti in questa sezione, crea una nuova istanza attivando gli annunci Microsoft gestiti al momento della creazione.
Il tentativo di creare un'istanza Cloud SQL per SQL Server potrebbe generare l'errore "Questa istanza non supporta Managed Service for Microsoft Active Directory". Se ricevi questo errore, il progetto potrebbe non essere supportato. Prova a utilizzare un progetto diverso.
Se un'istanza presenta problemi persistenti con l'autenticazione Windows (indipendentemente dal fatto che l'istanza sia stata aggiornata di recente o meno), prova a uscire dal dominio Active Directory gestito e poi a rientrarci. Per farlo, utilizza la procedura di aggiornamento per annullare l'unione e poi per eseguire nuovamente l'unione al dominio. In questo modo, non vengono rimossi gli utenti o gli accessi autenticati da Windows esistenti nei tuoi database. Tuttavia, la rimozione dell'autenticazione Windows causa il riavvio di un'istanza.
Utilizza lo strumento di diagnostica AD per risolvere i problemi di configurazione di AD con il dominio on-premise e le istanze Cloud SQL per SQL Server nella console Google Cloud.
Risoluzione dei problemi
Fai clic sui link nella tabella per visualizzare i dettagli:
Per questo errore… | Il problema potrebbe essere… | Prova a fare così… |
---|---|---|
Per-product, per-project service account not found. |
Il nome dell'account di servizio non è corretto. | Nella pagina Account di servizio, assicurati di aver creato un account di servizio per il progetto utente corretto. |
Insufficient permission to integrate with Managed Service for
Microsoft Active Directory domain. |
Nel account di servizio manca il ruolo managedidentities.sqlintegrator . |
Dalla
pagina IAM e amministrazione, aggiungi il
ruolo managedidentities.sqlintegrator al tuo account di servizio.
|
Domain not found . |
Il dominio non esiste o è stato digitato in modo errato. | Assicurati che il nome di dominio sia corretto. È sensibile alle maiuscole. |
The domain is busy with another operation. Please retry.
|
Un'altra istanza Cloud SQL sta eseguendo un'operazione sullo stesso dominio Active Directory gestito. | Riprova a eseguire l'operazione. Se stai eseguendo un batch di aggiornamenti alle istanze Cloud SQL collegate allo stesso dominio, limita il numero di quelli eseguiti in parallelo. |
The operation completed but an update to Active Directory failed.
You may experience issues with Windows Authentication on this instance,
please see
https://cloud.google.com/sql/docs/sqlserver/configure-ad
for tips . |
Non è stato possibile eseguire gli aggiornamenti richiesti sul dominio Active Directory gestito. | Se riscontri problemi con l'autenticazione Windows, puoi provare a eseguire il dissociamento dal dominio Active Directory gestito e poi a ricollegarti. Per farlo, utilizza la procedura di aggiornamento per annullare l'unione e poi per eseguire nuovamente l'unione al dominio. Questa operazione non rimuove gli utenti o gli accessi autenticati da Windows esistenti nei tuoi database. Tuttavia, la rimozione dell'autenticazione Windows causa un riavvio dell'istanza. |
This instance would need a more recent creation date to support
Managed Service for Microsoft Active Directory. |
In Cloud SQL, se un'istanza Cloud SQL per SQL Server è stata creata prima del 12 marzo 2021, non può essere integrata con AD di Microsoft gestito. | Prova l'operazione su un'istanza creata dopo il 12 marzo 2021. |
Passaggi successivi
- Verifica di aver esaminato attentamente la pagina di panoramica, che include limitazioni e funzionalità non supportate. Questa pagina include anche link a documentazione aggiuntiva.