Informazioni sugli account utente e di gruppo Built-In in IIS 7

di Saad Ladki

Introduzione

Nelle versioni precedenti di IIS viene creato un account locale denominato IUSR_MachineName durante l'installazione. IIS ha usato l'account IUSR_MachineName per impostazione predefinita ogni volta che è stata abilitata l'autenticazione anonima. Questa operazione è stata usata dai servizi FTP e HTTP.

C'era anche un gruppo denominato IIS_WPG, usato come contenitore per tutte le identità del pool di applicazioni. Durante l'installazione di IIS, a tutte le risorse appropriate nel sistema sono stati concessi i diritti utente corretti per il gruppo di IIS_WPG in modo che un amministratore sia necessario solo per aggiungere la propria identità a tale gruppo quando ha creato un nuovo account del pool di applicazioni.

Questo modello funzionava bene, ma presentava i suoi svantaggi: l'account IUSR_MachineName e il gruppo di IIS_WPG erano entrambi locali nel sistema in cui sono stati creati. A ogni account e gruppo all'interno di Windows viene assegnato un numero univoco denominato SID (Security Identifier) che lo distingue da altri account. Quando viene creato un ACL viene usato solo il SID. Come parte della progettazione nelle versioni precedenti di IIS, IUSR_MachineName è stato incluso nel file metabase.xml in modo che se si tenta di copiare il metabase.xml da un computer a un altro, non funzionerebbe. L'account nell'altro computer avrà un nome diverso.

Inoltre, non è stato possibile 'xcopy /o' ACL da un computer a un altro perché i SID erano diversi dal computer al computer. Una soluzione alternativa consiste nell'usare gli account di dominio, ma che richiedevano l'aggiunta di un'istanza di Active Directory all'infrastruttura. Il gruppo di IIS_WPG presenta problemi simili con i diritti utente. Se si impostano gli elenchi di controllo di accesso nel file system di un computer per IIS_WPG e si è tentato di "xcopy /o" quelli in un altro computer, l'operazione avrà esito negativo. Questa esperienza è stata migliorata in IIS 7 e versioni successive usando un account e un gruppo predefiniti.

Un account e un gruppo predefiniti sono garantiti dal sistema operativo per avere sempre un SID univoco. IIS 7 e versioni successive hanno preso ulteriormente questa operazione e hanno garantito che i nomi effettivi usati dal nuovo account e gruppo non verranno mai localizzati. Ad esempio, indipendentemente dalla lingua di Windows installata, il nome dell'account IIS sarà sempre IUSR e il nome del gruppo sarà IIS_IUSRS.

In sintesi, IIS 7 e versioni successive offrono quanto segue:

  • L'account predefinito IUSR sostituisce l'account IUSR_MachineName.
  • Il gruppo predefinito IIS_IUSRS sostituisce il gruppo di IIS_WPG.

L'account IUSR non richiede più una password perché è un account predefinito. Logicamente, è possibile considerarlo come lo stesso degli account NETWORKSERVICE o LOCALSERVICE. Sia il nuovo account IUSR che il gruppo di IIS_IUSRS vengono illustrati in modo più approfondito nelle sezioni seguenti.

Informazioni sul nuovo account IUSR

L'account IUSR sostituisce l'account IUSR_MachineName in IIS 7 e versioni successive. L'account IUSR_MachineName verrà comunque creato e usato se si installa il server compatibile con FTP 6 incluso in Windows Server 2008. Se non si installa il server FTP incluso in Windows Server 2008, questo account non verrà creato.

Questo account predefinito non richiede una password e sarà l'identità predefinita usata quando è abilitata l'autenticazione anonima. Se si esamina il file applicationHost.config verrà visualizzata la definizione seguente:

<anonymousAuthentication enabled="true" userName="IUSR" defaultLogonDomain="" />

Questo indica a IIS di usare il nuovo account predefinito per tutte le richieste di autenticazione anonima. I principali vantaggi sono i seguenti:

  • Impostare le autorizzazioni del file system per l'account IUSR usando Esplora risorse o uno dei numerosi strumenti da riga di comando.
  • Non è più necessario preoccuparsi della scadenza delle password per questo account.
  • Usare xcopy /o per copiare i file insieme alle relative informazioni di proprietà e ACL in computer diversi senza problemi.

Nota

L'account IUSR è simile a LOCALSERVICE nel modo in cui agisce in modo anonimo sulla rete. Gli account NETWORKSERVICE e LOCALSYSTEM possono fungere da identità del computer, ma l'account IUSR non può perché richiede un'elevazione dei diritti utente. Se è necessario che l'account anonimo disponga dei diritti di rete, è necessario creare un nuovo account utente e impostare manualmente il nome utente e la password, come in passato per l'autenticazione anonima.

Per concedere diritti di account anonimi sulla rete tramite Gestione IIS:

  1. Fare clic su Start, digitare INetMgr.exee quindi fare clic su Invio. Se richiesto, fare clic su Continua per elevare le autorizzazioni.
  2. Nella sezione Connessioni fare clic sul + pulsante accanto al nome del computer.
  3. In Gestione IIS fare doppio clic sul sito da amministrare.
  4. Nella visualizzazione Funzionalità fare doppio clic su Autenticazione.
  5. Selezionare Autenticazione anonima e quindi fare clic su Modifica nel riquadro Azioni .
  6. Nella finestra di dialogo Modifica credenziali di autenticazione anonima fare clic sull'opzione Utente specifico e quindi fare clic su Imposta.
  7. Nella finestra di dialogo Imposta credenziali immettere il nome utente e la password desiderati, quindi fare clic su OK.

Informazioni sul nuovo gruppo di IIS_IUSRS

Il gruppo di IIS_IUSRS sostituisce il gruppo di IIS_WPG. Questo gruppo predefinito ha accesso a tutte le risorse di file e di sistema necessarie in modo che un account, quando aggiunto a questo gruppo, possa fungere facilmente da identità del pool di applicazioni.

Come per l'account predefinito, questo gruppo predefinito risolve diversi ostacoli di distribuzione xcopy. Se si impostano le autorizzazioni per i file per il gruppo di IIS_WPG (disponibile nei sistemi IIS 6.0) e si è tentato di copiare tali file in un altro computer Windows, il SID del gruppo sarà diverso nei computer e le configurazioni del sito verranno interrotte.

Poiché il SID del gruppo in IIS 7 e versioni successive è lo stesso in tutti i sistemi che eseguono Windows Server 2008, è possibile usare "xcopy /o" per mantenere le informazioni sull'ACL e sulla proprietà durante lo spostamento dei file dal computer al computer. Ciò semplifica le distribuzioni di xcopy.

IIS 7 e versioni successive semplificano anche il processo di configurazione di un'identità del pool di applicazioni e semplificano tutte le modifiche necessarie. Quando IIS avvia un processo di lavoro, deve creare un token che verrà usato dal processo. Quando viene creato questo token, IIS aggiunge automaticamente l'appartenenza IIS_IUSRS al token dei processi di lavoro in fase di esecuzione. Gli account eseguiti come "identità del pool di applicazioni" non devono più essere parte esplicita del gruppo di IIS_IUSRS. Questa modifica ti aiuta a configurare i tuoi sistemi con meno ostacoli e rende la tua esperienza complessiva più favorevole.

Se si vuole disabilitare questa funzionalità e aggiungere manualmente account al gruppo di IIS_IUSRS, disabilitare questa nuova funzionalità impostando il valore manualGroupMembership su "true". L'esempio seguente mostra come eseguire questa operazione per defaultAppPool:

<applicationPools>
    <add name="DefaultAppPool">
        <processModel manualGroupMembership="true" />
    </add>
</applicationPools >