System.Data.SqlClient.SqlException: Die EXECUTE-Berechtigung wurde für das xp_sqlagent_notify-Objekt, mssqlsystemresource-Datenbank, sys-Schema, verweigert

Problem

System.Data.SqlClient.SqlException: Die EXECUTE-Berechtigung wurde für das xp_sqlagent_notify-Objekt, mssqlsystemresource-Datenbank, sys-Schema, verweigert.

Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: Fehler in der Berichtsserver-Datenbank. Dies kann auf einen Verbindungsfehler, ein Timeout oder wenig Speicherplatz innerhalb der Datenbank zurückzuführen sein. —> System.Data.SqlClient.SqlException: Die EXECUTE-Berechtigung wurde für das xp_sqlagent_notify-Objekt, mssqlsystemresource-Datenbank, sys-Schema, verweigert.

Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: Fehler in der Berichtsserver-Datenbank.

System.Data.SqlClient.SqlException: The EXECUTE permission was denied on the object ‚xp_sqlagent_notify‘, database ‚mssqlsystemresource‘, schema ’sys‘

An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database. —> Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database. —> System.Data.SqlClient.SqlException: The EXECUTE permission was denied on the object ‚xp_sqlagent_notify‘, database ‚mssqlsystemresource‘, schema ’sys‘.

Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: An error occurred within the report server database

Details

Beschreibung

Unten stehende Fehlermeldung wird angezeigt, wenn man versucht ein SQL Server Reporting Services Abonnement zu erstellen.

Auch kann es passieren, dass die Abonnements, die im Bericht schon vorhanden waren, nun nicht mehr zu sehen sind.

Eventuell wird der Fehler auch angezeigt, wenn man im „Drei-Punkte-Menü“ eines Berichtes den Menüpunkt „Berichtsverlauf anzeigen“ bzw. „View Report History“ auswählt.

Die Berichte Selbst laufen ohne Probleme.

Fehler (DE)

Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: Fehler in der Berichtsserver-Datenbank. Dies kann auf einen Verbindungsfehler, ein Timeout oder wenig Speicherplatz innerhalb der Datenbank zurückzuführen sein. —> System.Data.SqlClient.SqlException: Die EXECUTE-Berechtigung wurde für das xp_sqlagent_notify-Objekt, mssqlsystemresource-Datenbank, sys-Schema, verweigert.

Error (EN)

An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database. —> Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database. —> System.Data.SqlClient.SqlException: The EXECUTE permission was denied on the object ‚xp_sqlagent_notify‘, database ‚mssqlsystemresource‘, schema ’sys‘.

Ist-Zustand

Die Datenbanken der SQL Server Reporting Services (SSRS) Dienstanwendung laufen in diesem Fall nicht auf der SQL-Server Instanz der SharePoint-Farm, sondern auf einer dedizierten SQL-Server-Instanz.

SharePoint Umgebung

Fix

SSRS den Zugriff auf den SQL-Server Agent erlauben

Wahrscheinlich hat die Benutzerkennung der SSRS-Dienstanwendung nicht genügend Berechtigungen für die SQL-Server-Instanz auf der sich die SSRS-Datenbanken befinden. Das kann z.B. dann der Fall sein, wenn bei der SSRS-Installation nicht der SQL-Server gewählt wurde, auf dem die SharePoint Datenbanken laufen, sondern ein dedizierter DB-Server bzw. DB-Instanz.

Um die Berechtigungen nachzuholen, müssen folgende Schritte durchgeführt werden.

  1. ZA > Dienstanwendungen verwalten.
    ZA - Zentraladministration - Central Administration - Dienstanwendungen verwalten - SharePoint 2013
  2. SQL Server Reporting Services“ Dienstanwendung in der Auflistung finden.
  3. Dann auf den Link dieser Dienstanwendung drauf klicken oder die Zeile markieren und den Button Verwalten drücken.
    Dienstanwendungen verwalten - Verwalten Button - SharePoint 2013
  4. Im nächsten Schritt den Link „Abonnements und Warnungen bereitstellen“ bzw. „Provision Subscriptions and Alerts“ ganz unten klicken.
    ZA - Dienstanwendungen verwalten - Reporting Services-Anwendung verwalten - SQL Server Reporting Services - Systemeinstellungen - Aufträge verwalten - Schlüsselverwaltung - Ausführungskonto - E-Mail - Abonnements und Warnungen - SSRS - SharePoint 2013
  5. Im schritt „Abonnements und Warnungen bereitstellen-SQL Server Reporting Services“ müssen wir sicherstellen, dass der Status des SQL-Server-Agents mit folgender Meldung bestätigt wird „Der SQL Server-Agent wird ausgeführt
  6. Um nun dem Dienstbenutzer die benötigten Berechtigungen zu erteilen, müssen wir entweder
    1. Das „Skript herunterladen“ und dieses im SSMS ausführen
      oder
    2. Benutzername und Kennwort eines Benutzers in die entsprechenden Felder eintragen, der genug Rechte auf dem SQL-Server mit der SSRS-Instanz besitzt, um dem SSRS-Dienstbenutzer die Datenbankrollen „RSExecRole“ und „SQLAgentUserRole“ für die Datenbanken „master“ und „msdb“ zuzuweisen.
      Falls es sich nicht um eine SQL-Server-Kennung, sondern um eine Windows- bzw. Domänenkennung handelt, dann muss die Option „Als Windows-Anmeldeinfirmationen verwenden“ aktiviert werden.

Die EXECUTE-Berechtigung wurde für das xp_sqlagent_notify-Objekt, mssqlsystemresource-Datenbank, sys-Schema, verweigert - ZA - Dienstanwendungen verwalten - Reporting Services-Anwendung verwalten - Abonnements und Warnungen verwalten - bereitstellen - Skript herunterladen - SSRS - SharePoint 2013

Damit sollte das Problem beseitigt sein.

Links

  1. social.msdn.microsoft.com: Error thrown on Managing caching option of a dataset on SSRS 2012 integrated mode report on Sharepoint 2010 SP1
  2. joyfulcraftsmen.wordpress.com: SharePoint SSRS Subscriptions xp_sqlagent_notify error
  3. fixingsharepoint.blogspot.de: SharePoint: The EXECUTE permission was denied on the object ‚xp_sqlagent_notify

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert