Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment changer le mode d'autorisation de SQL Server sans Management Studio

Voici ce que fait Management Studio pour changer le mode d'authentification de mixte à Windows uniquement :

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

Et de Windows uniquement vers mixte :

EXEC xp_instance_regwrite 
    N'HKEY_LOCAL_MACHINE', 
    N'Software\Microsoft\MSSQLServer\MSSQLServer', 
    N'LoginMode', 
    REG_DWORD, 
    2; -- only difference is right here

Vous pouvez appeler la même commande à partir de diverses sources pouvant se connecter à SQL Server, telles que SQLCMD, PowerShell, VBScript, C#, etc. Ou vous pouvez vous connecter directement au serveur, accéder à cette clé de registre et modifier la valeur manuellement (comme @ marc_s suggéré).

Notez que dans tous les cas, vous devez redémarrer SQL Server pour que les modifications prennent effet. Vous pouvez afficher les premières entrées du nouveau journal des erreurs au redémarrage pour vérifier que le mode d'authentification est correct. Il dira (pour mixte):

date/time    Server    Authentication Mode is MIXED.