PRB: Stringa vuota Request.ServerVariables("LOGON_USER") restituisce in ASP.NET

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

Sintomi

Se si tenta di accedere alla variabile Request.ServerVariables("LOGON_USER") in ASP.NET, viene restituita una stringa vuota.

Nota : se si utilizza Microsoft Visual C#. NET, la seguente sintassi accede a questa variabile:
Request.ServerVariables["LOGON_USER"]
				

Cause

Questo problema si verifica perchÚ le variabili legate alla autenticazione l'insieme ServerVariables non vengono inserite se si utilizza protezione accesso anonimo per accedere alla pagina aspx. Questo problema pu˛ verificarsi anche se si fornisce l'accesso di utente anonimo nel <authorization> sezione del file Web.config.

Risoluzione

Per popolare la variabile LOGON_USER quando si utilizza qualsiasi modalitÓ di autenticazione diverso da None, Ŕ possibile negare accesso all'utente anonimo nel <authorization> sezione del file Web.config. Per negare l'accesso all'utente anonimo nel <authorization> sezione, attenersi alla seguente procedura:
  1. Modificare la modalitÓ di autenticazione nel file Web.config su un valore diverso da None. Ad esempio, la voce seguente nel file Web.config imposta la modalitÓ di autenticazione per l'autenticazione basata su form:
    <authentication mode="Forms" />
    					
  2. Per negare l'accesso l'utente anonimo nel file Web.config, utilizzare la seguente sintassi:
    <authorization>
       <deny users = "?" /> <!-- This denies access to the Anonymous user -->
       <allow users ="*" /> <!-- This allows access to all users -->
    </authorization>
    					
Se si utilizza l'autenticazione di Windows, Ŕ possibile utilizzare la procedura seguente per risolvere il problema:
  1. Cambiare la modalitÓ di autenticazione nel file Web.config in finestra di Windows come segue:
    <authentication mode="Windows" />
    					
  2. In Gestione servizio Internet, fare clic con il pulsante destro del mouse sul file aspx o la cartella di progetto Web e quindi fare clic su ProprietÓ .
  3. Se si sceglie ProprietÓ per la cartella di progetto Web, fare clic sulla scheda Protezione Directory . Se si sceglie ProprietÓ per il file aspx, fare clic sulla scheda Protezione File .
  4. Nella sezione controllo autenticazione e accesso anonimo fare clic su Modifica .
  5. Nella finestra di dialogo metodi di autenticazione deselezionare la casella di controllo Accesso anonimo e quindi selezionare sia la base , casella di controllo integrata (NT Challenge/Response) o il digest .
  6. Fare clic su OK per chiudere entrambe le finestre di dialogo.
Per istruzioni su come configurare l'autenticazione del digest, vedere la sezione "Riferimenti" alla fine di questo articolo.

Status

Questo comportamento legato alla progettazione.

Informazioni

ASP.NET fornisce nuove modalitÓ di autenticazione e schemi di autorizzazione, Ŕ possibile configurare i file con estensione config. Per questo motivo, modificare la modalitÓ di autenticazione in IIS solo Ŕ possibile che non sempre restituire i risultati desiderati. Di conseguenza, Ŕ necessario considerare anche le impostazioni di protezione i file con estensione config.

Nota : quando Ŕ abilitare l'autenticazione anonima in combinazione con Windows l'autenticazione o se l'utente anonimo nel <authorization> Ŕ concedere l'accesso sezione mentre si utilizza qualsiasi modalitÓ di autenticazione diverso da None, altre variabili server, ad esempio AUTH_USER REMOTE_USER (come pure la proprietÓ HttpContext.Current.User.Identity.Name ) restituisce inoltre una stringa vuota. ╚ possibile utilizzare una delle soluzioni sopra per popolare queste variabili.

In ASP.NET, Ŕ anche possibile utilizzare la proprietÓ IsAuthenticated dell'oggetto richiesta per determinare se la protezione di accesso anonimo viene utilizzata. IsAuthenticated restituisce "false" Se l'accesso anonimo Ŕ attivato e restituisce "true" Se si utilizza qualsiasi altro mezzo di autenticazione, ad esempio moduli, Passport, integrata (NT Challenge/Response), o di base.

Riferimenti

Per ulteriori informazioni sulla protezione in ASP.NET, vedere il seguente sito Web MSDN:
Protezione delle applicazioni Web ASP.NET
http://msdn2.microsoft.com/en-us/library/330a99hc.aspx
Per ulteriori informazioni, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportati di seguito:
306590INFO: ASP.NET Security Overview
222028Impostazione di autenticazione del digest per l'utilizzo con Internet Information Services 5.0
188717PRB: Request.ServerVariables("LOGON_USER") restituisce Empty String

ProprietÓ

Identificativo articolo: 306359 - Ultima modifica: lunedý 3 dicembre 2007 - Revisione: 3.8
Le informazioni in questo articolo si applicano a:
  • Microsoft ASP.NET 1.1
  • Microsoft Internet Information Services 6.0
  • Microsoft ASP.NET 1.0
  • Microsoft Internet Information Services 5.0
Chiavi:á
kbmt kbconfig kbprb kbsecurity kbweb KB306359 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: 306359
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