Anleitung: Bereitstellung der Schnittstelle der Abonnementverwaltung auf einem Remoteserver
Für internetbasierte Benachrichtigungsanwendungen stellen Sie die Schnittstellen der Abonnementverwaltung normalerweise auf einem vorhandenen Webserver mit Internetinformationsdienste (Internet Information Services, IIS) bereit.
Dieses Szenario zeigt, wie eine ASP.NET-basierte Schnittstelle der Abonnementverwaltung auf einem Remoteserver mit IIS bereitgestellt wird. Für dieses Szenario ist ein Domänenkonto erforderlich, unter dem die Schnittstelle der Abonnementverwaltung eine Verbindung mit Microsoft SQL Server herstellt. Die Verfahren in diesem Thema beschreiben, wie Sie dieses Anmeldekonto erstellen und die erforderlichen Berechtigungen erteilen.
Voraussetzungen
Überprüfen Sie vor dem Bereitstellen einer ASP.NET-basierten Schnittstelle der Abonnementverwaltung, ob alle folgenden Voraussetzungen erfüllt sind:
- Sie haben Microsoft Windows installiert, die IIS-Komponente hinzugefügt und ASP.NET aktiviert. Anweisungen hierzu finden Sie in der Windows-Dokumentation.
- Sie (oder der Domänenadministrator) haben ein Domänenkonto erstellt, das von der ASP.NET-basierten Schnittstelle verwendet wird. Dies ist erforderlich, um der Schnittstelle auf dem Remoteserver das Herstellen einer Verbindung mit SQL Server mithilfe der Windows-Authentifizierung zu ermöglichen. In dieser Anleitung hat das Domänenkonto den Namen DOMAIN\WebApp.
Hinweis: Sie können die SQL Server-Authentifizierung verwenden. Microsoft empfiehlt jedoch die Windows-Authentifizierung. - Sie haben IIS die Anwendung hinzugefügt, haben jedoch noch nicht die Sicherheit für die Anwendung konfiguriert.
- Sie haben bereits die Instanz von Notification Services bereitgestellt, wodurch die Instanz- und Anwendungsdatenbanken auf dem Datenbankserver erstellt werden.
- In Datenbankmodul ist TCP/IP oder das Named Pipes-Netzwerkprotokoll aktiviert. Diese Netzwerkprotokolle sind in SQL Server 2005 standardmäßig deaktiviert. Weitere Informationen finden Sie unter SQL Server-Oberflächenkonfiguration.
Aufgaben auf dem IIS-Server
Führen Sie die folgenden Schritte auf dem Webserver aus.
Schritt 1: Installieren der Notification Services-Clientkomponenten
Installieren Sie die Notification Services-Clientkomponenten.
Weitere Informationen zum Installieren von Komponenten finden Sie unter Installation von SQL Server Notification Services.
Schritt 2: Registrieren der Instanz
Zeigen Sie im Menü Start auf Alle Programme, auf Microsoft SQL Server 2005, auf Notification Services, und klicken Sie dann auf Notification Services-Eingabeaufforderung, um ein Notification Services-Eingabeaufforderungsfenster zu öffnen.
Geben Sie den folgenden Befehl ein, um die Instanz zu registrieren:
nscontrol register -nameinstanceName-serverdatabaseServer
Lassen Sie das Eingabeaufforderungsfenster für das nächste Verfahren geöffnet.
Schritt 3: Konfigurieren der Sicherheit für ASP.NET-basierte Anwendungen
Öffnen Sie die Datei Machine.config. Diese Datei sollte sich unter %windir%\Microsoft.NET\Framework\vn.n.nnnn\CONFIG befinden.
Suchen Sie das processModel-Element. Dieses Element besitzt mehrere Attribute, unter anderem userName und password.
Legen Sie den userName-Wert auf DOMAIN\WebApp und den password-Wert auf das Kennwort für dieses Konto fest. Das Element sollte folgendermaßen aussehen:
<processModel ... userName="DOMAIN\WebApp" password="aspnet_password" ... />
Speichern Sie die Datei Machine.config.
Erteilen Sie dem Konto DOMAIN\WebApp Vollzugriff auf den Ordner %windir%Microsoft.NET\Framework\vn.n.nnnn\Temporary ASP.NET Files.
Weitere Informationen zum Erteilen von Berechtigungen für Ordner finden Sie in der Windows-Dokumentation.
Starten Sie IIS neu, um die Änderungen zu übernehmen.
Aufgaben auf dem Datenbankserver
Sie müssen dem Konto DOMAIN\WebApp SQL Server- und Datenbankberechtigungen erteilen. Wenn auf dem Server des nicht gehosteten Ereignisanbieters SQL Server-Arbeitsstationskomponenten installiert sind, können Sie die Schritte auf diesem Server ausführen.
Erteilen von SQL Server- und Datenbankberechtigungen
Öffnen Sie ein Eingabeaufforderungsfenster.
Geben Sie den folgenden Befehl ein, um eine SQL Server-Anmeldung für das Konto DOMAIN\WebApp zu erstellen:
sqlcmd -E -S databaseServer -Q "CREATE LOGIN [DOMAIN\WebApp] FROM WINDOWS;"
Geben Sie den folgenden Befehl ein, um dem Konto DOMAIN\WebApp Zugriff auf die Instanzdatenbank zu gewähren und das Konto der NSSubscriberAdmin-Datenbankrolle hinzuzufügen:
sqlcmd -E -SdatabaseServer-Q "USEinstanceDatabase;
** CREATE USER [DOMAIN\WebApp];**
** EXEC sp_addrolemember N'NSSubscriberAdmin', N'DOMAIN\WebApp';"**
Falls Sie über separate Datenbanken für Anwendungen verfügen, geben Sie den folgenden Befehl ein, um dem Konto DOMAIN\WebApp Zugriff auf eine Anwendungsdatenbank zu gewähren und das Konto der NSSubscriberAdmin-Datenbankrolle hinzuzufügen:
sqlcmd -E -S databaseName -Q "USE applicationDatabase;
** CREATE USER [DOMAIN\WebApp];**
** EXEC sp_addrolemember N'NSSubscriberAdmin', N'DOMAIN\WebApp';"**
Falls die Instanz mehrere Anwendungen hostet, wiederholen Sie diesen Schritt für jede Anwendungsdatenbank.
Sie sollten jetzt in der Lage sein, mit der Abonnementverwaltungsanwendung Abonnenten und Abonnements für die Instanz von Notification Services zu verwalten.
Problembehandlung
Wenn Sie Abonnenten und Abonnements nicht verwalten können, überprüfen Sie den Status der Instanz, indem Sie den folgenden Befehl an der Eingabeaufforderung von Notification Services ausführen:
nscontrol status-name instanceName
Überprüfen Sie, ob die Abonnenten- und die Abonnementverwaltung aktiviert sind. Weitere Informationen finden Sie unter Anzeigen des Status von Instanzen, Anwendungen und Komponenten.
Überprüfen Sie außerdem das Windows-Anwendungsprotokoll auf Fehler. Weitere Informationen finden Sie unter Problembehandlung bei Notification Services.
Siehe auch
Konzepte
Bereitstellen einer Notification Services-Instanz
Bereitstellen eines nicht gehosteten Ereignisanbieters
Andere Ressourcen
Bereitstellen von Notification Services