Condividi tramite


Configurare IIS 7 per la sincronizzazione Web

Le procedure descritte in questo argomento illustrano il processo di configurazione manuale di Microsoft Internet Information Services (IIS) versione 7 e successive per l'uso con la sincronizzazione Web per la replica di tipo merge.

La configurazione di IIS 7 è il primo dei tre passaggi necessari per abilitare la sincronizzazione Web.

Per una panoramica del processo di configurazione, vedere Configurare la sincronizzazione Web.

Importante

Assicurarsi che l'applicazione usi solo .NET Framework 2.0 o versioni successive e che le versioni precedenti di .NET Framework non siano installate nel server IIS. Le versioni precedenti di .NET Framework possono causare errori, ad esempio: "Il formato di un messaggio durante la sincronizzazione Web non è valido. Assicurarsi che i componenti di replica siano configurati correttamente nel server Web".

Per usare la sincronizzazione Web, è necessario configurare IIS 7 completando i passaggi seguenti. Ogni passaggio viene descritto in dettaglio in questo argomento.

  1. Installare e configurare il listener di replica di Microsoft SQL Server nel computer che esegue IIS.

  2. Configurare Secure Sockets Layer (SSL). SSL è necessario per la comunicazione tra IIS e tutti i sottoscrittori.

  3. Configurare l'autenticazione IIS.

  4. Configurare un account e impostare le autorizzazioni per il Listener di Replicazione di SQL Server.

Installazione di SQL Server Replication Listener

La sincronizzazione Web è supportata in IIS a partire dalla versione 5.0. La Configurazione guidata sincronizzazione Web di IIS versione 5 e 6 non è disponibile con IIS versione 7.0 e successive. A partire da SQL Server 2012, per usare il componente di sincronizzazione Web nel server IIS, è necessario installare SQL Server con la replica. Ad esempio, è possibile installare l'edizione gratuita SQL Server Express.

Per installare e configurare il listener di replica di SQL Server

  1. Installare la replica di SQL Server nel computer IIS.

  2. Creare una nuova directory di file per replisapi.dll nel computer che esegue IIS. Sebbene sia possibile creare la cartella in un percorso qualsiasi, è consigliabile crearla nella cartella del disco <unità>:\Inetpub. Ad esempio, creare la directory <drive>:\Inetpub\SQLReplication.

  3. Copiare replisapi.dll dalla directory<unità>:\Programmi\Microsoft SQL Server\120\com\ alla directory di file che hai creato nel passaggio 1.

  4. Registrare replisapi.dll:

    1. Fare clic su Start, quindi scegliere Esegui. Nella casella Apri immettere cmde quindi fare clic su OK.

    2. Nella directory creata nel passaggio 1 eseguire il comando riportato di seguito:

      regsvr32 replisapi.dll

  5. Creare un nuovo sito Web per la replica oppure utilizzare un sito esistente. I componenti di replica accederanno al sito Web durante la sincronizzazione. Le procedure descritte in questo argomento presuppongono il sito Web predefinito. Per ulteriori informazioni sulla creazione di siti Web, vedere la documentazione di IIS.

  6. Creare una directory virtuale in IIS. È consigliabile creare la directory virtuale nel sito Web creato nel passaggio 4 ed eseguirne il mapping alla directory creata nel passaggio 1. È consigliabile applicare le massime restrizioni nell'assegnazione delle autorizzazioni per questa directory. È necessario selezionare almeno autorizzazioni Lettura ed Esecuzione .

    1. In Gestione Internet Information Services (IIS), nel riquadro Connessioni fare clic con il pulsante destro del mouse su Sito Web predefinito, quindi selezionare Aggiungi directory virtuale.

    2. Per Alias immettere SQLReplication.

    3. In Percorso fisico inserire <disco>:\Inetpub\SQLReplication\, quindi fare clic su OK.

  7. Configurare IIS in modo da consentire l'esecuzione di replisapi.dll.

    1. In Gestione di Internet Information Services (IIS) fare clic su Sito Web predefinito.

    2. Nel riquadro centrale fare clic su Mappature del gestore.

    3. Nel riquadro Azioni fare clic su Aggiungi mappatura modulo.

    4. Per Percorso richiesta immettere replisapi.dll.

    5. Nell'elenco a discesa Moduloselezionare IsapiModule.

    6. Per Eseguibile, immettere <disco>:\Inetpub\SQLReplication\replisapi.dll.

    7. Per Nome inserisci Replisapi.

    8. Fare clic sul pulsante Request Restrictions (Restrizioni richieste ), fare clic sulla scheda Access (Accesso ) e quindi su Execute (Esegui).

    9. Fare clic su OK per chiudere la finestra di dialogo Restrizioni richieste e quindi fare di nuovo clic su OK per chiudere la finestra di dialogo Aggiungi mapping moduli . Quando viene richiesto di consentire l'estensione ISAPI, fare clic su per aggiungere l'estensione.

    10. Verificare che Replisapi.dll sia elencato sotto i mapping dei gestori contrassegnati come Abilitato . Se si trova nell'elenco Disabilitato , fare clic con il pulsante destro del mouse sulla voce Replisapi e quindi scegliere Modifica autorizzazioni funzionalità. Selezionare la casella Esegui e quindi fare clic su OK.

Configurazione dell'autenticazione IIS

Quando i computer Sottoscrittori si connettono a IIS, è necessario che vengano autenticati da IIS per poter accedere a risorse e processi. L'autenticazione può essere applicata all'intero sito Web oppure alla directory virtuale creata.

È consigliabile usare l'autenticazione di base con SSL. SSL è obbligatorio, indipendentemente dal tipo di autenticazione usato.

È consigliabile usare l'autenticazione di base con SSL. SSL è obbligatorio, indipendentemente dal tipo di autenticazione usato.

Per configurare l'autenticazione IIS

  1. In Gestione di Internet Information Services (IIS), fare clic su Sito Web predefinito.

  2. Nel riquadro centrale fare doppio clic su Autenticazione.

  3. Fare clic con il pulsante destro del mouse su Autenticazione anonima, quindi scegliere Disabilita.

  4. Fare clic con il pulsante destro del mouse su Autenticazione di base, quindi scegliere Abilita.

Configurazione di Secure Sockets Layer

Per configurare SSL, specificare un certificato da usare nel computer che esegue IIS. La sincronizzazione Web per la replica di tipo merge supporta l'utilizzo di certificati server, ma non di certificati client. Per configurare IIS per la distribuzione, è innanzitutto necessario ottenere un certificato da un'autorità di certificazione. Per ulteriori informazioni sui certificati, vedere la documentazione di IIS.

Dopo l'installazione del certificato, è necessario associare il certificato al sito Web utilizzato nella sincronizzazione Web. Per lo sviluppo e i test, è possibile specificare un certificato autofirmato. Con IIS 7 è possibile creare un certificato e registrarlo nel computer.

La differenza tra la distribuzione per la produzione e le procedure indicate di seguito è che nei test di produzione e pre-produzione si userebbe un certificato emesso da una CA anziché da un certificato autofirmato.

Importante

Non è consigliabile un certificato autofirmato per un'installazione di produzione. I certificati autofirmati non sono sicuri. Utilizzare tali certificati solo ai fini di sviluppo e test.

Per configurare SSL, seguire questa procedura:

  1. Configurare il sito Web per richiedere SSL e ignorare i certificati client.

  2. Ottenere un certificato da una CA o creare un certificato autofirmato.

  3. Associare il certificato al sito Web per la replica.

Per richiedere la sicurezza SSL per un sito Web

  1. In Gestione Internet Information Services (IIS) espandere il nodo del server locale e quindi fare clic sul sito Web predefinito (o sul sito di sincronizzazione Web se è diverso dal sito Web predefinito).

  2. Nel riquadro centrale fare doppio clic su Impostazioni SSL.

  3. Selezionare l'opzione Richiedi SSL . In Certificati clientverificare che il pulsante Ignora sia selezionato.

Per creare un certificato autofirmato per il test

  1. In Gestione Internet Information Services (IIS) fare clic sul nodo del server locale, quindi nel riquadro centrale fare doppio clic su Certificati server.

  2. Nel riquadro Azioni fare clic su Crea Self-Signed certificato.

  3. Nella finestra di dialogo Crea Self-Signed certificato immettere un nome per il certificato e quindi fare clic su OK.

Per associare un certificato a un sito Web
  1. Nel riquadro Connessioni fare clic sul sito Web predefinito o sul sito di sincronizzazione Web, se diverso dal sito Web predefinito.

  2. Nel riquadro Azioni, fare clic su Associazioni e quindi su Aggiungi. Verrà visualizzata la finestra di dialogo Aggiungi associazione sito .

  3. Nell'elenco a discesa Tipo selezionare https. Mantenere le impostazioni predefinite per Indirizzo IP e Porta.

  4. Nell'elenco a discesa Certificato SSL selezionare il certificato creato in "Per creare un certificato autofirmato per il test", fare clic su OK e quindi fare clic su Chiudi.

Per testare il certificato
  1. In Gestione Internet Information Services (IIS) fare clic su Sito Web predefinito.

  2. Nel riquadro Azioni fare clic su Sfoglia *:443(https).

  3. Internet Explorer aprirà e visualizzerà un messaggio che indica che si è verificato un problema con il certificato di sicurezza del sito Web. Questo avviso indica che il certificato associato non è stato emesso da una CA riconosciuta e potrebbe non essere attendibile. Si tratta di un avviso previsto, quindi fare clic su Continua su questo sito Web (non consigliato).This is an expected warning, so click Continue to this website (Not recommended).

  4. Se viene richiesto di connettersi a localhost, immettere un nome utente e una password per continuare. Dovrebbe venire visualizzata la pagina predefinita del sito Web.

Impostazione delle autorizzazioni per il listener di replica di SQL Server

Quando un computer sottoscrittore si connette al computer che esegue IIS, viene autenticato mediante il tipo di autenticazione specificato durante la configurazione di IIS. Dopo l'autenticazione dell’abbonato, in IIS viene controllato se l’abbonato è autorizzato a richiamare la replica di SQL Server. Per controllare gli utenti autorizzati a richiamare le replica di SQL Server, è necessario impostare le autorizzazioni per replisapi.dll. La corretta configurazione delle autorizzazioni è fondamentale per impedire l'accesso non autorizzato alla replica di SQL Server.

Per configurare le autorizzazioni minime per l'account sotto il quale viene eseguito il Listener della replica di SQL Server, completare la procedura seguente. I passaggi descritti nella procedura seguente si applicano a Microsoft Windows Server 2008 che esegue IIS 7.0.

Oltre a eseguire i seguenti passaggi, assicurarsi che gli account necessari siano inclusi nell'elenco di accesso alla pubblicazione. Per ulteriori informazioni sul PAL, vedere Proteggi il Publisher.

Importante L'account creato in questa sezione è l'account che si connetterà al server di pubblicazione e al server di distribuzione durante la sincronizzazione. È necessario aggiungere questo account come account di accesso SQL nel server di distribuzione e di pubblicazione.

L'account usato per il listener di replica di SQL Server deve disporre delle autorizzazioni, come descritto nell'argomento Sicurezza agente di merge, nella sezione "Connettersi al server di pubblicazione o al server di distribuzione".

In breve è necessario che l'account:

  • Sii un membro dell'elenco di accesso alla pubblicazione (PAL).

  • sia mappato su un login associato a un utente nel database di pubblicazione.

  • sia mappato su un login associato a un utente nel database di distribuzione.

  • disponga delle autorizzazioni di lettura per la condivisione snapshot.

Per configurare l'account e le autorizzazioni

  1. Creare un account locale nel computer che esegue IIS:

    1. Aprire Gestione server. Dal menu Start fare clic con il pulsante destro del mouse su Computer e quindi scegliere Gestisci.

    2. In Gestione serverespandere Configurazione, quindi Utenti e gruppi locali.

    3. Fare clic con il pulsante destro del mouse su Utenti e quindi scegliere Nuovo utente.

    4. Immettere un nome utente e una password complessa. Cancella Obbligo per l'utente di cambiare la password al prossimo accesso.

    5. Fare clic su Crea e quindi su Chiudi.

  2. Aggiungere l'account al gruppo IIS_IUSRS:

    1. In Server Manager espandere Configurazione, espandere Utenti e gruppi locali e quindi fare clic su Gruppi.

    2. Fare clic con il pulsante destro del mouse IIS_IUSRS, quindi scegliere Aggiungi al gruppo.

    3. Nella finestra di dialogo Proprietà IIS_IUSRS fare clic su Aggiungi.

    4. Nella finestra di dialogo Seleziona Utenti, Computer o Gruppi, aggiungi l'account creato nel passaggio 1.

    5. Assicurarsi che nel campo Da questo percorso sia visualizzato il nome del computer locale (non di un dominio). Se questo campo non visualizza il nome del computer locale, fare clic su Percorsi. Nella finestra di dialogo Percorsi selezionare il computer locale e quindi fare clic su OK.

    6. Nella finestra di dialogo Seleziona utenti e nella finestra di dialogo Proprietà IIS_IUSRS fare clic suOK.

  3. Concedere all'account le autorizzazioni minime per la cartella contenente replisapi.dll:

    1. In Esplora risorse, fare clic con il pulsante destro del mouse sulla cartella che hai creato per replisapi.dlle quindi scegliere Proprietà.

    2. Nella scheda Sicurezza fare clic su Modifica.

    3. Nella finestra di dialogo Autorizzazioni per <nomecartella> fare clic su Aggiungi per aggiungere l'account creato nel passaggio 1.

    4. Assicurarsi che nel campo Da questo percorso sia visualizzato il nome del computer locale (non di un dominio). Se questo campo non visualizza il nome del computer locale, fare clic su Percorsi. Nella finestra di dialogo Percorsi selezionare il computer locale e quindi fare clic su OK.

    5. Verificare che all'account siano concesse soltanto le autorizzazioni Lettura, Lettura ed esecuzione e Visualizzazione contenuto cartella.

    6. Selezionare tutti gli utenti o i gruppi che non richiedono l'accesso alla directory, fare clic su Rimuovi e quindi su OK.

  4. Creare un pool di applicazioni in Gestione Internet Information Services (IIS):

    1. In Gestione Internet Information Services (IIS), nel riquadro Connessioni espandere il nodo del server locale.

    2. Fare clic con il pulsante destro del mouse su Pool di applicazioni e quindi scegliere Aggiungi pool di applicazioni.

    3. Immettere un nome per il pool di applicazioni, lasciare i valori predefiniti per i campi rimanenti e quindi fare clic su OK.

    Annotazioni

    Se si prevede di utilizzare più di due client di sincronizzazione simultanei, è necessario creare un Web garden. Per altre informazioni, vedere "Creazione di un web garden" in Configurare la sincronizzazione Web.

  5. Associare l'account al pool di applicazioni:

    1. In Internet Information Services (IIS) Manager, espandi il nodo del server locale e quindi fai clic su Pool di applicazioni.

    2. Fare clic con il pulsante destro del mouse sul pool di applicazioni creato e quindi scegliere Imposta valori predefiniti del pool di applicazioni.

    3. Nella finestra di dialogo Impostazioni predefinite del pool di applicazioni, scorrere verso il basso fino alla sezione Modello di elaborazione e quindi fare clic sul campo Identità.

    4. Fare clic sul pulsante con ellissi sul lato destro della riga Identity.

    5. Fare clic sull'opzione Account personalizzato e poi su Imposta.

    6. Nei campi Nome utente e Password immettere l'account e la password creati nel passaggio 1 e quindi fare clic su OK.

    7. Fare clic su OK per chiudere la finestra di dialogo Identità di Pool di Applicazioni e quindi fare di nuovo clic su OK per chiudere la finestra di dialogo Impostazioni Predefinite del Pool di Applicazioni.

  6. Associare il pool di applicazioni al sito Web di replica:

    1. In Gestione Internet Information Services (IIS) espandere il nodo del server locale e quindi fare clic sul sito Web predefinito (o sul sito di sincronizzazione Web se è diverso dal sito Web predefinito).

    2. Nel riquadro Azioni , in Gestisci sito Web, fare clic su Impostazioni avanzate.

    3. Nella finestra di dialogo Impostazioni avanzate fare clic sul pulsante con i puntini di sospensione a destra del pool di applicazioni.

    4. Nell'elenco a discesa Pool di applicazioni selezionare il pool di applicazioni creato nel passaggio 4 e quindi fare clic su OK.

    5. Fare di nuovo clic su OK per chiudere Impostazioni avanzate.

Test della connessione a replisapi.dll

Eseguire la sincronizzazione Web in modalità diagnostica per testare la connessione al computer che esegue IIS e verificare che il certificato SSL (Secure Sockets Layer) sia installato correttamente. Per eseguire la sincronizzazione Web in modalità diagnostica, è necessario disporre dei privilegi di amministratore sul computer che esegue IIS.

Per testare la connessione a replisapi.dll

  1. Assicurarsi che le impostazioni per la rete LAN (Local Area Network) nel Sottoscrittore siano corrette:

    1. In Microsoft Internet Explorer scegliere Opzioni Internet dal menu Strumenti.

    2. Nella scheda Connessioni fare clic su Impostazioni LAN.

    3. Se un server proxy non viene usato nella LAN, deseleziona 'Rileva automaticamente le impostazioni' e Usa un server proxy per la tua LAN.

    4. Se viene usato un server proxy, fare clic su Usa un server proxy per la RETE LAN e Ignora server proxy per gli indirizzi locali, quindi fare clic su OK.

  2. Su Sottoscrittore, in Internet Explorer, connettiti al server in modalità diagnostica apponendo ?diag all'indirizzo di replisapi.dll. Ad esempio: https://server.domain.com/directory/replisapi.dll?diag.

    Annotazioni

    Nell'esempio precedente, server.domain.com deve essere sostituito con il nome esatto indicato come Nome rilasciato a elencato nella sezione Certificati del server nel Gestore di IIS.

  3. Se il certificato specificato per IIS non viene riconosciuto dal sistema operativo Windows, viene visualizzata la finestra di dialogo Avviso di sicurezza . Questo avviso può verificarsi perché il certificato è un certificato di test o il certificato è stato emesso da un'autorità di certificazione (CA) che Windows non riconosce.

    Annotazioni

    Se questa finestra di dialogo non viene visualizzata, assicurarsi che il certificato per il server a cui si accede sia stato aggiunto all'archivio certificati nel Sottoscrittore come certificato attendibile. Per ulteriori informazioni sull'esportazione dei certificati, vedere la documentazione di IIS.

    1. Nella finestra di dialogo Avviso di sicurezza fare clic su Visualizza certificato.

    2. Nella scheda Generale della finestra di dialogo Certificato fare clic su Installa certificato.

    3. Completare la Guida all'Importazione Certificato, accettando le impostazioni predefinite.

    4. Nella finestra di dialogo Avviso di sicurezza fare clic su .

    5. Nella finestra di dialogo di conferma dell'importazione guidata dei certificati, fare clic su OK.

    6. Chiudere la finestra di dialogo Certificato .

    7. Nella finestra di dialogo Avviso di sicurezza fare clic su .

    Annotazioni

    I certificati vengono installati per gli utenti. Questo processo deve pertanto essere eseguito per ogni utente che eseguirà la sincronizzazione con IIS.

  4. Nella finestra di dialogo Connetti a <NomeServer>, specifica l'accesso e la password che il Merge Agent userà per connettersi a IIS. Queste credenziali verranno inoltre specificate nella Creazione guidata per la nuova sottoscrizione.

  5. Nella finestra di Internet Explorer denominata INFORMAZIONI di diagnostica SQL Websync verificare che il valore in ogni colonna Stato della pagina sia SUCCESS.

  6. Assicurarsi che il certificato sia installato correttamente nel Sottoscrittore:

    1. Chiudere e riaprire Internet Explorer.

    2. Connettersi al server in modalità diagnostica. Se il certificato è installato correttamente, la finestra di dialogo Avviso di sicurezza non verrà visualizzata. Se viene visualizzata la finestra di dialogo, l'agente di merge avrà esito negativo quando tenta di connettersi al computer che esegue IIS. È necessario assicurarsi che il certificato per il server a cui si accede sia stato aggiunto all'archivio certificati nel Sottoscrittore come certificato attendibile. Per ulteriori informazioni sull'esportazione dei certificati, vedere la documentazione di IIS.

Vedere anche

Sincronizzazione Web per la replica di tipo merge
Configurare la sincronizzazione Web