Ich habe eine Anwendung, die eine Ansicht in Datenbank A auf einem Microsoft SQL Server verwendet, der eine SELECT-Abfrage für eine andere Datenbank B auf demselben Server ausführt. Dies ist ein Produktions-SQL-Server. Das Problem besteht darin, dass das Serverbenutzerkonto nur über Berechtigungen für den Zugriff auf Datenbank A verfügt. Wenn der Server die View Select Query ausführt, wird der Fehler angezeigt:Gespeicherte Prozedur/View greift auf eine andere Datenbank auf demselben Server zu (Sicherheitsproblem)
"Der Server Principal" .... "ist nicht in der Lage die Datenbank B unter dem aktuellen Sicherheitskontext zuzugreifen.
es scheint, wie wir die Aussicht auf diese Weise, und es ist zu riskant zu gewähren Zugang zur Datenbank B für den Server (IIS, die die App-Hosts)
verwendenGibt es eine Möglichkeit für den Server, die Daten mithilfe der VIEW Select-Abfrage zu erhalten, indem er ein Zertifikat oder ähnliches verwendet?
I Würde mich freuen, wenn mir jemand in die richtige Richtung zeigen könnte. Vielen Dank!
Sie können entweder eine gespeicherte Prozedur mit Administratorrechten für GT-Ergebnisse einrichten oder einen Bat-Cmd mit SQLCMD.EXE ausführen, um Ergebnisse zu erhalten. Die Bat-Datei könnte mit verschiedenen Privilegien ausgeführt werden. – jdweng