Verbindung zu MS SQL 2008 von Linux

simson

Neuer Benutzer
Beiträge
2
Hallo zusammen,

ich versuche gerade, mich mit einem Perl-Script von einer Linux-Maschine aus an einer MSSQL-Datenbank anzumelden.
Der hierfür verwendete User sollte - so die Vorgabe - nicht per SQL, sondern über Windows Credentials authentifiziert werden. Da der Datenbankserver keinem AD angeschlossen ist, existiert ein lokaler Windows-User "monitoring"; diesen habe ich der DB über "Sicherheit > Anmeldungen > neue Anmeldung..." bekannt gemacht. Wenn ich mir per
runas /user: monitoring cmd
eine Kommandozeile hole, kann ich mir über die Windows-Anmeldung eine SQL-Konsole holen:
sqlcmd -E
So weit, so gut.

Was mir aber nicht gelingen will, ist diese Authentifizierungsart von Linux aus zu benutzen. Ich benutze den FreeTDS-Client - laut Doku (http://www.freetds.org/userguide/domains.htm) ist damit Windows-Authentifizierung möglich, auch wenn weder SSPI noch Kerberos zur Verfügung stehen; es muss dann allerdings Username und Passwort angegeben werden:
FreeTDS supports single sign-on (connecting without prompting for a username & password) or not, depending on how it was configured. For Windows hosts (both 32- and 64-bit), if SSPI is enabled, FreeTDS will log in using so-called "trusted authentication". For non-Windows hosts, enabling Kerberos provides similar functionality.
When neither option is enabled, FreeTDS can still log in using the domain account, but the user must supply the username & password.
To use domain logins without SSPI or Kerberos, use the 'DOMAIN\username' syntax for the username and use the domain password.

Genau das versuche ich mit folgendem Aufruf hinzubekommen:
Code:
tsql -S mssqlserver -U 'MSSQL\monitoring' -P monitoring
locale is "de_DE.utf8"
locale charset is "UTF-8"
Msg 18452, Level 14, State 1, Server MSSQL, Line 1
Anmeldefehler. Die Anmeldung stammt aus einer nicht vertrauenswürdigen Domäne und kann mit der Windows-Authentifizierung nicht verwendet werden.
Msg 20014, Level 9, State 0, Server OpenClient, Line 0
Login incorrect.
There was a problem connecting to the server
("mssqlserver" ist ein Alias, der in /etc/freetds.conf festgelegt ist; dort wird u.a. auch die Protokollversion und der Servername festgelegt)

Im Anwendungs-Eventlog des SQL Servers erhalte ich für jeden dieser Verbindungsaufrufe zwei Fehlermeldungen:
Ereignistyp: Fehler
Ereignisquelle: MSSQLSERVER
Ereigniskategorie: Anmeldung
Ereigniskennung: 17806
Datum: 17.11.2011
Zeit: 10:56:46
Benutzer: Nicht zutreffend
Computer: MSSQL
Beschreibung:
Fehler beim SSPI-Handshake (Fehlercode 0x8009030c) beim Herstellen einer Verbindung mit integrierter Sicherheit. Die Verbindung wurde geschlossen. [CLIENT: 192.168.122.16]
Ereignistyp: Fehlerüberw.
Ereignisquelle: MSSQLSERVER
Ereigniskategorie: Anmeldung
Ereigniskennung: 18452
Datum: 17.11.2011
Zeit: 10:56:46
Benutzer: Nicht zutreffend
Computer: MSSQL
Beschreibung:
Anmeldefehler. Die Anmeldung stammt aus einer nicht vertrauenswürdigen Domäne und kann mit der Windows-Authentifizierung nicht verwendet werden. [CLIENT: 192.168.122.16]

Kann es sein, dass der Server bei "MYSQL\monitoring" fälschlicherweise glaubt, es handle sich um den User "monitoring" in der Domain "MYSQL"?
Wer kann mir auf die Sprünge helfen?
Danke + Grüße -
Simson
 
Werbung:

Ritschi

Aktiver Benutzer
Beiträge
41
Hi,
...
Genau das versuche ich mit folgendem Aufruf hinzubekommen:
Code:
tsql -S mssqlserver -U 'MSSQL\monitoring' -P monitoring
locale is "de_DE.utf8"
locale charset is "UTF-8"
Msg 18452, Level 14, State 1, Server MSSQL, Line 1
Anmeldefehler. Die Anmeldung stammt aus einer nicht vertrauenswürdigen Domäne und kann mit der Windows-Authentifizierung nicht verwendet werden.
Msg 20014, Level 9, State 0, Server OpenClient, Line 0
Login incorrect.
There was a problem connecting to the server
...
Kann es sein, dass der Server bei "MYSQL\monitoring" fälschlicherweise glaubt, es handle sich um den User "monitoring" in der Domain "MYSQL"?
Wer kann mir auf die Sprünge helfen?
Du meinst die Domäne MSSQL, gelle? Aber genauso sieht das aus. -U 'MSSQL\monitoring' ist der User monitoring aus der Domäne MSSQL.
In welcher Domäne ist den der MSSQl Rechner?
 
Werbung:

simson

Neuer Benutzer
Beiträge
2
Hi Ritschi,

danke für Deine Antwort - nach drei Versuchen auf einer frisch installierten und aktuellen XP-Maschine habe ich den MSSQL-Server nach dem gleichen Schema auf Windows2003 installiert. Funktionierte auf Anhieb.
Nur kann ich leider keine Erkenntnis daraus ableiten, denn mein Kollege sagt, bei ihm hatte es auch auf XP funktioniert (die Test-VM hat er nur leider nicht mehr.... :( )
Anyway - danke! :)

Simson
 
Oben