Come configurare l'identitÓ del processo per l'account ASPNET in ASP.NET 1.1 quando si utilizza la modalitÓ di isolamento di IIS 5 in IIS 6.0 in Windows Server 2003

Traduzione articoli Traduzione articoli
Identificativo articolo: 895967 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

questo articolo viene descritto come configurare l'identitÓ del processo per l'account ASPNET. ╚ possibile utilizzare questa configurazione per eseguire le operazioni che potrebbero non funzionare come previsto in un'installazione predefinita.

Viene descritto come eseguire le operazioni seguenti:
  • configurare l'identitÓ del processo nel codice.
  • utilizzare Access Control Lists per concedere scrivere autorizzazioni per files.
  • connessione a Microsoft SQL Server e ai database Microsoft Access utilizzando l'account ASPNET.
  • utilizzare l'account ASPNET in un controller di dominio.
articolo spiega inoltre come utilizzare i contatori delle prestazioni, il debugger e tecnologie di Microsoft, ad esempio Strumentazione gestione Windows (WMI) e il servizio directory Active Directory. Inoltre, in questo articolo vengono descritti problema che potrebbe verificarsi se Ŕ possibile disinstallare o reinstallare ASP.NET.

Sebbene in questo articolo viene descritto come configurare l'account ASPNET per disporre di autorizzazioni e diritti utente elevati, i diritti utente dell'account ASPNET e di autorizzazioni predefinite sono adatte per la maggior parte delle applicazioni Web.

INTRODUZIONE

In questo articolo viene illustrato come configurare l'identitÓ del processo per l'account ASPNET in Microsoft ASP.NET 1.1, quando si utilizza modalitÓ di isolamento di Microsoft Internet Information Services (IIS) 5 in IIS 6.0 su un computer che esegue Microsoft Windows Server 2003.

note
  • Windows Server 2003 utilizza solo l'account ASPNET per la modalitÓ di isolamento di IIS 5.
  • La modalitÓ di isolamento di IIS 5 Ŕ una funzionalitÓ di compatibilitÓ. Per impostazione predefinita, questa funzionalitÓ Ŕ installata ma non attivata, quando si installa IIS 6.0.
In Microsoft Windows Server 2003 in un'installazione predefinita di ASP.NET codice delle applicazioni Web viene eseguito in un processo di lavoro. Se si utilizza la modalitÓ di isolamento processo di lavoro, tutte le applicazioni basate su Windows sono basate su Microsoft .NET Framework eseguite in un processo di lavoro w3wp.exe in IIS 6.0.

Nota Quando le applicazioni Windows viene eseguito nel processo di lavoro w3wp.exe, l'identitÓ del processo di impostazione predefinita Ŕ NetworkService. ╚ possibile configurare l'identitÓ del processo predefinito a livello di pool di applicazione.

In IIS 5, il processo di lavoro di aspnet_wp.exe viene eseguito con l'account ASPNET locale. Nelle versioni beta di ASP.NET, l'identitÓ del processo di lavoro Aspnet_wp.exe utilizzata l'account di sistema. L'account di sistema Ŕ un account amministrativo del computer locale. Questo account include molti autorizzazioni e diritti utente sul computer. Per impostazione predefinita, il processo di lavoro utilizza l'account ASPNET nella versione di ASP.NET. Questa configurazione consente di creare un'installazione predefinita con meno privilegi. L'account ASPNET dispone di un numero minore di autorizzazioni e diritti utente. Tuttavia, l'account ASPNET Ŕ ancora adatto per la maggior parte delle applicazioni Web.

Informazioni

IIS 6.0 modalitÓ di isolamento processo di lavoro

Quando si utilizza la modalitÓ di isolamento processo di lavoro in IIS 6.0, Ŕ possibile configurare l'identitÓ di processo predefinito per il processo di lavoro. Per ulteriori informazioni sugli account di Windows predefiniti e i privilegi di predefinito sono associati a ciascun account, visitare il sito di Web di Microsoft:
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/3648346f-e4f5-474b-86c7-5a86e85fa1ff.mspx

ModalitÓ di isolamento di IIS 5

In IIS 6, l'account di utente ASPNET predefinito Ŕ utilizzato per eseguire il processo di lavoro di ASP.NET in modalitÓ isolamento IIS 5.0.

IdentitÓ del processo

Quando IIS Ŕ in esecuzione in modalitÓ di isolamento di IIS 5, Ŕ possibile configurare l'identitÓ del processo nella sezione processModel del file Machine.config.

Nota Quando ASP.NET Ŕ in esecuzione nella modalitÓ di isolamento processo di lavoro di IIS 6.0, le impostazioni nella sezione processModel vengono ignorate. Per configurare l'identitÓ del processo, il riciclo o altri valori del modello di processo, utilizzare Gestione IIS per configurare il processo di lavoro IIS per l'applicazione.

Il file Machine.config si trova nella seguente cartella:
%systemroot%\WINDOWS\Microsoft.NET\Framework\ Version \Config
Nota Version rappresenta la versione di .NET Framework.

L'attributo userName e l'attributo password consente di controllare l'identitÓ del processo. I valori predefiniti per questi attributi sono le seguenti operazioni.
processModel userName="machine" password="AutoGenerate"/
Il valore di computer e il valore AutoGenerate indicare a ASP.NET di utilizzare l'account ASPNET incorporato. Inoltre, questi valori indicare a ASP.NET di utilizzare una password casuale crittograficamente sicura. Questa password viene archiviata nel locale protezione autoritÓ LSA Local Security (Authority) per l'account ASPNET.

Se si desidera utilizzare un processo che dispone di ulteriori autorizzazioni e diritti utente, Ŕ possibile impostare l'attributo userName al sistema . Quando si utilizza l'account di sistema, il processo di lavoro ASP.NET viene eseguito utilizzando la stessa identitÓ il processo Inetinfo.exe.

Per impostazione predefinita, il processo Inetinfo.exe viene eseguito come identitÓ System. Quando si configura il processo di lavoro ASP.NET per l'utilizzo identitÓ System, Ŕ possibile accedere il processo di lavoro di ASP.NET di maggior parte delle risorse del computer locale. In un computer in cui Ŕ in esecuzione Windows Server 2003, l'account di sistema dispone di autorizzazioni stessi e i diritti utente come account del computer. Di conseguenza, l'account di sistema pu˛ accedere alle risorse stesso di rete come account del computer.

Per configurare il processo venga eseguito come identitÓ System, Ŕ necessario modificare l'attributo userName nella sezione processModel al seguente.
processModel userName="SYSTEM" password="AutoGenerate"/

Autorizzazioni predefinite per l'account ASPNET

Quando si installa ASP.NET, l'account ASPNET viene creato come account locale. L'account ASPNET appartiene solo al gruppo di utenti del computer. L'account ASPNET dispone di tutti i autorizzazioni e diritti utente sono associati al gruppo Users. Di conseguenza, l'account ASPNET pu˛ accedere a tutte le risorse a cui al gruppo Users Ŕ concesso l'accesso.

Per ulteriori informazioni sulle autorizzazioni predefinite e i diritti utente in un server appena installato che esegue IIS 6.0, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
812614Diritti di utente per IIS 6.0 e di autorizzazioni predefinito
Nota Per impostazione predefinita, l'account ASPNET non dispone i diritti utente per eseguire alcune delle operazioni descritte in questo articolo e di autorizzazioni corretti.

Accesso alle risorse

Nelle sezioni riportate di seguito viene descritto come utilizzare le risorse diverse. ╚ possibile accedere molte di queste risorse localmente se si attiva la rappresentazione e se si concede l'account rappresentato l'accesso alla risorsa. Tuttavia, la rappresentazione spesso non funziona quando si tenta di accedere alle risorse remote a meno che l'applicazione utilizza un meccanismo di autenticazione che pu˛ essere delegato, ad esempio Kerberos o l'autenticazione di base.

Risorse del file

Per abilitare un'applicazione Ŕ in esecuzione con l'account ASPNET per scrivere i file, un amministratore pu˛ concedere autorizzazioni di scrittura per l'account ASPNET. L'amministratore pu˛ concedere autorizzazioni di scrittura per un singolo file o per gerarchie di cartelle.

Per modificare l'elenco ACL per un file, attenersi alla seguente procedura:
  1. Aprire Esplora risorse.
  2. Consente di selezionare il file o la cartella per cui si desidera modificare le autorizzazioni.
  3. Nel menu file , fare clic su ProprietÓ .
  4. Fare clic sulla scheda protezione . Quindi per selezionare le caselle di controllo per le autorizzazioni che si desidera.
╚ inoltre possibile utilizzare uno script o lo strumento della riga di comando cacls.exe per modificare le autorizzazioni per un file.

Rappresentazione

Con la rappresentazione, l'applicazione viene eseguita nel contesto di protezione dell'entitÓ richiesta, come un utente autenticato o come un utente anonimo. Per impostazione predefinita, la rappresentazione Ŕ facoltativa e non Ŕ attivata in ASP.NET. Per attivare la rappresentazione a livello del computer o a livello dell'applicazione, Ŕ necessario aggiungere la seguente direttiva di configurazione nella sezione <system.web> del file Machine.config o nel file Web.config.
<identity impersonate="true"/>

Database

Applicazioni che utilizzano l'autenticazione di SQL per connettersi a un database non sono in genere influenzate utilizzando l'account ASPNET. Applicazioni che utilizzano l'autenticazione integrata e la rappresentazione sono anche non in genere influenzate. Tuttavia, se un'applicazione non Ŕ una rappresentazione e utilizza l'autenticazione integrata, Ŕ necessario concedere accesso al database per l'account ASPNET.

Non Ŕ possibile utilizzare l'account ASPNET quando si tenta di effettuare l'autenticazione a Microsoft SQL Server utilizzando l'autenticazione integrata tramite named pipe. Tuttavia, Ŕ possibile utilizzare l'account ASPNET insieme con l'autenticazione integrata mediante il trasporto TCP (Transmission Control Protocol).

Se un'applicazione Ŕ necessario utilizzare un database di Microsoft Access, l'account ASPNET deve essere in grado di scrivere il file di database. Gli amministratori devono modificare le autorizzazioni file per consentire l'utilizzo.

Il registro applicazione

Le applicazioni che devono scrivono nel log dell'applicazione possono farlo quando questi vengono eseguiti con l'account ASPNET. Se un'applicazione Ŕ necessario creare una nuova categoria di log eventi, l'applicazione deve creare una chiave di registro nell'hive
HKEY_LOCAL_MACHINE
del Registro di sistema. Per impostazione predefinita, l'account ASPNET Impossibile creare la una chiave del Registro di sistema nell'hive
HKEY_LOCAL_MACHINE
del Registro di sistema.

Per creare la categoria in fase di esecuzione, Ŕ necessario attivare la rappresentazione. Quindi, Ŕ necessario rappresentare un account dotato di pi¨ autorizzazioni e diritti utente. In alternativa, un amministratore pu˛ creare la categoria. Quindi, l'applicazione pu˛ scrivere alla categoria in fase di esecuzione.

Se le applicazioni Ŕ necessario creare nuove categorie di log eventi, Ŕ possibile creare le categorie al momento dell'installazione. Dopo aver creato la categoria, l'account ASPNET pu˛ scrivere nel log dell'applicazione.

Lo spazio dei nomi System.DirectoryServices e il servizio di directory di Active Directory

Se un'applicazione Web deve accedere il servizio directory Active Directory, l'applicazione Ŕ possibile utilizzare la rappresentazione in un ambiente che supporta la delega. In alternativa, l'applicazione pu˛ fornire credenziali esplicite al costruttore DirectoryEntry nello spazio dei nomi System.DirectoryServices per accedere al servizio directory di Active Directory. Se l'applicazione utilizza le credenziali esplicite, l'applicazione deve memorizzare le credenziali in modo appropriato mediante una tecnica quali stringhe di costruzione COM + o utilizzando l'API di protezione Windows dei dati.

Contatori delle prestazioni

L'account ASPNET dispone di autorizzazioni sufficienti scrivere i dati dei contatori delle prestazioni. Tuttavia, l'account ASPNET non dispone di autorizzazioni sufficienti leggere dati contatore delle prestazioni. Se l'applicazione deve leggere i dati dei contatori delle prestazioni o Ŕ necessario creare categorie di contatori delle prestazioni, Ŕ necessario concedere autorizzazioni di amministratore o Power User autorizzazioni all'account ASPNET.

Se un'applicazione necessario creare categorie di contatori delle prestazioni di nuova, Ŕ possibile creare le categorie al momento dell'installazione. Dopo aver creato le categorie, l'account ASPNET pu˛ scrivere nei contatori.

╚ possibile utilizzare lo strumento Performance Monitor (Perfmon.exe) per monitorare contatori di prestazioni di ASP.NET quando si utilizza l'account ASPNET. Per monitorare contatori di prestazioni ASP.NET in Windows Server 2003, aggiungere l'identitÓ di processo al gruppo IIS_WPG.

Server COM out-of-process di

Le applicazioni che devono avviare server COM out-of-process di quando vengono eseguiti come account ASPNET possono concedere autorizzazioni di avvio all'account in modo specifico utilizzando lo strumento Dcomcnfg.exe.

Problemi del debugger

Per impostazione predefinita, non Ŕ possibile passaggio in una chiamata del servizio XML Web da un'applicazione client. Per un passaggio in una chiamata del servizio Web XML, Ŕ necessario aggiungere l'account ASPNET al gruppo utenti debugger nel computer in cui Ŕ in esecuzione il servizio Web XML.

IdentitÓ fissa

In servizi COM +, Ŕ possibile eseguire codice utilizzando un'identitÓ fissa. ╚ possibile utilizzare la classe di ServicedComponent di spazio dei nomi System.EnterpriseServices per scrivere i componenti di codice gestito che utilizzano servizi COM +. ╚ possibile eseguire con privilegi funzionalitÓ il wrapping in una classe derivata dalla classe ServicedComponent . Quindi, Ŕ possibile eseguire questa classe come un'applicazione server COM + che dispone di un'identitÓ configurata.

File code-behind in condivisioni UNC

In ASP.NET, Ŕ possibile utilizzare diversi metodi per sviluppare file dell'applicazione. Nei seguenti metodi, contenuto Ŕ memorizzato nel file code-behind in condivisioni UNC (Universal Naming CONVENTION):
  • ╚ possibile utilizzare HTML in un file aspx. Quindi, Ŕ possibile memorizzare il codice per la pagina in un assembly precompilato nella cartella bin. Questo metodo Ŕ il modello di Microsoft Visual Studio. NET.
  • ╚ possibile comprimere tutto il codice e il contenuto HTML in un file singolo di origine viene compilato su richiesta.
  • ╚ possibile inserire la presentazione di HTML in un file ASP.NET. Quindi, Ŕ possibile compilare in modo dinamico qualsiasi codice di origine associato per tale file utilizzando clic su un attributo src nel < % @ Assembly % > direttiva.
Se in una condivisione di rete si trova il contenuto dell'applicazione, il compilatore inizia dall'account ASPNET. Di conseguenza, il compilatore non dispone di credenziali di rete per accedere al file. Se si utilizzano le condivisioni di rete, non Ŕ possibile utilizzare l'attributo src per puntare a un file. ╚ necessario utilizzare invece uno degli altri metodi.

ASP.NET su un controller di dominio primario o di backup

Per impostazione predefinita, se si utilizza ASP.NET 1.1 in un controller di dominio, le applicazioni Web ASP.NET verranno eseguite nel contesto di protezione dell'account IWAM_ ComputerName.

Nota ComputerName Ŕ il nome del computer in cui si trova l'account IWM_ ComputerName.

Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
315158FIX: ASP.NET non funziona con l'account ASPNET predefinito in un controller di dominio

La metabase di IIS

L'account ASPNET Ŕ in non Ŕ in grado di leggere la metabase Microsoft Internet Information Services (IIS). Se un'applicazione deve accedere alle impostazioni della metabase, Ŕ possibile utilizzare l'utilitÓ Metaacl.exe in modo selettivo concedere autorizzazioni di lettura per i nodi della metabase.

Se un'applicazione Ŕ necessario utilizzare i file del disco, Ŕ necessario concedere autorizzazioni di lettura alla metabase per l'account ASPNET. I file del disco Ŕ in necessario di leggere la metabase IIS per fornire servizi di rilevamento.

Gestione del sistema e WMI

╚ possibile utilizzare Strumentazione gestione Windows (WMI) per gestire e monitorare i computer che eseguono sistemi operativi Microsoft Windows. Tuttavia, quando le applicazioni che consente di eseguito nel sistema operativo Windows eseguito con l'account ASPNET, l'account ASPNET solo dispone di autorizzazioni predefinito stesso come Everyone account. Queste autorizzazioni includono la lettura dei dati WMI, la scrittura di provider di dati e l'esecuzione metodi per i provider del computer locale.

Per ulteriori informazioni sui meccanismi di protezione WMI, vedere la documentazione WMI Platform SDK oppure visitare il seguente sito Web MSDN (informazioni in lingua inglese):
http://msdn2.microsoft.com/en-us/library/aa394582.aspx
Per impostazione predefinita, ASP.NET genera una password crittograficamente sicura per l'account ASPNET. Se la password dell'account ASPNET non Ŕ condivisa tra computer o non viene reimpostata su un valore diverso da quello predefinito, questo comportamento consente di proteggere il sistema dopo che Ŕ possibile concedere ulteriori autorizzazioni e diritti utente dell'account ASPNET.

Interazione con il desktop

Quando i servizi IIS sono configurati per consentire l'interazione con il desktop, l'account ASPNET non Ŕ possibile accedere al desktop. Questo comportamento si verifica quando il Discretionary Access Control Lists (DACL) l'oggetto di stazione finestra predefinito e l'oggetto del desktop predefinito non sono configurati per concedere i diritti utente all'account ASPNET. Gli amministratori possono modificare questi elenchi DACL. In alternativa, Ŕ possibile eseguire il processo utilizzando un account che dispone dei diritti utente per questi oggetti.

Rimuovere ASP.NET

Quando si disinstalla ASP.NET, l'account ASPNET viene disattivato. Tuttavia, l'account rimane nel sistema. Se non si desidera reinstallare ASP.NET, Ŕ possibile eliminare l'account ASPNET.

Se si reinstalla ASP.NET dopo aver eliminato in modo esplicito l'account ASPNET, viene creato un nuovo account ASPNET dispone di un nuovo identificatore di protezione (SID). Di conseguenza, qualsiasi ACL a cui fa riferimento l'account ASPNET precedente non vengono applicate al nuovo account ASPNET.

Riferimenti

Per ulteriori informazioni sugli elenchi di controllo accesso del predefinito in Windows 2000, vedere il seguente white paper di Microsoft:
http://technet.microsoft.com/en-us/library/bb742509.aspx
Per ulteriori informazioni su come crittografare le credenziali e stringhe di connessione, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
329290Come utilizzare l'utilitÓ ASP.NET per crittografare le credenziali e stringhe di connessione dello stato sessione
Per ulteriori informazioni sull'account ASPNET, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
315158FIX: ASP.NET non funziona con l'account ASPNET predefinito in un controller di dominio

ProprietÓ

Identificativo articolo: 895967 - Ultima modifica: giovedý 28 dicembre 2006 - Revisione: 2.7
Le informazioni in questo articolo si applicano a:
  • Microsoft .NET Framework 1.1
Chiavi:á
kbmt kbhttpruntime kbasp kbtshoot kbcode kbinfo KB895967 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 895967
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com