Elemento identity (schema delle impostazioni ASP.NET)

[Questa documentazione ha solo scopo di anteprima ed è soggetta a modifiche nelle versioni successive. Gli argomenti vuoti sono inclusi come segnaposto.]

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

Nota

Nella sintassi di esempio presente in questo argomento è inclusa una password allo scopo di dimostrare come funziona la sintassi.Nelle applicazioni è consigliabile utilizzare una strategia per proteggere le password.

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

Attributi ed elementi

Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli 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.

ValoreDescrizione
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

Specifica 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 radice. 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à

How to: Lock ASP.NET Configuration Settings

Riferimenti

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

Elemento <Configuration>

System.Configuration

System.Web.Configuration

Concetti

ASP.NET Configuration Overview

ASP.NET Server Controls and Browser Capabilities

Securing Configuration

Configuration Inheritance

Altre risorse

ASP.NET Configuration Files

Impostazioni di configurazione di ASP.NET

Impostazioni di configurazione generali (ASP.NET)

ASP.NET Configuration API