MSSQL: SQL-Server Authentifizierung einschalten (TSQL)

Jetzt haben wir überall bei sehr vielen Kunden einen SBS im einsatz und können toll SQL testen – kommen nur nicht drauf weil kein SQL Manegement Studio Installiert ist und man von außen aufgrund der Windows-Authentifizierung nicht drauf kommt.
Ich möchte mich nun aber über VPN von einem komplett anderem Netzwerk und aus einer anderen Domäne am SQL Server anmelden.
Mein Versuch bringt folgende Meldung hervor:

Login failed for user 'sa'. The user is not associated with a trusted SQL Server connection. (Microsoft SQL Server, Error: 18452)

Dies liegt daran das der SQL Server standardmäßig so Installiert wird, dass er Remote-Verbindungen nur über Windows-Authentifizierung zulässt.
Der „sa“-Benutzer wird zwar bei der Installation mit angelegt, aber der Account wird deaktiviert.

Was nun?

Hier folgende Schritte die dafür nötig sind:
1. Als Administrator am Server (Windows) anmelden.
2. im Verzeichnis „C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Binn\“ die sqlcmd.exe mit folgenden Optionen aufrufen:

SQLCMD.exe -S SERVERNAME\INSTANZNAME -E

3. SQL-Server Authentifizierung aktivieren (Ist eigentlich nur das setzen eines Registry-Schlüssels):

USE [master]
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode', REG_DWORD, 2
GO

4. den Login des „sa“-Benutzer aktivieren und ein Passwort vergeben:

ALTER LOGIN sa ENABLE ;
GO
ALTER LOGIN sa WITH PASSWORD = 'sa' ;
GO

5. Optional einen neuen Sysadmin erstellen:

CREATE LOGIN sqladmin WITH PASSWORD = 'sQlAdMiN';
GO
EXEC sp_addsrvrolemember sqladmin, 'sysadmin' 
GO

Damit haben wir jetzt den gemischten Authentifizierungs-Modus (Windows Benutzer und SQL-Intern) aktiviert, wir haben den „sa“ Benutzer aktiviert und ihm das Passwort „sa“ gegeben – und wir haben einen zusätzlichen SQL Admin Benutzer mit dem Namen „sqladmin“ und dem Passwort „sQlAdMiN“ angelegt.
Jetzt müssen wir nur noch die SQL-Instanz neu starten und dann können wir uns auch extern über VPN aus einem anderen Netz und anderer Domäne am SQL Server anmelden.

leave your comment


*

Unterstütze den Frickelblog!