Elemento identity (schema delle impostazioni ASP.NET)

Aggiornamento: novembre 2007

Consente di configurare l'identità dell'applicazione Web. Questo elemento può essere dichiarato a qualsiasi livello della gerarchia di file di configurazione.

Nota

In questa sintassi di esempio è inclusa una password per dimostrare come funziona la sintassi. Nelle applicazioni è consigliabile utilizzare un'applicazione con password di sicurezza.

Elemento <Configuration>
  Elemento system.web (schema delle impostazioni ASP.NET)
    Elemento identity (schema delle impostazioni ASP.NET)

<identity impersonate="true|false" 
          userName="domain\username"
          password="<secure password>"/>

Attributi ed elementi

Nelle sezioni riportate di seguito vengono illustrati attributi, elementi figlio ed elementi padre.

Attributi

Attributo

Descrizione

Impersonate

Attributo obbligatorio.

Specifica se viene utilizzata la rappresentazione client a ogni richiesta.

Questo attributo può essere uno dei valori riportati di seguito.

Valore

Descrizione

false

Specifica che non viene utilizzata la rappresentazione client.

true

Specifica che viene utilizzata la rappresentazione client.

Password

Attributo facoltativo.

Specifica la password da utilizzare se l'attributo impersonate è true.

Per informazioni sulla memorizzazione delle credenziali crittografate dei processi di lavoro nel Registro di sistema, vedere l'attributo userName.

userName

Attributo facoltativo.

Specifica il nome utente da utilizzare se l'attributo impersonate è true.

Questo attributo, e l'attributo password, sono memorizzati in testo non crittografato nel file di configurazione. Sebbene Microsoft Internet Information Service (IIS) non trasmetta file config in risposta a una richiesta di agente utente, è possibile leggere i file config in altro modo. Tali file possono essere, ad esempio, letti da un utente autenticato con le credenziali appropriate nel dominio che include il server. Per ragioni di sicurezza, l'attributo identity supporta la memorizzazione degli attributi userName e password crittografati nel Registro di sistema. Le credenziali devono essere in formato REG_BINARY e crittografate tramite le apposite funzioni DPAPI di Microsoft Windows 2000 e Windows XP.

Per ulteriori informazioni, vedere le sezioni "Note" ed "Esempio" più avanti in questo argomento.

Elementi figlio

Nessuno.

Elementi padre

Elemento

Descrizione

configuration

Specifica l'elemento di primo livello in ciascun file di configurazione utilizzato in Common Language Runtime e nelle applicazioni .NET Framework.

system.web

Consente di specificare l'elemento radice per la sezione di configurazione ASP.NET.

Note

Per crittografare il nome utente e la password e memorizzarli nel Registro di sistema, impostare gli attributi userName e password come indicato di seguito.

userName="registry:HKLM\Software\AspNetProcess,Name"password="registry:HKLM\Software\AspNetProcess,Pwd"

La parte di stringa che segue la parola chiave registry, e che precede la virgola, indica il nome della chiave del Registro di sistema aperta da ASP.NET. La parte di stringa che segue la virgola include un nome di valore di stringa singolo da cui in ASP.NET verranno lette le credenziali. La virgola è obbligatoria e le credenziali devono essere memorizzate nell'hive HKLM. Se il formato di configurazione non è corretto, il processo di lavoro non verrà avviato e seguirà il percorso corrente del codice di errore per la creazione di account.

Le credenziali devono essere in formato REG_BINARY e contenere l'output di una chiamata alla funzione dell'API di Windows CryptProtectData. È possibile creare le credenziali crittografate e memorizzarle nel Registro di sistema con Aspnet_setreg.exe che utilizza CryptProtectData per realizzare la crittografia. Per eseguire il download di Aspnet_setreg.exe, completo di codice sorgente Microsoft Visual C++ e documentazione, visitare il sito Web di ASP.NET ed eseguire la ricerca di "aspnet_setreg".

È necessario configurare l'accesso alla chiave in cui sono memorizzate le credenziali crittografate in modo che sia disponibile solo per i gruppi Administrators e SYSTEM. Poiché la chiave verrà letta dal processo ASP.NET in esecuzione con l'account SYSTEM, è necessario impostare le autorizzazioni seguenti:

  • Administrators:F

  • SYSTEM:F

  • CREATOR OWNER:F

  • ProcessAccount:R

In questo modo viene creata una doppia linea di difesa per la protezione dei dati:

  • Per accedere alle autorizzazioni ACL sarà necessario appartenere al gruppo Administrators.

  • Eventuali intrusi dovranno eseguire codice sul server (l'API CryptUnprotectData) per recuperare le credenziali dell'account.

Configurazione predefinita

L'elemento identity predefinito riportato di seguito non viene configurato in modo esplicito nel file Machine.config o nel file Web.config principale. Si tratta, tuttavia, della configurazione predefinita restituita dall'applicazione.

<identity impersonate="false" userName="" password="" />

Informazioni sull'elemento

Gestore della sezione di configurazione

System.Web.Configuration.IdentitySection

Membro di configurazione

SystemWebSectionGroup.Identity

Percorsi configurabili

Machine.config

Web.config a livello di radice

Web.config a livello di applicazione

Web.config a livello di directory fisica o virtuale

Requisiti

Microsoft Internet Information Services (IIS) versione 5.0, 5.1 o 6.0

.NET Framework versione 1.0, 1.1 o 2.0

Microsoft Visual Studio 2003 o Visual Studio 2005

Vedere anche

Attività

Procedura: bloccare le impostazioni di configurazione di ASP.NET

Concetti

Cenni preliminari sulla configurazione di ASP.NET

Controlli server Web ASP.NET e funzionalità del browser

Protezione della configurazione di ASP.NET

Scenari di configurazione ASP.NET

Riferimenti

Elemento system.web (schema delle impostazioni ASP.NET)

Elemento <Configuration>

System.Configuration

System.Web.Configuration

Altre risorse

File di configurazione ASP.NET

Impostazioni di configurazione di ASP.NET

Impostazioni di configurazione generali (ASP.NET)

API di configurazione di ASP.NET