Come posso implementare segue in un'applicazione ASP.NET MVC:Come supportare l'autenticazione NTLM con fallback per form in ASP.NET MVC?
- utente apre il sito intranet
- utente viene autenticato in silenzio, se possibile
- se l'autenticazione NTLM non ha funzionato, modulo spettacolo di login per l'utente
- utente indicare la password di accesso e selezionare dominio dalla lista di domini predefiniti
- utente viene autenticato nel codice utilizza AD
So come implementare 4 e 5 ma non riesco a trovare informazioni su come combinare NTLM e moduli. In modo che la finestra di dialogo nativa/password nativa di NTLM non venga mai visualizzata: autenticazione trasparente o pagina di login dall'aspetto piacevole.
Come dovrebbe funzionare? Dovrebbe essere chiesto all'utente login e password? Le sue attuali credenziali (nome utente dominio) possono essere utilizzate senza chiedere di inserire login e password?
di aggiornamento per questi, indagare stesso problema:
Quando mi è stato chiesto questo non mi è stato completamente capire come l'autenticazione NTLM funziona internamente. La cosa importante da capire è che se il browser dell'utente non supporta correttamente NTLM o se il supporto NTLM è disabilitato dall'utente, il server non avrà mai la possibilità di aggirare questo problema.
Come autenticazione di Windows sta lavorando:
- cliente trasmette una richiesta HTTP regolare al server
- Server risponde con stato HTTP 401 e l'indicazione che l'autenticazione NTLM deve essere utilizzato per accedere alle risorse
- client inviare NTLM Messaggio Type1
- Il server risponde con il messaggio NTLM Tipo2 con la richiesta di verifica
- Il client invia un messaggio tipo3 con risposta alla richiesta
- Server risponde con il contenuto effettivo richiesto
Come si vede, il browser che non supportano NTLM non andrà al punto di errore (3), IIS invece verrà mostrato all'utente generati 401 pagina.
Se l'utente non dispone di credenziali, dopo aver annullato il browser di finestra di dialogo di autenticazione NTLM non continuerà anche a (3).
Quindi non abbiamo la possibilità di reindirizzare automaticamente gli utenti alla pagina di accesso personalizzata.
L'unica opzione qui è avere una pagina "gateway" in cui decidiamo se l'utente deve supportare NTLM e, in caso affermativo, reindirizzare alla home page protetta NTLM.
E in caso contrario, mostrare il modulo di accesso e consentire l'autenticazione inserendo manualmente login e password.
La decisione viene generalmente effettuata in base all'indirizzo IP e/o al nome host degli utenti tramite l'assegnazione di intervalli IP o la verifica della tabella degli IP predefiniti.
http: // StackOverflow. it/questions/492977/anonymous-access-and-ntlm-authentication-in-iis –