Configurare il gestore della distribuzione Web

di Faith A

Questa guida offre una panoramica di base dei passaggi per configurare il gestore distribuzione Web nel server ospitato e testare che un utente può distribuire applicazioni in un sito Web. Questa configurazione usa le informazioni contenute in questo documento per installare lo strumento di distribuzione Web in un nuovo server e configurare le impostazioni consigliate.

Prerequisiti

Questa guida richiede i prerequisiti seguenti:

  • .NET Framework 2.0 SP1 o versione successiva
  • Strumento di distribuzione Web 1.0 o 1.1
  • IIS 7 o versione successiva con il servizio gestione Web (WMSvc) installato

Nota: se lo strumento di distribuzione Web non è già stato installato, vedere Installazione dello strumento di distribuzione Web.

Informazioni sul gestore della distribuzione Web

Il gestore è integrato con il Servizio gestione Web (WMSVC) fornito con IIS 7.0 in Windows Server 2008 e IIS 7.5 in Windows 2008 R2.

In primo luogo, è necessario creare un account (un utente di Gestione IIS o un account di Windows) per l'utente. Per altre informazioni sulla creazione di account utente di Gestione IIS, vedere Configuring Remote Amministrazione istration and Feature Delegation in IIS.For more information about creating IIS Manager user accounts, see Configuring Remote Amministrazione istration and Feature Delegation in IIS.

In secondo luogo, l'utente deve essere autorizzato a connettersi al proprio sito Web tramite WMSVC. È possibile usare la funzionalità Autorizzazioni gestione IIS in Gestione IIS per concedere agli utenti il diritto di connettersi in remoto ai propri siti Web.

In terzo luogo, un utente deve anche essere autorizzato a eseguire distribuzioni tramite lo strumento di distribuzione Web. È possibile utilizzare la funzionalità di delega del servizio di gestione in Gestione IIS per creare regole di delega che consentono agli utenti di eseguire distribuzioni nei siti Web e a nessun altro utente.

Il diagramma seguente illustra come un utente sia connesso e autorizzato da WMSVC, prima che la richiesta di distribuzione venga instradata al gestore e autorizzata rispetto alle regole del gestore. Questa guida rapida consente di configurare le regole necessarie per consentire a un utente di distribuire applicazioni IIS con contenuto, impostare le autorizzazioni per i file e distribuire i database.

Diagramma del modo in cui un utente è prima connesso a un autorizzato da W M S V C prima che la richiesta di distribuzione venga instradata al gestore e autorizzata in base alle regole del gestore.

Parte 1: Configurare le autorizzazioni di Gestione IIS e WMSVC

  1. Installare IIS e il servizio gestione Web nel server Windows Server 2008.
  2. Configurare WMSVC in modo che le connessioni remote siano consentite.
    a. Apri Gestione IIS.
    b. Selezionare il nodo Server.
    c. In Visualizzazione funzionalità del server fare doppio clic sull'icona servizio di gestione.
    d. Assicurarsi che la casella di controllo Abilita connessioni remote sia selezionata. Se la casella di controllo non è selezionata e disattivata, usare il riquadro Azioni per arrestare il servizio WMSvc. In questo modo sarà possibile selezionare la casella di controllo.
    e. Nel riquadro Azioni a destra fare clic su Avvia. La casella di controllo Abilita connessioni remote verrà selezionata e disattivata.
  3. Assegnare all'account con cui WMSvc è in esecuzione (ad esempio, servizio locale) autorizzazioni di controllo completo per la directory del cliente.
  4. Dopo aver creato un sito Web per l'utente, consentire all'utente di accedere al proprio sito Web.
    a. Apri Gestione IIS. b. Selezionare il sito Web che l'utente gestirà in remoto.
    c. In Visualizzazione funzionalità fare doppio clic sull'icona Autorizzazioni di Gestione IIS. d. Nel riquadro Azioni della pagina Autorizzazioni di Gestione IIS fare clic su Consenti utente.
    e. Nella finestra di dialogo Consenti utente selezionare il tipo di utente (Windows o Gestione IIS), quindi fare clic su Seleziona per scegliere l'account dell'utente.
    f. Fare clic su OK per chiudere la finestra di dialogo Consenti utente .

Per altre informazioni sugli account utente di Gestione IIS, vedere Consentire a un account utente di Gestione IIS di Connessione a un sito o a un'applicazione (IIS 7).

Parte 2: Creare regole di delega per gli utenti di Distribuzione Web

  1. Se non è ancora stato fatto, scaricare lo strumento Distribuzione Web e installarlo nel server Web.
  2. Creare regole di delega per la funzionalità distribuzione Web (provider) che si vuole consentire agli utenti di avere. Per consentire a un utente di distribuire applicazioni e contenuti nel proprio sito Web:
    a. Apri Gestione IIS.
    b. Selezionare il nodo Server.
    c. In Visualizzazione funzionalità del server fare doppio clic sull'icona delega del servizio di gestione.
    Screenshot della visualizzazione Funzionalità di I S Manager. Icona Delega del servizio di gestione evidenziata.
    d. Nel riquadro Azioni a destra fare clic su Aggiungi regola...Screenshot del riquadro Azioni nella pagina Delega del servizio di gestione. Selezionare Modello di regola evidenziato.
    e. Selezionare il modello Deploy Applications with Content rule (Distribuisci applicazioni con regola contenuto ). Questo modello crea una regola che consente a qualsiasi utente autorizzato WMSVC di usare i provider contentPath e iisApp di Distribuzione Web per distribuire le applicazioni nell'ambito utente.
    Screenshot della finestra di dialogo Seleziona modello di regola. Deploy Applications with Content (Distribuisci applicazioni con contenuto) è evidenziato.
    f. Fare clic su OK per aprire il modello.
    g. Fare clic su OK per creare la regola.
    h. Nella finestra di dialogo Aggiungi utente a regola digitare un asterisco (*). Ciò consentirà a ogni utente di distribuire le applicazioni nell'ambito utente.

NOTA: se si vuole eseguire la sincronizzazione solo amministratore, passare alla pagina Delega del servizio di gestione. Nel riquadro Azioni fare clic su Modifica Impostazioni funzionalità e quindi selezionare Consenti agli amministratori di ignorare le regole.

Contrassegnare cartelle come regola delle applicazioni

  1. Per consentire a ogni utente di creare un'applicazione all'interno del proprio sito Web:
    a. Fare clic su Aggiungi regola... b. Selezionare il modello di regola Contrassegna cartelle come applicazioni . Questo modello consente a tutti gli utenti autorizzati WMSVC di usare il provider createApp di Distribuzione Web per creare applicazioni all'interno dell'ambito utente. Le applicazioni erediteranno tutte le impostazioni dall'elemento padre, incluso il pool di applicazioni. c. Fare clic su OK per aprire il modello.
    d. Nella sezione RunAs selezionare SpecificUser come Tipo di identità e fare clic sul pulsante Imposta per specificare un account utente che eseguirà questa operazione. Per consentire il funzionamento di questa regola, la regola deve essere eseguita come utente che può accedere alla scrittura nel file applicationHost.config. È consigliabile creare un account (ad esempio, "CreateAppUser") che non si trova nel gruppo Amministrazione istrators e concedergli solo le autorizzazioni minime necessarie. A questo scopo, è necessario:

    • Creare un account utente.
    • Concedere l'autorizzazione di lettura a %windir%\system32\inetsrv\config.
    • Concedere l'autorizzazione di modifica a %windir%\system32\inetsrv\config\applicationHost.config.
  2. Nella finestra di dialogo Aggiungi utente a regola digitare un asterisco (*). Ciò consentirà a ogni utente di creare applicazioni all'interno del proprio sito Web.

Distribuire la regola dei database

  1. Per consentire agli utenti di distribuire i database nei siti Web:
    a. Fare clic su Aggiungi regola ... b. Selezionare il modello di regola Distribuisci database . Questo modello consente a qualsiasi utente autorizzato WMSVC (come impostato nella parte 1) di distribuire i database nei server di database SQL. c. Fare clic su OK per aprire il modello.
    d. Aggiungere un percorso per autorizzare, ad esempio Server=Server1, per consentire a chiunque di eseguire la distribuzione in questo server usando le credenziali SQL o Server=Server1; Database={userName}_db1 per limitare i database specifici che corrispondono al nome utente.
    e. Fare clic su OK per creare la regola.
  2. Nella finestra di dialogo Aggiungi utente a regola digitare un asterisco (*). Ciò consentirà a ogni utente di distribuire i database nel proprio sito Web.

Impostare la regola delle autorizzazioni

  1. Per consentire a ogni utente di distribuire applicazioni e contenuti nel proprio sito Web:
    a. Fare clic su Seleziona modello di regola... b. Selezionare il modello di regola Imposta autorizzazioni . Questo modello consente a qualsiasi utente autorizzato WMSVC di impostare elenchi di controllo di accesso nel file system. c. Fare clic su OK per aprire il modello.
    d. Fare clic su OK per creare la regola.
  2. Nella finestra di dialogo Aggiungi utente a regola digitare un asterisco (*). Ciò consentirà a ogni utente di distribuire applicazioni e contenuti all'interno del proprio sito Web.

Facoltativamente, abilitare la traccia per WMSvc

Per abilitare la traccia per WMSvc, vedere Configurazione della traccia del servizio di gestione Web. I log di traccia vengono archiviati in %systemdrive%\inetpub\logs\wmsvc\tracinglogfiles\w3svc1.

Parte 3: Testare l'Connessione dell'utente nel sito Web

  1. Scaricare e installare lo strumento di distribuzione Web in un computer client in cui è installato Gestione remota IIS oppure usare il server locale. È consigliabile testare prima il server locale per isolare eventuali problemi causati da impostazioni di rete, firewall o proxy.
  2. Testare la connessione al sito Web dell'utente usando le credenziali create per l'utente:
    a. Apri Gestione IIS.
    b. Fare clic con il pulsante destro del mouse sul nodo Pagina iniziale.
    c. Selezionare Connessione a un sito... (Nota: non selezionare Connessione a un server )
    d. Nella casella di testo Nome server immettere localhost.
    e. Nella casella di testo Nome sito immettere il nome del sito Web dell'utente abilitato per la gestione remota.
    f. Fare clic su Avanti.
    g. Nella casella di testo Nome utente immettere l'utente autorizzato per il sito Web.
    h. Nella casella di testo Password immettere la password dell'utente.
    i. Fare clic su Avanti per completare la connessione. Potrebbe essere richiesto di considerare attendibile il certificato se si usa un certificato non attendibile o autofirmato. Nell'angolo inferiore destro di Gestione IIS verrà visualizzato il nuovo stato di connessione, ad esempio localhost 8172 come SampleUser.
  3. Creare un pacchetto di applicazione rapido per verificare che le regole di autorizzazione funzionino:
    a. Nel riquadro Azioni a destra fare clic su Esporta applicazione...
    b. Verrà avviata la procedura guidata Esporta applicazione , fare clic su Avanti in tutte le schermate per accettare le impostazioni predefinite e creare un pacchetto.
  4. Dopo aver creato un pacchetto, verificare che sia possibile installarlo:
    a. Nel riquadro Azioni fare clic su Importa applicazione...
    b. Fare clic su Avanti. c. Nella pagina Parametri modificare il nome dell'applicazione in un elemento che non esiste già nel sito Web per verificare che l'utente possa creare applicazioni.
    d. Completare la procedura guidata.
  5. Infine, è necessario scaricare un pacchetto dell'applicazione per installare un'applicazione in questo sito Web per verificare che il database e altre opzioni funzionino.

Risoluzione dei problemi

Esistono alcuni problemi comuni che possono verificarsi durante le distribuzioni:

L'utente riceve un errore 401 non autorizzato durante il tentativo di connessione a un sito Web.

  • Cause: questo errore proviene da WMSVC ed è in genere un errore con nome utente/password o perché l'utente non ha accesso al sito Web.
  • Risoluzione: verificare il nome utente/password e che l'utente abbia accesso al sito Web.

L'utente riceve un errore del server durante il tentativo di importare o esportare un'applicazione.

  • Cause: questo errore proviene dal gestore distribuzione Web ed è in genere un problema con le regole di distribuzione. Poiché l'utente è connesso correttamente, non si tratta di un problema con WMSVC. Una regola di distribuzione può avere un errore di digitazione, l'utente che esegue la distribuzione potrebbe non essere autorizzato o l'identità runAs potrebbe non avere accesso.

  • Risoluzione(s): aprire i log di traccia in %systemdrive%\inetpub\logs\wmsvc\tracinglogfiles\w3svc1 e vedere quale regola non riesce ad autorizzare.

    • Cercare i log che contengono errori, ad esempio "Dettagli: Nessuna regola trovata che potrebbe autorizzare l'utente 'server1\siteowner', provider 'appPoolConfig', operazione 'Read', percorso 'DefaultAppPool'". In questo caso, il provider appPoolConfig non è autorizzato e l'utente ha tentato di aggiungere un provider che non è autorizzato ad aggiungere.
    • Un altro errore comune è se l'utente RunAs usato per creare app non ha accesso appropriato alla configurazione. In questo caso, Procmon è uno strumento utile per determinare la provenienza di un errore di accesso negato.

Riepilogo

Questa guida illustra come configurare WMSVC e il gestore di distribuzione per consentire agli utenti di gestire le applicazioni Web e descrive i passaggi per usare Gestione IIS per creare e installare un pacchetto per verificare che le regole di delega funzionino.