Notification Services-Datenbankrollen

Wenn Sie eine Notification Services-Instanz erstellen, werden Datenbankrollen in der Instanzdatenbank und in den Anwendungsdatenbanken erstellt. Diese Rollen werden vom Modul der Instanz, von Abonnementverwaltungsschnittstellen, nicht gehosteten Ereignisanbietern sowie von Mitarbeitern der Administration verwendet, um erforderliche Berechtigungen in den Datenbanken zu erhalten.

Datenbankrollen

Alle Instanz- und Anwendungsdatenbanken enthalten dieselben Notification Services-Datenbankrollen. In der folgenden Tabelle sind diese Rollen und die zugehörigen Berechtigungen aufgelistet.

ms171396.note(de-de,SQL.90).gifHinweis:
Obwohl Datenbankrollen und ihre Berechtigungen von Mitgliedern der festen Serverrolle sysadmin oder der festen Datenbankrollen db_owner oder db_securityadmin geändert werden können, wird von Microsoft empfohlen, die diesen Rollen erteilten Berechtigungen nicht zu ändern, da das Bestimmen effektiver Berechtigungen bei benutzerdefinierten Rollen erschwert ist.

Rolle

Berechtigungen

NSAnalysis

Kann gespeicherte Prozeduren ausführen, die Berichte für die Leistungsanalyse und Problembehandlung erstellen.

Benutzer in dieser Rolle können alle Tabellen in der Datenbank lesen, was für Ad-Hoc-Berichte erforderlich sein kann.

Diese Rolle verfügt auch über NSReader-Berechtigungen.

NSAdmin

Kann Instanzen, Anwendungen und Komponenten aktivieren und deaktivieren.

Mitglieder der db_owner-Datenbankrolle und der festen Serverrollen sysadmin und dbcreator können Instanzen, Anwendungen und Komponenten ebenfalls aktivieren und deaktivieren.

NSDistributor

Kann gespeicherte Prozeduren ausführen, die SELECT- und UPDATE-Operationen auf Benachrichtigungs- und Verteilerarbeitstabellen ausführen.

Verteiler benötigen die dieser Rolle erteilten Berechtigungen. Fügen Sie dieser Rolle das Konto hinzu, das vom Microsoft Windows-Dienst verwendet wird, wenn sich die Verteiler auf eigenen Servern befinden. Falls sich die Verteiler auf demselben Server wie die gehosteten Ereignisanbietern und der Generator befinden, verwenden Sie die NSRunService-Rolle.

Diese Rolle verfügt auch über NSReader-Berechtigungen.

NSEventProvider

Kann gespeicherte Prozeduren ausführen, die INSERT-Operationen auf den Ereignistabellen sowie SELECT-, INSERT- und UPDATE-Operationen auf den Ereignisbatchtabellen ausführen.

Ereignisanbieter benötigen die dieser Rolle erteilten Berechtigungen. Konten für nicht gehostete Ereignisanbieter sollten stets diese Rolle verwenden. Gehostete Ereignisanbieter sollten diese Rolle verwenden, falls sie sich auf einem eigenen Server befinden. Falls sich die gehosteten Ereignisanbieter auf demselben Server wie die Verteiler und der Generator befinden, verwenden Sie die NSRunService-Rolle.

Diese Rolle verfügt auch über NSReader-Berechtigungen.

NSGenerator

Kann vom Generator verwendete gespeicherte Prozeduren ausführen.

Generatoren benötigen die dieser Rolle erteilten Berechtigungen. Fügen Sie dieser Rolle das Konto hinzu, das vom Windows-Dienst verwendet wird, wenn sich der Generator auf einem eigenen Server befindet. Falls sich der Generator auf demselben Server wie die gehosteten Ereignisanbietern und Verteiler befindet, verwenden Sie die NSRunService-Rolle.

Regeln in der Anwendungsdefinitionsdatei (Application Definition File, ADF) werden mit den Berechtigungen dieser Rolle ausgeführt.

Diese Rolle verfügt auch über NSReader-Berechtigungen.

NSReader

Kann gespeicherte Prozeduren ausführen, die Instanz- und Anwendungsmetadaten lesen.

NSRunService

Diese Rolle verfügt über die kombinierten Berechtigungen der Rollen NSEventProvider, NSGenerator, NSDistributor, NSReader, NSMonitor und NSVacuumer. Vom Windows-Dienst NS$instance_name werden diese Berechtigungen benötigt, um Abonnements auszuwerten und Benachrichtigungen zu generieren.

Wenn gehostete Ereignisanbieter, der Generator und die Verteiler auf einem Server ausgeführt werden, ordnen Sie diese Rolle dem Konto zu, das vom Windows-Dienst NS$instance_name für den Zugriff auf SQL Server verwendet wird. Ordnen Sie andernfalls die entsprechenden Berechtigungen über die Rollen NSEventProvider, NSGenerator und NSDistributor zu.

NSSubscriberAdmin

Kann gespeicherte Prozeduren ausführen, die Zeilen in abonnenten- und abonnementbezogenen Tabellen lesen, aktualisieren und löschen.

Abonnementverwaltungsanwendungen benötigen die dieser Rolle erteilten Berechtigungen. Fügen Sie dieser Rolle in jeder Instanz- und Anwendungsdatenbank das Konto hinzu, das von der Abonnementverwaltungsanwendung für den Zugriff auf SQL Server verwendet wird.

ms171396.note(de-de,SQL.90).gifHinweis:

Von Notification Services wird die Löschung eines Abonnentendatensatzes automatisch an alle zugehörigen Abonnements in allen Anwendungen weitergegeben, auch wenn der Benutzer, der den Abonnentendatensatz löscht, keinen Zugriff auf die Anwendungsdatenbanken besitzt. Das Entfernen von Abonnements wird mit den Berechtigungen des Datenbankbesitzers ausgeführt.

Diese Rolle verfügt auch über NSReader-Berechtigungen.

NSVacuum

Kann gespeicherte Prozeduren ausführen, die veraltete Daten aus den Anwendungsdatenbanken entfernen. Fügen Sie dieser Datenbankrolle Administratoren hinzu, die möglicherweise die gespeicherte Prozedur NSVacuum ausführen müssen.

Diese Rolle verfügt auch über NSReader-Berechtigungen.

Zum Anzeigen der Berechtigungen, die diesen Datenbankrollen zugewiesen sind, verwenden Sie die gespeicherte Systemprozedur sp_helprotect.

Siehe auch

Konzepte

Zum Bereitstellen und Verwalten von Notification Services erforderliche Berechtigungen

Andere Ressourcen

sp_helprotect (Transact-SQL)

Hilfe und Informationen

Informationsquellen für SQL Server 2005