Konfigurieren von Windows-Konten für eine Instanz von Notification Services

Aktualisiert: 14. April 2006

Das Notification Services-Modul ist entscheidend für den Betrieb von Notification Services. Dieses Modul führt die gehosteten Ereignisanbieter, den Generator und die Verteiler aus, die verwendet werden, um Ereignisse zu übermitteln, Benachrichtigungen zu generieren und die resultierenden Nachrichten zu verteilen. Das Modul wird normalerweise vom Microsoft Windows-Dienst NS$instanceName ausgeführt, kann jedoch auch von einer anderen Anwendung oder einem anderen Prozess gehostet werden.

Das Modul wird im Kontext eines Windows-Kontos ausgeführt. Wenn Sie den Windows-Dienst NS$instanceName verwenden, geben Sie das Konto, unter dem der Dienst ausgeführt wird, beim Registrieren der Instanz von Notification Services an. Wenn Sie das Modul in einer anderen Anwendung oder einem anderen Prozess hosten, müssen Sie Windows-Berechtigungen für die Anwendung oder den Prozess konfigurieren.

Windows-Berechtigungen, die für das Modul erforderlich sind

Das Konto, unter dem das Modul ausgeführt wird, muss über die folgenden Berechtigungen verfügen:

  • Lese- und Ausführungsberechtigungen im Notification Services-Ordner (%ProgramFiles%\Microsoft SQL Server\90\NotificationServices\n.n.nnn) und seinen Unterordnern. Standardmäßig haben nur Mitglieder der lokalen Gruppen Administratoren und Hauptbenutzer Zugriff auf die Dateien in diesen Ordnern. Diese Berechtigungen werden von Notification Services erteilt, wenn Sie die Instanz durch Hinzufügen des Dienstkontos zur Windows-Gruppe SQLServer2005NotificationServicesUser$ComputerName registrieren.
  • Berechtigung zum Lesen und Schreiben von Registrierungsschlüsseln in den folgenden Registrierungspfaden: HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Services\NotificationServices und HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services. Diese Berechtigung wird dem Windows-Dienstkonto erteilt, wenn Sie den Dienst beim Registrieren der Instanz erstellen.
  • Berechtigung zum Schreiben in das Windows-Anwendungsprotokoll.
  • Für Anwendungen, die einen FileSystemWatcher-Ereignisanbieter verwenden, muss der Ereignisanbieter Dateien in dem Ordner, in dem Ereignisse abgelegt werden, lesen und umbenennen können, und er muss über einen Lesezugriff auf die Ereignisschemadatei (XSD) verfügen.
  • Für Anwendungen, die zum Bereitstellen von Benachrichtigungen ein Dateiübermittlungsprotokoll verwenden, muss der Verteiler über Schreibberechtigungen in dem Ordner verfügen, in den die Benachrichtigungen geschrieben werden.
  • Für Anwendungen, die den XSLT-Inhaltsformatierer verwenden, muss der Verteiler über die Berechtigung zum Lesen der Ordner verfügen, die die XSLT-Dateien enthalten. Weitere Informationen finden Sie unter XSLT-Dateispeicherorte.

Darüber hinaus ist für das Modulkonto möglicherweise die Mitgliedschaft in der lokalen Gruppe Administratoren erforderlich. Wenn eine von der Instanz gehostete Anwendung den lokalen SMTP-Dienst (Simple Mail Transfer Protocol) von Internetinformationsdienste (IIS, Internet Information Services) zum Senden von Benachrichtigungen verwendet, muss der Verteiler diese Benachrichtigungen im Kontext eines Administrators senden.

ms172585.note(de-de,SQL.90).gifWichtig:
Das Modul muss außerdem über Berechtigungen in den von der Instanz verwendeten SQL Server-Datenbanken verfügen. Weitere Informationen finden Sie unter Konfigurieren von SQL Server-Berechtigungen für eine Instanz von Notification Services.

Windows-Dienstkontotypen

Wenn das Modul für die Instanz von Notification Services nicht in einer separaten Anwendung oder einem separaten Prozess gehostet wird, wird die Instanz als Windows-Dienst ausgeführt. Ein Windows-Dienst kann unter den folgenden Kontotypen ausgeführt werden, obwohl einige schwieriger zu verwalten sind und daher von ihrer Verwendung abgeraten wird:

  • **Ein Domänenbenutzerkonto.**Ein Domänenkonto erleichtert das Steuern des Zugriffs auf Netzwerkressourcen und Datenbanken, da Sie die genauen Berechtigungen angeben können, über die das Konto verfügen sollte. Für die optimale Steuerung der dem Dienst erteilten Berechtigungen kann der Domänenadministrator ein neues Konto für die Instanz von Notification Services erstellen.
  • Ein lokales Benutzerkonto. Sie können ein Benutzerkonto auf dem lokalen Computer erstellen und den NS$instanceName-Dienst unter diesem Konto ausführen. Das Konto verwendet das Format computer\username. Falls sich die Datenbanken auf dem gleichen Server befinden, können Sie diesem Benutzerkonto auch Datenbankberechtigungen erteilen. Wenn sich die Datenbanken auf einem Remotecomputer befinden, müssen Sie ein SQL Server-Anmeldekonto für die Instanz von Notification Services konfigurieren.
  • Das Konto NT-AUTORITÄT\LocalService. Hierbei handelt es sich um ein integriertes Konto, das in Microsoft Windows XP und Microsoft Windows Server 2003 verfügbar ist. Das Konto LocalService verfügt über die gleiche Zugriffsebene auf Ressourcen und Objekte wie Mitglieder der Gruppe Benutzer. Auf Netzwerkressourcen greift es als Nullsitzung ohne Anmeldeinformationen zu. Falls sich die Datenbanken auf dem gleichen Server befinden, können Sie diesem Konto Datenbankberechtigungen erteilen. Microsoft rät jedoch vom Verwenden des Kontos LocalService für den NS$instanceName-Dienst ab. Mehrere Dienste können dieses Konto verwenden, sodass es schwierig ist, zu steuern, welche Dienste Zugriff auf SQL Server-Datenbanken erhalten.
  • Das Konto NT-AUTORITÄT\NetworkService. Hierbei handelt es sich um ein integriertes Konto, das in Windows XP und Windows Server 2003 verfügbar ist. Microsoft rät vom Verwenden des Kontos NetworkService für den NS$instanceName-Dienst ab. Alle Dienste, die unter dem Konto NetworkService ausgeführt werden, werden beim Zugriff auf Netzwerkressourcen dem Konto domain\remotecomputername$ zugeordnet. Da mehrere Dienste dieses Konto verwenden können, ist es schwierig, zu steuern, welche Dienste Zugriff auf Netzwerkressourcen und SQL Server-Datenbanken erhalten.
  • Das Konto LocalSystem. Hierbei handelt es sich um ein integriertes Konto. Microsoft rät dringend vom Verwenden des Kontos LocalSystem für den NS$instanceName-Dienst ab, da dieses Konto über uneingeschränkten Zugriff auf alle lokalen Ressourcen verfügt. Zudem werden alle Dienste, die unter dem Konto LocalSystem ausgeführt werden, beim Zugriff auf Netzwerkressourcen dem Konto domain\remotecomputername$ zugeordnet. Da mehrere Dienste dieses Konto verwenden können, ist es schwierig, zu steuern, welche Dienste Zugriff auf Netzwerkressourcen und SQL Server-Datenbanken erhalten.

Angeben des Kontos für den Windows-Dienst

Sie legen das Windows-Konto für den Windows-Dienst NS$instanceName beim Erstellen des Dienstes fest. Sie erstellen den Dienst beim Registrieren der Instanz. Sie können das Konto durch Neuregistrieren der Instanz oder durch Ändern des Kontos im Windows-Dienste-Manager aktualisieren.

Siehe auch

Konzepte

Hosten des Notification Services-Moduls
Konfigurieren von Windows-Diensten von Notification Services
Konfigurieren von SQL Server-Berechtigungen für eine Instanz von Notification Services

Andere Ressourcen

Einrichten von Windows-Dienstkonten

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

14. April 2006

Geänderter Inhalt:
  • Der Registrierungsschlüsselpfad wurde aktualisiert.