Autenticazione Windows IIS Express

Sto cercando di utilizzare IIS Express con VS2010 per ospitare un’applicazione Silverlight. Ho modificato il file applicationhost.config per consentire la modifica delle impostazioni di configurazione corrette. Ho il seguente nel mio web.config:

          

Non sono stato autenticato e la mia chiamata di servizio di dominio restituisce un record null come utente. Sono stato in grado di farlo funzionare dopo aver installato VS2010 SP1 BETA ma sto cercando di farlo funzionare solo con IIS Express.

Come abilitare l’autenticazione di Windows per funzionare con IIS Express. C’è un’impostazione di configurazione che mi manca?

opzione-1 :

modificare il file \My Documents\IISExpress\config\applicationhost.config e abilitare windowsAuthentication, ovvero:

  ...  ...    ...  ...  

opzione-2 :

Sblocca la sezione WindowsAuthentication in \ My Documents \ IISExpress \ config \ applicationhost.config come segue

  

Modifica le impostazioni di override per i tipi di autenticazione richiesti su ‘Permetti’

  ...  ...  
...

Aggiungi seguendo nel web.config dell’applicazione

 < ?xml version="1.0" encoding="UTF-8"?>          

Sotto il collegamento può aiutare: http://learn.iis.net/page.aspx/376/delegating-configuration-to-webconfig-files/

Dopo l’installazione di VS 2010 SP1, l’applicazione dell’opzione 1 + 2 potrebbe essere necessaria per ottenere il funzionamento dell’autenticazione di Windows. Inoltre, potrebbe essere necessario impostare l’autenticazione anonima su false in IIS Express applicationhost.config:

   

per VS2015, il file di configurazione di applicationhost di IIS Express può trovarsi qui:

 $(solutionDir)\.vs\config\applicationhost.config 

e l’opzione nel file di progetto seleziona il file di configurazione predefinito o specifico della soluzione.

Visual Studio 2010 SP1 e 2012 hanno aggiunto il supporto per IIS Express eliminando la necessità di modificare le parentesi angolari.

  1. Se non lo hai già fatto, fai clic con il pulsante destro del mouse su un progetto web-flavored e seleziona “Usa IIS Express …”.
  2. Una volta completato, selezionare il progetto Web e premere F4 per mettere a fuoco il pannello Proprietà.
  3. Impostare la proprietà “Autenticazione Windows” su Abilitato e la proprietà “Autenticazione anonima” su Disabilitato.

inserisci la descrizione dell'immagine qui

Credo che questa soluzione sia superiore alle opzioni di vikomall.

  • L’opzione n. 1 è una modifica globale per tutti i siti IIS Express.
  • L’opzione # 2 lascia lo sviluppo cruft nel web.config.
    • Inoltre, probabilmente verrà generato un errore se distribuito su IIS 7.5, a meno che non si segua la procedura di “sblocco” sul applicationHost.config del server IIS.

La soluzione basata sull’interfaccia utente utilizza elementi di localizzazione specifici del sito nell’applicazione di IIS ExpressHost.config lasciando intatta l’app.

Ulteriori informazioni qui: http://msdn.microsoft.com/en-us/magazine/hh288080.aspx

Basandosi sulla risposta di booij boy, controlla se hai controllato la funzionalità di “autenticazione di Windows” nel Pannello di controllo -> Programmi -> triggers le funzionalità di Windows su o di -> Internet Information Services -> Servizi Web -> Sicurezza

Inoltre, sembra esserci una grande differenza quando si utilizza Firefox o Internet Explorer. Dopo aver inserito “l’autenticazione di Windows” funziona per me ma solo in IE.

Oltre a queste grandi risposte, nel contesto di un ambiente di sviluppo IISExpress, e al fine di contrastare l’infame errore “system.web/identity@impersonate”, puoi semplicemente assicurarti che la seguente impostazione sia presente nel tuo file applicationhost.config .

      

Ciò ti consentirà una maggiore flessibilità durante lo sviluppo e il testing, assicurandoti però di comprendere le implicazioni dell’utilizzo di questa impostazione in un ambiente di produzione prima di farlo.

Messaggi utili:

In Gestione IIS fai clic sul tuo sito. Devi essere “nella vista delle caratteristiche” (piuttosto che nella “vista del contenuto”)

Nella sezione IIS di “feature view” scegli la cosiddetta funzione “autenticazione” e fai clic su di essa. Qui puoi abilitare l’autenticazione di Windows. Questo è anche ansible (penso in uno dei suggerimenti del thread) da un’impostazione nel web.config (…)

Ma forse hai un web.config con cui non vuoi fare troppa attenzione. Quindi questo thread non sarebbe di grande aiuto, motivo per cui ho aggiunto questa risposta.

Questa risposta può essere utile se: 1) il tuo sito utilizzato per lavorare con l’autenticazione di Windows prima di eseguire l’aggiornamento a Visual Studio 2015 e 2) e il tuo sito sta tentando di caricare /login.aspx (anche se non esiste tale file sul tuo sito).

Aggiungi le seguenti due righe alla sezione appSettings del tuo sito Web.config .

   

Sulla stessa nota – VS 2015, .vs \ config \ applicationhost.config non visibile o non disponibile.

Per impostazione predefinita, la cartella .vs è nascosta (almeno nel mio caso).

Se non riesci a trovare la cartella .vs, segui i passaggi seguenti.

  1. Fare clic con il tasto destro sulla cartella Soluzione
  2. seleziona ‘Proprietà’
  3. Nella sezione Attributes , fare clic sulla casella di controllo Hidden (deselezionata per impostazione predefinita),
  4. quindi fare clic sul pulsante ‘Applica’
  5. Apparirà la finestra di conferma ‘Applica le modifiche a questa cartella, sottocartella e file’ selezionata, premi ‘Ok’.

    Ripeti i passaggi da 1 a 5, ad eccezione del step 3 , questa volta devi uncheck l’opzione “Nascosto” che hai controllato in precedenza.

Ora dovrebbe essere in grado di vedere la cartella .vs.

Dopo aver fatto tutto nelle risposte di cui sopra, ho capito che non stavo eseguendo Visual Studio come amministratore. Dopo aver eseguito come amministratore, problema risolto.