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:
Genau das versuche ich mit folgendem Aufruf hinzubekommen:
("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:
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
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
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