Share via


Scenario: Distribuzione dell'interfaccia di gestione delle sottoscrizioni su un server remoto

Nel caso di applicazioni di notifica basate su Internet, le interfacce di gestione delle sottoscrizioni vengono in genere distribuite in un server Web IIS (Internet Information Services) esistente.

In questo scenario viene illustrato come distribuire un'interfaccia di gestione delle sottoscrizioni basata su ASP.NET su un server IIS remoto. In questo scenario è necessario definire un account di dominio che verrà utilizzato dall'interfaccia di gestione delle sottoscrizioni per la connessione a Microsoft SQL Server. Nelle procedure disponibili in questo argomento vengono illustrate le modalità di creazione di questo account di accesso e di concessione delle autorizzazioni necessarie.

Prerequisiti

Prima di distribuire un'interfaccia di gestione delle sottoscrizioni basata su ASP.NET, verificare che tutti i prerequisiti siano soddisfatti:

  • Installazione di Microsoft Windows, aggiunta del componente IIS e attivazione di ASP.NET. Vedere la documentazione di Windows per istruzioni.

  • È stato creato, personalmente o dall'amministratore di dominio, un account di dominio utilizzato dall'interfaccia basata su ASP.NET. Ciò è necessario per consentire all'interfaccia sul server remoto la connessione a SQL Server utilizzando l'autenticazione di Windows. In questo scenario, l'account di dominio è denominato DOMAIN\WebApp.

    [!NOTA] È possibile utilizzare l'autenticazione di SQL Server. Tuttavia, Microsoft consiglia di utilizzare l'autenticazione di Windows.

  • L'applicazione è stata aggiunta a IIS, ma non è ancora stata configurata la protezione per l'applicazione.

  • L'istanza di Notification Services è già stata distribuita, pertanto sono già stati creati i database dell'istanza e dell'applicazione nel server di database.

  • Il protocollo di rete TCP/IP oppure Named Pipe è attivo su Motore di database. In SQL Server 2005 questi protocolli di rete sono disattivati per impostazione predefinita. Per ulteriori informazioni, vedere Configurazione superficie di attacco di SQL Server.

Procedure per il server IIS

Eseguire la procedura seguente sul server Web.

Passaggio 1: installazione dei componenti client di Notification Services

  1. Installare i componenti client di Notification Services.

    Per ulteriori informazioni sull'installazione dei componenti, vedere Installazione di SQL Server Notification Services.

Passaggio 2: registrazione dell'istanza

  1. Fare clic sul pulsante Start, scegliere Tutti i programmi, Microsoft SQL Server 2005, scegliere Notification Services e quindi fare clic su Prompt dei comandi di Notification Services per aprire una finestra del prompt dei comandi di Notification Services.

  2. Digitare il comando seguente per registrare l'istanza:

    nscontrol register -nameinstanceName-serverdatabaseServer

  3. Mantenere aperta la finestra del prompt dei comandi per eseguire la procedura successiva.

Passaggio 3: configurazione della protezione per le applicazioni basate su ASP.NET

  1. Aprire il file Machine.config. La posizione di questo file file dovrebbe corrispondere a %windir%\Microsoft.NET\Framework\vn.n.nnnn\CONFIG.

  2. Individuare l'elemento processModel. Tale elemento include diversi attributi, tra i quali userName e password.

  3. Impostare il valore di userName su DOMAIN\WebApp e il valore di password sulla password per l'account. L'elemento dovrebbe essere analogo al seguente:

    <processModel    ...    userName="DOMAIN\WebApp"    password="aspnet_password"    .../>
    
  4. Salvare il file Machine.config.

  5. Concedere all'account DOMAIN\WebApp l'autorizzazione Controllo completo per la cartella %windir%Microsoft.NET\Framework\vn.n.nnnn\Temporary ASP.NET Files.

    Per ulteriori informazioni sulla concessione di autorizzazioni per le cartelle, vedere la documentazione di Windows.

  6. Riavviare IIS per applicare le modifiche.

Procedure per il server di database

È necessario concedere autorizzazioni di database e di SQL Server per l'account DOMAIN\WebApp. Se sul server del provider di eventi non hosted sono installati componenti di workstation SQL Server, è possibile eseguire la procedura sul server.

Concessione di autorizzazioni SQL Server e di database

  1. Aprire una finestra del prompt dei comandi.

  2. Digitare il comando seguente per creare un account di accesso di SQL Server per l'account DOMAIN\WebApp:

    sqlcmd -E -S databaseServer -Q "CREATE LOGIN [DOMAIN\WebApp] FROM WINDOWS;"

  3. Digitare il comando seguente per concedere all'account DOMAIN\WebApp l'accesso al database dell'istanza e per aggiungere l'account al ruolo di database NSSubscriberAdmin:

    sqlcmd -E -SdatabaseServer-Q "USEinstanceDatabase;

    **    CREATE USER [DOMAIN\WebApp];**

    **    EXEC sp_addrolemember N'NSSubscriberAdmin', N'DOMAIN\WebApp';"**

  4. In presenza di database separati per le applicazioni, digitare il comando seguente per concedere all'account DOMAIN\WebApp l'accesso a un database dell'applicazione e per aggiungere l'account al ruolo di database NSSubscriberAdmin:

    sqlcmd -E -S databaseName -Q "USE applicationDatabase;

    **    CREATE USER [DOMAIN\WebApp];**

    **    EXEC sp_addrolemember N'NSSubscriberAdmin', N'DOMAIN\WebApp';"**

    Se l'istanza ospita più applicazioni, ripetere il passaggio per ogni database delle applicazioni.

A questo punto dovrebbe essere possibile utilizzare l'applicazione di gestione delle sottoscrizioni per gestire sottoscrittori e sottoscrizioni per l'istanza di Notification Services.

Risoluzione dei problemi

Se non è possibile gestire sottoscrittori e sottoscrizioni, controllare lo stato dell'istanza eseguendo il comando seguente dal prompt dei comandi di Notification Services:

nscontrol status-name instanceName

Verificare che la gestione dei sottoscrittori e delle sottoscrizioni sia attiva. Per ulteriori informazioni, vedere Visualizzazione dello stato delle istanze, delle applicazioni e dei componenti.

Verificare inoltre l'eventuale presenza di errori nel registro delle applicazioni di Windows. Per ulteriori informazioni, vedere Risoluzione dei problemi di Notification Services.

Vedere anche

Concetti

Distribuzione di un'istanza di Notification Services
Distribuzione di un provider di eventi non hosted

Altre risorse

Distribuzione di Notification Services

Guida in linea e informazioni

Assistenza su SQL Server 2005