Come configurare un'applicazione ASP.NET per uno scenario di delega

Riepilogo

In questo articolo viene descritto come configurare Internet Information Services (IIS) e Active Directory, è necessario per la delega di applicazioni ASP.NET. La delega è il passaggio successivo dopo la rappresentazione. La delega consente di accedere alle risorse remote per conto del client invece di accedere solo alle risorse locali. In questo articolo vengono descritti i passaggi da effettuare per delegare un'applicazione ASP.NET connessa.

Torna all'inizio

Requisiti per la delega

La delega si basa sull'autenticazione integrata di Windows per accedere alle risorse. Non vi è alcun limite al numero di computer che è possibile delegare il proprio account, è necessario configurare correttamente ciascuna di esse. Il metodo di autenticazione Windows integrata funziona solo se le seguenti due condizioni:
  • Configurare la rete per utilizzare il protocollo di autenticazione Kerberos che richiede Active Directory.
  • Impostare gli account e i computer sulla rete come trusted per delega.
Se queste condizioni non vengono soddisfatte, è possibile utilizzare l'autenticazione integrata di Windows per accedere ai dati su una risorsa remota perché l'autenticazione integrata di Windows consente solo di accedere al server IIS e non alle risorse aggiuntive per l'autenticazione di Windows che accede in remoto il server IIS è configurate.

Autenticazione Kerberos autentica il server e client, mentre Windows NT Challenge/Response (NTLM) autentica il client solo. I sistemi operativi precedenti a Windows 2000 non supportano l'autenticazione Kerberos. Kerberos richiede l'utilizzo di IIS 5.0 o versione successiva. Pertanto, è necessario eseguire Windows 2000 o un sistema operativo più recente su tutti i computer in cui si utilizza la delega Kerberos. Inoltre, è necessario inserire tutti i computer della stessa foresta di Active Directory. Solo Microsoft Internet Explorer 5.0 e versioni successive supportano Kerberos.
Per ulteriori informazioni, fare clic sul seguente numero di articolo per visualizzare l'articolo della Microsoft Knowledge Base:

217098 Cenni preliminari sulla base del protocollo di autenticazione Kerberos utente in Windows 2000


Torna all'inizio

Configurare Internet Explorer per la delega

Quando si utilizza Internet Explorer 5.0 o versioni successive, è possibile configurare Internet Explorer per un ASP.NET - la delega di IIS. A tale scopo, attenersi alla seguente procedura:
  1. Avviare Internet Explorer. Sulla barra dei menu, fare clic su
    Strumenti, quindi fare clic su Opzioni Internet.
  2. Fare clic sulla scheda Avanzate e quindi fare clic per selezionare la casella di controllo Abilita autenticazione Windows integrata (richiede riavvio) .

    Questa impostazione consente a Internet Explorer per rispondere a negoziazione e quindi di eseguire l'autenticazione Kerberos. Poiché questa funzionalità richiede Windows 2000 o versione successiva, quando Internet Explorer non è in esecuzione su una versione successiva del sistema operativo Windows 2000, Internet Explorer non risponde a una richiesta di negoziazione. Per impostazione predefinita, Internet Explorer utilizza l'autenticazione NTLM, anche se fa clic per selezionare la casella di controllo Abilita autenticazione Windows integrata (richiede riavvio) .

    Importante Questa sezione, metodo o attività contiene passaggi su come modificare il Registro di sistema. Tuttavia, una modifica errata del registro di sistema potrebbe causare gravi problemi. Pertanto, assicurarsi di seguire attentamente i passaggi. Per maggiore protezione, eseguire il backup del Registro di sistema prima di modificarlo. Cosicché sia possibile ripristinare il Registro di sistema se si verifica un problema. Per ulteriori informazioni su come eseguire il backup e ripristinare il Registro di sistema, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
    322756 come eseguire il backup e ripristinare il Registro di sistema Windows

  3. Nota: Nei computer che eseguono Microsoft Windows 2000 e versioni successive, gli amministratori possono impostare il valore della voce REG_DWORD valore EnableNegotiate su 1 nella seguente chiave del Registro di sistema per attivare l'autenticazione integrata di Windows:
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
    .
  4. Esistono alcuni problemi in Kerberos potrebbe non riuscire nel client Internet Explorer.
    Per ulteriori informazioni sui problemi relativi all'autenticazione Kerberos, fare clic sui numeri per visualizzare gli articoli della Microsoft Knowledge Base riportato di seguito:

    321728 Internet Explorer non supporta l'autenticazione Kerberos con server proxy

    325608 la delega di autenticazione tramite Kerberos non funziona nelle architetture di bilanciamento del carico

    248350 di autenticazione Kerberos non riesce dopo l'aggiornamento da IIS 4.0 a IIS 5.0

    264921 come IIS esegue l'autenticazione dei client browser

Torna all'inizio

Configurare IIS per la delega

Per attivare l'autenticazione integrata di Windows e la rappresentazione di un'applicazione ASP.NET connessa, è necessario configurare Internet Information Services (IIS). Per configurare l'autenticazione di Windows in IIS, attenersi alla seguente procedura:
  1. Fare clic su Start, fare clic su
    Esegui, digitare
    inetmgr, quindi scegliere OK.
  2. Espandere computer localee quindi
    Sito Web.
  3. Destro del mouse sul sito Web predefinitoe quindi scegliere proprietà.
  4. Fare clic sulla scheda Protezione Directory e quindi fare clic su Modifica nella sezione controllo autenticazione e accesso anonimo.
  5. Fare clic per selezionare la casella di controllo autenticazione integrata di Windows e fare clic per deselezionare le caselle di controllo di autenticazione del Digest per server di dominio Windows e Autenticazione di base , l'accesso anonimo.

    Nota: Se è attivata l'autenticazione anonima, IIS tenterà sempre di eseguire l'autenticazione utilizzando il programma in primo luogo, anche se sono attivati altri metodi.


    Se l'autenticazione anonima, autenticazione integrata di Windows e autenticazione di base sono tutte l'autenticazione di Windows integrata, selezionato ha la precedenza sull'autenticazione di base, dopo l'autenticazione anonima.
Torna all'inizio

Configurare ASP.NET per la delega

  1. Aprire un file Web. config in un editor di testo come blocco note. Il file Web. config si trova nella cartella dell'applicazione Web.
  2. Nel file Web. config, individuare le seguenti informazioni nella sezione < configuration >:
    <allow users="*" /> <deny users="?" />
  3. Nella sezione < System. Web >, verificare che l'elemento di autenticazione è impostata su Windows come segue:
    <authentication mode="Windows" />
  4. Nella sezione < System. Web >, aggiungere il seguente elemento per la rappresentazione:
    <identity impersonate="true" />
  5. Per ulteriori informazioni, fare clic sui numeri per visualizzare gli articoli della Microsoft Knowledge Base:

    306158 come implementare la rappresentazione in un'applicazione ASP.NET

    Identità di processo e richiesta 317012 in ASP.NET

    315736 come proteggere un'applicazione ASP.NET utilizzando la protezione di Windows

Torna all'inizio

Configurare Active Directory per la delega

La delega deve essere abilitata su tutti i computer con credenziali di delegato. Può essere configurato in strumenti di Active Directory.

Per ulteriori informazioni, visitare i seguenti siti Web Microsoft:Il processo IIS, InetInfo.exe, principale è un servizio eseguito con l'account LocalSystem, che è il processo che esegue le operazioni seguenti:
  • Accetta la richiesta del client
  • Rappresenta l'utente
  • Esegue le attività appropriate
  • Ripristina l'identità del processo. Si tratta di LocalSystem
Se si esegue InetInfo.exe con un account diverso da LocalSystem, è necessario verificare che l'account è consentito di agire come delegato. In questo caso, non si configura il computer per la delega.
Torna all'inizio

Risoluzione dei problemi

  1. Se il nome del server Web utilizzato nell'URL per chiamare la pagina ASP.NET non è il nome NetBIOS del computer che esegue IIS, l'autenticazione integrata potrebbe non riuscire con errore 401.3. Per risolvere questo problema, registrare un nuovo nome dell'entità servizio per il computer con l'utilità SetSPN.exe.
    Per ulteriori informazioni, fare clic sul seguente numero di articolo per visualizzare l'articolo della Microsoft Knowledge Base:

    294382 autenticazione potrebbe non riuscire con errore "401.3" se è diverso dal nome NetBIOS del server "Intestazione Host" del sito Web

  2. Kerberos non funziona in un'architettura a carico bilanciato e IIS cadute nuovamente l'autenticazione NTLM. Poiché non è possibile utilizzare NTLM per la delega, applicazioni o servizi che richiedono la delega non funzionano.
    Per ulteriori informazioni, fare clic sul seguente numero di articolo per visualizzare l'articolo della Microsoft Knowledge Base:

    325608 la delega di autenticazione tramite Kerberos non funziona nelle architetture di bilanciamento del carico

  3. Per Kerberos per il corretto funzionamento, è necessario utilizzare nomi di dominio completo (FQDN) per tutte le comunicazioni.
  4. Quando si utilizza Internet Explorer in un client Windows 2000 e quindi individuare un sito Web in cui l'intestazione host è diverso dal nome NetBIOS del computer, autenticazione integrata potrebbe non riuscire con errore 401.3. Si noti che i client Internet Explorer che utilizzano Windows NT 4 o Windows 98 o Windows 95 non avrà esito negativo. Inoltre, altri schemi di autenticazione funzionerà.
  5. Se il server Web utilizza un nome di dominio completo, è necessario aggiungere che il sito viene aggiunto all'elenco dei siti intranet in Internet Explorer. Per verificare che il server Web utilizza un nome di dominio completo, attenersi alla seguente procedura:
    1. Avviare Internet Explorer.
    2. Dal menu Strumenti , fare clic su
      Opzioni Internet, quindi scegliere la scheda protezione .
    3. Fare clic per selezionare intranet locale. Fare clic su
      Siti.
    4. Scegliere Avanzatee quindi digitare l'indirizzo Web nella finestra di dialogo Aggiungi il sito Web all'area . Fare clic su Aggiungie quindi fare clic su OK.
  6. Se il client Internet Explorer è impostato per utilizzare un server proxy, è necessario fare clic per selezionare la casella di controllo Ignora Server Proxy per indirizzi locali . Per verificare che il client Internet Explorer è configurato per utilizzare un server proxy, questo attenersi alla seguente procedura:
    1. Avviare Internet Explorer.
    2. Dal menu Strumenti , fare clic su
      Opzioni Internete quindi scegliere il
      Scheda connessioni .
    3. Fare clic su impostazioni LAN . In server Proxy, verificare che sia selezionata la casella di controllo Ignora server proxy per indirizzi locali .
  7. Se si desidera accedere a un SQL Server da un'applicazione ASP.NET connessa, è necessario utilizzare TCP/IP. Named pipe non supportano la delega Kerberos. Una named pipe utilizzare NTLM. A tale scopo, aggiungere il seguente attributo alla stringa di connessione:
    "Network Library =dbmssocn"
    Se non si imposta in modo esplicito la libreria di rete, NTLM accetta la prima installazione di libreria dell'utilità di configurazione client (Cliconfg.exe). Questa impostazione predefinita modificata da named pipes a TCP/IP Microsoft dati Access Components (MDAC) 2.6.
    Per ulteriori informazioni, fare clic sui numeri per visualizzare gli articoli della Microsoft Knowledge Base:

    BUG 315159 : Named pipe non funzionano quando il processo di lavoro viene eseguito con l'account ASPNET

    247931 metodi di autenticazione per le connessioni a SQL Server nelle pagine ASP

Torna all'inizio

Riferimenti

Per ulteriori informazioni su come progettare più secure Web-based applications e scenari di delega, visitare il seguente sito Web Microsoft Developer Network (MSDN):Per ulteriori informazioni su come progettare applicazioni Web protette, vedere quanto segue:
Designing Secure Web-Based Applications"
Microsoft Press
Michael Howard, prelievo di vinacce e Richard Waymire
ISBN 0-7356-0995-0
Torna all'inizio
Proprietà

ID articolo: 810572 - Ultima revisione: 30 gen 2017 - Revisione: 1

Feedback