![]() |
Datenbank: MSSQL Express • Version: 2008 • Zugriff über: ADO
Zugriff auf MSSQL2008 mit User aus trusted domain
Hallo allerseits,
habe ein Programm, welches auf einen MSSQL Server 2008 Express zugreift. Die Anmeldung am MSSQL erfolgt über einen eigenen MSSQL-User. Beim Start des Programms setze ich folgenden Connection-String:
Delphi-Quellcode:
Beim ersten Öffnen einer Tabelle wird mir aber eine Fehlermeldung angezeigt:
ConnectionString := 'Provider=SQLNCLI10.1;' +
'Integrated Security="";' + 'User ID=<dbusername>;' + 'Password=<dbuserpw>;' + 'Persist Security Info=True;' + 'Initial Catalog=' + sDBKatalog + ';' + 'Data Source=<MSSQLSERVERNAME>;' + 'Application Name=MeinProgramm;' + 'Initial File Name="";' + 'Server SPN=""'; "cannot open database <dbname> requested by the login. the login failed." Im Log des MSSQL Servers steht dann folgende Meldung: "Login failed for user <user der trusted domain>. Reason: failed to open the explicitly specified database" Warum will sich das Programm mit dem Windows-User anmelden obwohl ich im Connection-String einen eigenen DB-User angebe? Gruß, Peter |
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
Du brauchst nur folgende setzen:
Delphi-Quellcode:
User und PW bleiben dann weg.
Integrated Security=SSPI;
Persist Security Info=False; |
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
Wenn ich mir die Beschreibung zum Parameter "integrated security" des Connection Strings anschaue "Accepts the value "SSPI" for Windows Authentication", dann ist das genau die falsche Lösung. Ich möchte eben unabhängig von der Windows Authentifizierung mit dem DB-User mich anmelden.
Oder verstehe ich da etwas falsch? |
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
Wenn du dich mit dem DB-User anmelden möchtest:
Delphi-Quellcode:
Mehr brauchst du nicht angeben (natürlich noch den Provider).
User ID=test;
Password=testpwd; Persist Security Info=True; Initial Catalog=DBNAME; Data Source=SERVER |
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
Wie du den von mir oben geposteten Connection String entnehmen kannst, habe ich genau diese Einträge gesetzt.
|
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
Hi,
Du hast da nichts falsch gemacht. Der SQL - Server wird standardmäßig mit der Win-Authentifikation installiert. Er kann mit dem SQL User schlicht nichts anfangen. Also: MS-SQL Server auf die Authentifikation SQL und Win umstellen, den User einrichten und aktivieren und los gehts. Im Netz kursieren verschiedene Methoden, aber das Tool MS SQL Server Management Studio kann das auch. Einfach starten, und beim verbundenen Server mit Rechtsklick Eigenschaften auswählen. Dort unter Sicherheit SQL Server- und Windows-Authentifizierungsmodus auswählen, Server neu starten und gut ist. Hab mir auch dem Problem einen Wolf gesucht. Viele Grüße |
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
Das kann eigentlich nicht sein. Der MSSQL Server ist bereits auf Windows- UND SQL Server Authentifizierung eingestellt.
|
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
Hallo,
Was passiert den wenn Du mit dem SQL Server Management Studio per SQL User verbindest? Gruss |
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
Nimm mal das "Integrated Security=" ganz raus.
|
Re: Zugriff auf MSSQL2008 mit User aus trusted domain
@generic
Wenn ich das "Integrated Security=" weglasse, dann erhalte ich die obige Fehlermeldung "cannot open database <dbname> requested by the login. the login failed." @taveuni Das Verbinden mit diesem (!) SQL-User lässt das Management Studio nicht zu. Dieser SQL-User hat die Server-Rolle "public" zugeteilt. (Ich muss gestehen, ich kenne mich mit den Berechtigungen nicht gut aus!) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz