Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Kann nur auf MSSQL mit Adminkonto zugreifen (https://www.delphipraxis.net/130603-kann-nur-auf-mssql-mit-adminkonto-zugreifen.html)

PASST 11. Mär 2009 07:33

Datenbank: MSSQL Express • Version: 2008 • Zugriff über: ADO

Kann nur auf MSSQL mit Adminkonto zugreifen
 
Hallo allerseits,

ich habe eine Anwendung, mit der ich auf einen MSSQL Express 2008 zugreife. Der Zugriff erfolgt über folgenden ConnectionString mit einem im SQLServer eingetragen SQLbenutzer:
SQL-Code:
Provider=SQLNCLI10.1;Integrated Security="";User ID=SQLbenutzer;Password=pw;Persist Security Info=True;Initial Catalog=MeineDB;Data Source=SERVER\SQLEXPRESS;Application Name=MeineAnwendung;Initial File Name="";Server SPN=""
Wenn ich die Anwendung über ein Windowskonto mit Adminrechten starte, klappt die Verbindung. Sobald ich einen User ohne Adminrechte verwende, wird die Verbindung mit folgender Fehlermeldung verweigert:
SQL-Code:
Cannot open database "MeineDB" requested by the login. The login failed.
Mich wundert das ganze allerdings, da ich im Connectionstring einen SQLbenutzer verwende.

Wie kann ich das Problem lösen?

Gruß
Peter

Bernhard Geyer 11. Mär 2009 07:40

Re: Kann nur auf MSSQL mit Adminkonto zugreifen
 
Ist der MS SQL Server auch so konfiguriert das der gemischte Authentifizierung verwendet?

PASST 11. Mär 2009 07:42

Re: Kann nur auf MSSQL mit Adminkonto zugreifen
 
Ja, der MSSQL ist für Mixed Mode eingestellt.

Ich habe eine Lösung gefunden. Sie gefällt mir aber nicht :(

Erst wenn ich dem Windowsuser der Security des SQLServers hinzufüge und diesem User die Server Rollen public und sysadmin gebe, klappt die Verbindung.


Das kann nicht die richtige Lösung sein!

Kann mir jemand erklären wie ich es richtig machen muss?

generic 11. Mär 2009 08:54

Re: Kann nur auf MSSQL mit Adminkonto zugreifen
 
Hast du deinem Konto auch Rechte auf die Datenbank, die notwendigen Rollen und die Tabellen gegeben?

PASST 11. Mär 2009 09:04

Re: Kann nur auf MSSQL mit Adminkonto zugreifen
 
Grundsätzliche Frage: Was sind die Rechte, die ich benötige um Daten in Tabellen lesen und schreiben zu können? Es müssen keine Tabellenstrukturen geändert werden.


Mein Windowskonto (des Users, mit dem ich mich am Entwicklerrechner anmelde) ist im MSSQL angelegt und hat anscheinend ausreichend Rechte.

Ich möchte aber speziell für diese Anwendung einen eigenen SQLbenutzer verwenden. Der Benutzer ist auch angelegt, aber trotzdem klappt es nicht.

generic 11. Mär 2009 10:18

Re: Kann nur auf MSSQL mit Adminkonto zugreifen
 
Dennoch brauchst du das "select" Recht auf die Tabellen, welche du lesen möchtest.

Du kannst das recht aber auch der Rolle "public" zuordnen, somit wären die Rechte für alle Konten welche auf die DB zugreifen können.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz