Connettersi a una macchina virtuale di SQL Server in Azure (Gestione risorse)

Overview

Questo argomento descrive la modalità di connessione all'istanza di SQL Server in esecuzione su una macchina virtuale di Azure. Illustra alcuni scenari di connettività generali e quindi descrive la procedura dettagliata per la configurazione della connettività di SQL Server in una macchina virtuale di Azure.

Nota

Azure offre due modelli di distribuzione per creare e usare le risorse: Gestione risorse e la distribuzione classica. Questo articolo illustra il modello di distribuzione Resource Manager, che Microsoft consiglia di usare per le nuove distribuzioni in sostituzione del modello di distribuzione classica.

Per visualizzare la versione classica di questo articolo, vedere Connettersi a una macchina virtuale di SQL Server in Azure (distribuzione classica).

Per una procedura dettagliata completa del provisioning e della connettività, vedere Provisioning di una macchina virtuale di SQL Server in Azure.

Scenari di connessione

La modalità di connessione di un client a SQL Server in esecuzione in una macchina virtuale varia a seconda della posizione del client e della configurazione tra il computer e la rete. Tali scenari includono:

Connettersi a SQL Server tramite Internet

Per connettersi al motore di database di SQL Server da Internet, sono necessari alcuni passaggi, ad esempio configurazione del firewall, abilitazione dell'autenticazione di SQL, nonché configurazione del gruppo di sicurezza di rete. Per consentire il traffico TCP sulla porta 1433, è necessario avere una regola del gruppo di sicurezza di rete.

Se si usa il portale per eseguire il provisioning di un'immagine di macchina virtuale di SQL Server con Resource Manager, questi passaggi vengono eseguiti automaticamente quando si seleziona Pubblico per l'opzione di connettività SQL:

Opzione di connettività SQL pubblica durante il provisioning

Se questa operazione non è stata eseguita durante il provisioning, è possibile configurare manualmente SQL Server e le macchine virtuali seguendo la procedura per configurare manualmente la connettività in questo articolo.

Nota

L'immagine della macchina virtuale per SQL Server Express Edition non abilita automaticamente il protocollo TCP/IP. Per Express Edition, è necessario usare Gestione configurazione SQL Server per abilitare manualmente il protocollo TCP/IP dopo avere creato la VM.

Al termine, tutti i client con accesso a Internet potranno connettersi all'istanza di SQL Server specificando l'indirizzo IP pubblico della macchina virtuale o l'etichetta DNS assegnata a tale indirizzo IP. Se la porta di SQL Server è 1433, non è necessario specificarla nella stringa di connessione.

"Server=sqlvmlabel.eastus.cloudapp.azure.com;Integrated Security=false;User ID=<login_name>;Password=<your_password>"

Sebbene in questo modo venga abilitata la connettività per i client tramite Internet, ciò non significa che chiunque può connettersi all'istanza di SQL Server. I client esterni dovranno disporre del nome utente e della password corretti. Per maggiore sicurezza, è possibile evitare la nota porta 1433. Ad esempio, se SQL Server è configurato per l'ascolto sulla porta 1500 e sono state stabilite regole del gruppo di sicurezza di rete e del firewall corrette, sarà possibile connettersi aggiungendo il numero di porta al nome del server, come nell'esempio seguente:

"Server=sqlvmlabel.eastus.cloudapp.azure.com,1500;Integrated Security=false;User ID=<login_name>;Password=<your_password>"
Nota

È importante notare che quando si usa questa tecnica per comunicare con SQL Server, tutti i dati in uscita dai data center di Azure sono soggetti ai normali prezzi di trasferimenti dei dati in uscita.

Connettersi a SQL Server nella stessa rete virtuale

rete virtuale supporta scenari aggiuntivi. È possibile connettere le VM nella stessa rete virtuale, anche se si trovano in gruppi di risorse diversi. Con una VPN da sito a sitoè possibile creare un'architettura ibrida che connette le macchine virtuali a computer e reti locali.

Le reti virtuali consentono inoltre di aggiungere le macchine virtuali di Azure a un dominio. Si tratta dell'unico modo per usare l'autenticazione di Windows per SQL Server. Gli altri scenari di connessione richiedono l'autenticazione SQL con nomi utente e password.

Se si usa il portale per eseguire il provisioning di un'immagine di macchina virtuale di SQL Server con Resource Manager, le regole del firewall corrette per la comunicazione sulla rete virtuale vengono impostate quando si seleziona Privato per l'opzione di connettività SQL. Se questa operazione non è stata eseguita durante il provisioning, è possibile configurare manualmente SQL Server e le macchine virtuali seguendo la procedura per configurare manualmente la connettività in questo articolo. Se però si prevede di configurare un ambiente di dominio e l'autenticazione di Windows, non è necessario seguire la procedura descritta in questo articolo per configurare l'autenticazione SQL e gli account di accesso. Non è nemmeno necessario configurare regole del gruppo di sicurezza di rete per l'accesso tramite Internet.

Nota

L'immagine della macchina virtuale per SQL Server Express Edition non abilita automaticamente il protocollo TCP/IP. Per Express Edition, è necessario usare Gestione configurazione SQL Server per abilitare manualmente il protocollo TCP/IP dopo avere creato la VM.

Presupponendo che il DNS sia stato configurato nella rete virtuale, è possibile connettersi all'istanza di SQL Server specificando il nome computer della VM di SQL Server nella stringa di connessione. L'esempio seguente presuppone che sia stata configurata anche l'autenticazione di Windows e che all'utente sia stato concesso l'accesso all'istanza di SQL Server.

"Server=mysqlvm;Integrated Security=true"

Si noti che in questo scenario è possibile anche specificare l'indirizzo IP della macchina virtuale.

Procedura per la configurazione della connettività di SQL Server in una VM di Azure

La procedura seguente illustra come configurare manualmente la connettività all'istanza di SQL Server e quindi connettersi facoltativamente tramite Internet con SQL Server Management Studio (SSMS). Si noti che molte di queste operazioni vengono eseguite automaticamente quando si selezionano le opzioni di connettività di SQL Server appropriate nel portale.

Prima di poter eseguire la connessione all'istanza di SQL Server da un’altra VM o da Internet, è necessario completare le seguenti attività, come descritto nelle seguenti sezioni:

Aprire le porte TCP in Windows Firewall per l'istanza predefinita del motore di database

  1. Connettersi alla macchina virtuale tramite Desktop remoto. Per istruzioni dettagliate sulla connessione alla macchina virtuale, vedere Aprire la macchina virtuale tramite Desktop remoto.
  2. Una volta effettuato l'accesso, nella schermata Start digitare WF.msce premere INVIO.

    Avviare Windows Firewall

  3. In Windows Firewall con protezione avanzata, nel riquadro sinistro fare clic con il pulsante destro del mouse su Regole in ingresso e quindi fare clic su Nuova regola nel riquadro Azioni.

    Nuova regola

  4. Nella finestra di dialogo Creazione guidata nuova regola connessioni in entrata nella sezione Tipo di regola selezionare Porta e quindi fare clic su Avanti.
  5. Nella finestra di dialogo Protocollo e porte usare il valore predefinito per TCP. Selezionare la casella Porte locali specifiche e quindi digitare il numero di porta dell'istanza del motore di database (1433 per l'istanza predefinita o il numero di porta specificato per la porta privata nel passaggio di creazione dell'endpoint).

    Porta TCP 1433

  6. Fare clic su Avanti.
  7. Nella finestra di dialogo Azione selezionare Consenti la connessione e quindi fare clic su Avanti.

    Nota sulla sicurezza: per un maggiore livello di sicurezza è possibile selezionare Consenti solo connessioni protette. Selezionare questa opzione per configurare altre opzioni di sicurezza per l'ambiente in uso.

    Consentire le connessioni

  8. Nella finestra di dialogo Profilo selezionare Pubblico, Privato e Dominio. Quindi fare clic su Next.

    Nota sulla sicurezza: la selezione di un profilo Pubblico consente l'accesso tramite Internet. Se possibile, scegliere un profilo più restrittivo.

    Profilo Pubblico

  9. Nella finestra di dialogo Nome digitare un nome e una descrizione per la regola e quindi fare clic su Fine.

    Nome regola

Aprire altre porte per altri componenti in base alle esigenze. Per ulteriori informazioni, vedere Configurare Windows Firewall per consentire l'accesso a SQL Server.

Configurare SQL Server per l'ascolto sul protocollo TCP

  1. Mentre si è connessi alla macchina virtuale, nella pagina iniziale digitare Gestione configurazione SQL Server e premere INVIO.

    Apertura di SQL Server Management Studio

  2. In Gestione configurazione SQL Server, nel riquadro console espandere Configurazione di rete SQL Server.
  3. Nel riquadro console fare clic su Protocolli per MSSQLSERVER (nome predefinito dell'istanza). Nel riquadro dei dettagli fare clic con il pulsante destro del mouse su TCP e quindi scegliere Abilita se l'opzione non è già abilitata.

    Abilitazione del protocollo TCP

  4. Nel riquadro console fare clic su Servizi di SQL Server. Nel riquadro dei dettagli fare clic con il pulsante destro del mouse su SQL Server (nome istanza) e quindi scegliere Riavvia per arrestare e riavviare l'istanza di SQL Server. L'istanza predefinita è SQL Server (MSSQLSERVER).

    Riavvio del motore di database

  5. Chiudere Gestione configurazione SQL Server.

Per ulteriori informazioni su come abilitare i protocolli per il motore di database di SQL Server, vedere Abilitare o disabilitare un protocollo di rete del server.

Configurare SQL Server per l'autenticazione in modalità mista

Il motore di database di SQL Server non può utilizzare l'Autenticazione di Windows senza ambiente di dominio. Per connettersi al motore di database da un altro computer, configurare SQL Server per l'autenticazione in modalità mista. L'autenticazione in modalità mista consente sia l'autenticazione di SQL Server sia l'autenticazione di Windows.

Nota

Se è stata configurata una Rete virtuale di Azure con un ambiente di dominio configurato, potrebbe non essere necessario configurare l'autenticazione in modalità mista.

  1. Mentre si è connessi alla macchina virtuale, nella pagina iniziale digitare SQL Server Management Studio e fare clic sull'icona selezionata.

    Alla prima apertura di Management Studio è necessario creare gli utenti dell'ambiente Management Studio. L'operazione potrebbe richiedere alcuni istanti.

  2. Verrà visualizzata la finestra di dialogo Connetti al server di Management Studio. Nella casella Nome server digitare il nome della macchina virtuale per la connessione al motore di database con Esplora oggetti; al posto del nome della macchina virtuale, per Nome server è anche possibile usare (locale) o un singolo punto. Selezionare Autenticazione di Windows e lasciare nome_macchina_virtuale\amministratore_locale nella casella Nome utente. Fare clic su Connetti.

    Connetti al server

  3. In Esplora oggetti di SQL Server Management Studio fare clic con il pulsante destro del mouse sul nome dell'istanza di SQL Server (nome della macchina virtuale) e quindi scegliere Proprietà.

    Proprietà del server

  4. Nella pagina Sicurezza, in Autenticazione server selezionare Autenticazione di SQL Server e di Windows e quindi fare clic su OK.

    Selezione della modalità di autenticazione

  5. Nella finestra di dialogo di SQL Server Management Studio fare clic su OK per confermare il requisito del riavvio di SQL Server.
  6. In Esplora oggetti fare clic con il pulsante destro del mouse sul server e quindi scegliere Riavvia. (Se SQL Server Agent è in esecuzione, anch'esso dovrà essere riavviato).

    Riavvia

  7. Nella finestra di dialogo di SQL Server Management Studio fare clic su per accettare il riavvio di SQL Server.

Creare gli account di accesso di SQL Server

Per connettersi al motore di database da un altro computer, configurare almeno un account di accesso con autenticazione di SQL Server.

  1. In Esplora oggetti di SQL Server Management Studio espandere la cartella dell'istanza del server in cui si desidera creare il nuovo account di accesso.
  2. Fare clic con il pulsante destro del mouse sulla cartella Sicurezza, scegliere Nuovo e quindi Account di accesso.

    Nuovo account di accesso

  3. Nella finestra di dialogo Account di accesso - Nuovo, nella pagina Generale immettere il nome del nuovo utente nella casella Nome account di accesso.
  4. Selezionare Autenticazione di SQL Server.
  5. Nella casella Password digitare una password per il nuovo utente. Digitare di nuovo la password nella casella Conferma password .
  6. Selezionare le opzioni di applicazione della password richieste, ovvero Applica criteri password, Imponi scadenza password e Richiedi modifica della password all'accesso successivo. Se si usa questo account di accesso per se stessi, non è necessario richiedere una modifica della password all'accesso successivo.
  7. Nell'elenco Database predefinito selezionare un database predefinito per il nome di accesso. master è il valore predefinito per questa opzione. Se il database utente non è ancora stato creato, lasciare questa opzione impostata su master.

    Proprietà account di accesso

  8. Se si tratta del primo account di accesso che si crea, è possibile assegnarlo all'amministratore di SQL Server. A questo scopo, nella pagina Ruoli server selezionare sysadmin.

    Nota

    i membri del ruolo predefinito del server dispongono del controllo completo sul motore di database. È consigliabile limitare attentamente le appartenenze a questo ruolo.

    sysadmin

  9. Fare clic su OK.

Per ulteriori informazioni sugli account di accesso di SQL Server, vedere Creazione di un account di accesso.

Configurare una regola in ingresso del gruppo di sicurezza di rete per la macchina virtuale

Se si intende connettersi a SQL Server tramite Internet, è necessario configurare una regola in ingresso nel gruppo di sicurezza di rete per la porta su cui è in ascolto l'istanza di SQL Server che, per impostazione predefinita, è la porta TCP 1433.

  1. Nel portale selezionare Macchine virtualie quindi la propria macchina virtuale di SQL Server.
  2. Selezionare le interfacce di rete.

    interfaccia di rete

  3. Selezionare quindi l'interfaccia di rete relativa alla propria macchina virtuale.
  4. Fare clic sul collegamento Gruppo di sicurezza di rete .

    interfaccia di rete

  5. Nelle proprietà del gruppo di sicurezza di rete espandere Regole di sicurezza in ingresso.
  6. Fare clic su Add .
  7. Nel campo Nome specificare "SQLServerPublicTraffic".
  8. Impostare l'opzione Protocollo su TCP.
  9. Nel campo Intervallo di porte di destinazione specificare 1433 o la porta su cui è in ascolto l'istanza di SQL Server.
  10. Verificare che l'opzione Azione sia impostata su Consenti. La finestra di dialogo della regola di sicurezza deve avere un aspetto simile alla schermata seguente.

    regola di sicurezza di rete

  11. Fare clic su OK per salvare la regola creata per la macchina virtuale.
Nota

È possibile disporre di un secondo gruppo di sicurezza di rete associato con la subnet, che è separato dal gruppo di sicurezza di rete nella VM. Ciò non avviene automaticamente per impostazione predefinita. Tuttavia, se si crea un gruppo di sicurezza di rete sulla subnet, è necessario aprire la porta 1433 sul gruppo di sicurezza di rete della subnet e della VM.

Configurare un'etichetta DNS per l'indirizzo IP pubblico

Per connettersi al motore di database di SQL Server da Internet, è innanzitutto necessario configurare un'etichetta DNS per l'indirizzo IP pubblico.

Nota

Le etichette DNS non sono necessarie se si intende connettersi solo all'istanza di SQL Server presente nella stessa rete virtuale o solo in locale.

Per creare un'etichetta DNS, selezionare prima di tutto Macchine virtuali nel portale. Selezionare la propria macchina virtuale di SQL Server per visualizzarne le proprietà.

  1. Nel pannello della macchina virtuale selezionare l' indirizzo IP pubblico.

    indirizzo ip pubblico

  2. Nelle proprietà dell'indirizzo IP pubblico espandere Configurazione.
  3. Immettere un nome per l'etichetta DNS. Il nome è un record A che consente di connettersi alla macchina virtuale di SQL Server usando il nome, anziché tramite l'indirizzo IP.
  4. Fare clic sul pulsante Salva .

    etichetta dns

Eseguire la connessione al motore di database da un altro computer

  1. In un computer connesso a Internet aprire SQL Server Management Studio (SSMS).
  2. Nella finestra di dialogo Connetti al server o Connetti al motore di database modificare il valore di Nome server. Immettere il nome DNS completo della macchina virtuale, determinato nell'attività precedente.
  3. Nella casella Autenticazione selezionare Autenticazione di SQL Server.
  4. Nella casella Accesso digitare il nome di un account di accesso SQL valido.
  5. Nella casella Password digitare la password dell'account di accesso.
  6. Fare clic su Connect.

    connessione a ssms

Passaggi successivi

Per la procedura di configurazione della connettività e del provisioning, vedere Provisioning di una macchina virtuale di SQL Server in Azure.

Esplorare il percorso di apprendimento per SQL Server in macchine virtuali di Azure.

Per altri argomenti relativi all'esecuzione di SQL Server nelle macchine virtuali di Azure, vedere SQL Server in Macchine virtuali di Azure.