Ausführung als Datenbankprinzipal ist nicht möglich...

07/12/2007 - 15:16 von candide_sh | Report spam
Hallo,

ich habe einen "SQLServer 2005 Express Advanced Services SP2" lokal
auf mehreren Laptops installiert. Dazu eine .Net2.0 Frontend, die auf
die DB zugreift.
Alle Laptop-User haben WinXP-Admin-Berechtigung. In der SS2005-DB
haben auch alle User die sysadmin-Rechte und sind als Besitzer der DB
eingetragen.

In der .Net2.0-Anwendung wird beim Löschen von Datensàtzen eine
StoredProc aufgerufen als "dbo.usp001_delete_stuff".

Und nur beim Löschen von Datensàtzen erhalte ich eine Fehlermeldung:











System.Data.SqlClient.SqlException: Die Ausführung als
Datenbankprinzipal ist nicht möglich, weil der Prinzipal "dbo" nicht
vorhanden ist, für diesen Typ von Prinzipal kein Identitàtswechsel
möglich ist, oder Sie nicht die erforderliche Berechtigung haben.
<<<

Die gleiche Installation auf meinem Win2k-Desktop-PC làuft ohne
Fehler. Dabei habe ich versucht, alles so zu installieren wie auf
diesem Testrechner, d.h. mit Integrated Security.

Ich habe auch mit schon ohne Integrated Security versucht mit dem sa-
Konto, der Fehler bleibt aber.

Weder die MS-KB noch die Newsgroups bieten mir Infos dazu.
Tipps?

candide_sh
 

Lesen sie die antworten

#1 Ralf Dietrich
08/12/2007 - 00:49 | Warnen spam
Hallo ,

hast Du evtl. noch eine Real-Name für uns? - wird hier gern gesehen :-)

Hallo,

ich habe einen "SQLServer 2005 Express Advanced Services SP2" lokal
auf mehreren Laptops installiert. Dazu eine .Net2.0 Frontend, die auf
die DB zugreift.
Alle Laptop-User haben WinXP-Admin-Berechtigung. In der SS2005-DB
haben auch alle User die sysadmin-Rechte und sind als Besitzer der DB
eingetragen.



ich mag es nicht gern sagen, auch wenn Dein Problem hier auf den ersten BLick
nichts damit zu tun zu haben scheint...
mir graust es ein wenig, wenn ich diese Berechtigungen sehe - alles und überall
als Admin :-(

In der .Net2.0-Anwendung wird beim Löschen von Datensàtzen eine
StoredProc aufgerufen als "dbo.usp001_delete_stuff".



was tut die Proc genau?
Einfach

" delete from tab where sp1 = @param? "

oder mehr?

Und nur beim Löschen von Datensàtzen erhalte ich eine Fehlermeldung:

System.Data.SqlClient.SqlException: Die Ausführung als
Datenbankprinzipal ist nicht möglich, weil der Prinzipal "dbo" nicht
vorhanden ist, für diesen Typ von Prinzipal kein Identitàtswechsel
möglich ist, oder Sie nicht die erforderliche Berechtigung haben.



Die Fehlermeldung kenne ich - kommt direkt vom SQL Server und stimmt mit
Ihrer Aussage eigentlich überein!
Dürfte allerdings nicht kommen, wenn Du wirklich mit "sa"-Rechten unterwegs
bist.
Nutzt du evtl. doch so etwas, wie Anwendungsrollen?
Führst Du irgendwo ein "execute as" aus

Die gleiche Installation auf meinem Win2k-Desktop-PC làuft ohne
Fehler. Dabei habe ich versucht, alles so zu installieren wie auf
diesem Testrechner, d.h. mit Integrated Security.



Das ist in der Tat ràtselhaft - würde ich mir gern mal "live und in Farbe"
anschauen ;-)

Ich habe auch mit schon ohne Integrated Security versucht mit dem sa-
Konto, der Fehler bleibt aber.



s.o.

candide_sh



Ralf

SQLServer - Usergroup für Newbies und Jedies auch in Deiner Nàhe:
http://www.sqlpass.de --> Regionalgruppen

Ähnliche fragen