Quel mode d'authentification?
Votre serveur a peut-être été configuré pour fonctionner en mode d'authentification Windows uniquement. Cela peut être vérifié en ouvrant les propriétés de votre instance SQL Server dans SQL Server Management Studio et en consultant la section Sécurité :
Ou vous pouvez exécuter l'instruction SQL Server suivante après vous être connecté avec un compte Windows:
EXEC xp_instance_regread N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode'
Si la valeur renvoyée est LoginMode 2
alors le mode d'authentification SQL Server et Windows a été activé. (Voir l' étape 2. pour plus de détails sur la façon de changer cela.)
Si la valeur renvoyée est LoginMode 1
alors le mode d'authentification Windows a été activé. (Voir l' étape 1. pour plus de détails sur la façon de modifier ce paramètre) La connexion avec des connexions SQL Server pures n'est pas possible.
Étape 1. - Modification du mode d'authentification
Si votre instance a été configurée pour utiliser uniquement le mode authentifié Windows, vous devrez activer SQL Server et le mode d'authentification Windows et redémarrer votre serveur. Suivez ces étapes simples:
1. Changer le mode d'authentification
Script SQL
USE [master]
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode', REG_DWORD, 2
GO
SQL Server Management Studio (SSMS)
Modifiez le paramètre dans la section de sécurité de la fenêtre des propriétés en mode SQL Server et Windows Authentication .
2. Redémarrez l'instance SQL Server
Script SQL
(peut être réalisé via SQL Script en mode SQLCMD )
-- Connect to your instance
-- (Replace <instancename> with your instance's name
:connect <instancename>
-- Stop your SQL Server instance
-- (Replace SQLSERVERAGENT with the name of your service)
!! net stop SQLSERVERAGENT
-- (Replace MSSQLServer with the name of your service)
!! net stop MSSQLServer
-- Start your SQL Server instance
-- (Replace SQLSERVERAGENT with the name of your service)
!! net start MSSQLServer
-- (Replace SQLSERVERAGENT with the name of your service)
!! net start SQLSERVERAGENT
:connect localhost
SQL Server Management Studio (SSMS)
Cliquez avec le bouton droit sur votre instance SQL Server et sélectionnez Redémarrer dans le menu contextuel:
3. Vérifiez le paramètre
Script SQL
Vérifiez que votre instance s'exécute en mode d'authentification SQL Server et Windows en exécutant la commande suivante:
EXEC xp_instance_regread N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode'
Vous devriez recevoir un LoginMode 2
.
SQL Server Management Studio (SSMS)
Vérifiez que le bouton radio est sélectionné pour le mode d'authentification SQL Server et Windows .
Si votre compte sa a été désactivé, veuillez également suivre l' étape 2 .. Sinon, vous avez terminé.
Étape 2. Activation d'un compte sa
Dans le cas d'un compte sa désactivé , continuez et réactivez le compte SQL Server. Cela peut être réalisé avec le script suivant:
USE [master]
GO
ALTER LOGIN [sa] WITH PASSWORD=N'<your password>'
GO
ALTER LOGIN [sa] ENABLE
GO
... ou via SSMS.