Modificare la modalità di autenticazione del server

Si applica a:SQL Server

Questo articolo illustra come cambiare la modalità di autenticazione del server in SQL Server usando SQL Server Management Studio o Transact-SQL. Durante l'installazione il motore di database di SQL Server è impostato su Modalità di autenticazione di Windows o Autenticazione di SQL Server e di Windows. Dopo l'installazione, è possibile modificare in qualsiasi momento la modalità di autenticazione.

Se si seleziona Modalità di autenticazione di Windows durante l'installazione, l'accesso sa viene disabilitato e il programma di installazione assegna una password. Se in seguito si modifica lamodalità di autenticazione in Autenticazione di SQL Server e di Windows, l'accesso sa resterà disabilitato. Per usare l'accesso sa, usare l'istruzione ALTER LOGIN per abilitare l'accesso sa e assegnare una nuova password. È possibile connettersi al server tramite l'accesso sa solo se si usa l'autenticazione di SQL Server.

Osservazioni:

L'account sa è un account noto di SQL Server che viene spesso preso di mira da utenti malintenzionati. Non abilitare l'account sa a meno che l'applicazione non lo richieda. È importante utilizzare una password complessa per l'accesso all'account sa.

Modificare la modalità di autenticazione con SQL Server management Studio

  1. In Esplora oggetti di SQL Server Management Studio (SSMS) fare clic con il pulsante destro del mouse sul server, quindi selezionare Proprietà.

  2. Nella pagina Sicurezza selezionare la nuova modalità di autenticazione del server dall'elenco Autenticazione server e quindi selezionare OK.

  3. Nella finestra di dialogo di SQL Server Management Studio selezionare OK per confermare il requisito del riavvio di SQL Server.

  4. In Esplora oggetti fare clic con il pulsante destro del mouse sul server e quindi selezionare Riavvia. Se SQL Server Agent è in esecuzione, anch'esso dovrà essere riavviato.

Abilitare l'accesso sa

È possibile abilitare l'accesso sa con SSMS o Transact-SQL.

Usare SSMS

  1. In Esplora oggetti espandere Sicurezzae quindi Account di accesso, fare clic con il pulsante destro del mouse su sa e infine selezionare Proprietà.

  2. Nella pagina Generale potrebbe essere necessario creare e confermare una password per l'accesso sa.

  3. Nella pagina Stato selezionare Abilitato nella sezione Accesso, quindi selezionare OK.

Usare Transact-SQL

Nell'esempio seguente viene abilitato l'accesso sa e viene impostata una nuova password. Sostituire <enterStrongPasswordHere> con una password complessa prima di eseguire l'esempio.

ALTER LOGIN sa ENABLE;
GO
ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>';
GO

Esempi

Attenzione

Nell'esempio seguente viene usata una stored procedure estesa per modificare il Registro di sistema del server. Se le modifiche al Registro di sistema vengono apportate in modo non corretto, possono verificarsi problemi gravi. Questi problemi potrebbero richiedere la reinstallazione del sistema operativo. Microsoft non è in grado di garantire che questi problemi possano essere risolti. La modifica del Registro di sistema è a esclusivo rischio dell'utente.

Le autorizzazioni necessarie per cambiare la modalità di autenticazione sono sysadmin o CONTROLLO SERVER

R. Modificare l'autenticazione solo in Windows

  1. Modificare l'autenticazione del server solo in Windows:

    USE [master]
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE',
         N'Software\Microsoft\MSSQLServer\MSSQLServer',
         N'LoginMode', REG_DWORD, 1;
    GO
    
  2. Disabilitare l'account sa.

    USE [master]
    GO
    
    ALTER LOGIN sa DISABLE;
    GO
    

B. Modificare l’autenticazione in modalità mista (Windows e SQL).

  1. Abilitare l'account sa e impostare una password complessa:

    USE [master]
    GO
    
    ALTER LOGIN sa ENABLE;
    GO
    
    ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>';
    GO
    
  2. Modificare l’autenticazione del server in modalità mista

    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE',
        N'Software\Microsoft\MSSQLServer\MSSQLServer',
        N'LoginMode', REG_DWORD, 2;
    GO