Domanda

Credo che possiamo consentire a Firefox di inviare dati NTLM ai siti di SharePoint per eseguire l'autenticazione automatica e penso che ciò sia fattibile con IIS.

Mi piacerebbe fare la stessa cosa con un sito Rails interno.

Qualcuno sa come potrei autenticare le informazioni utente di tipo NTLM tramite un'installazione Apache / mongrel (purché ovviamente sia già in esecuzione su una finestra di Windows all'interno di un dominio di Active Directory)?

Altri suggerimenti

Ho creato tutorial su come installare il modulo mod_ntlm patchato per Apache su Linux e come passare il nome utente autenticato NTLM a Rails e come creare la sessione Rails da quello. Pertanto, non è necessario il server Windows per eseguire l'applicazione Rails.

Qui puoi trovare anche come abilitare l'autenticazione NTLM automatica in Firefox & # 8212; inserisci " about: config " nel campo della posizione, quindi cerca " network.automatic-ntlm-auth.trusted-uris " ;. Lì puoi inserire i server per i quali desideri utilizzare l'autenticazione NTLM automatica.

Un po 'di informazioni extra nel caso qualcuno si imbattesse in questo.

Volevo fare qualcosa che pensavo dovesse essere piuttosto semplice: estrarre il nome utente di Windows degli utenti utilizzando NTLM da un'app Rails in esecuzione su Mongrel / Windows (InstantRails in realtà). Dopo aver scritto il codice di base, gestisci le varie operazioni di handshaking (usando la grande libreria NTLMRuby in http://rubyforge.org/ progetti / rubyntlm / ) e aver funzionato meravigliosamente in Firefox sono stato un po 'frustrato nel constatare che IE non funzionava.

Mongrel non supporta i keep-alive durante lo scambio di messaggi di tipo 1/2/3 (almeno in modo nativo, credo che ci sia un hack / correzione per questo), che IE richiede e Firefox se ne va senza.

Quindi autenticare un server Rails in esecuzione su Windows su un servizio NTLM remoto (ad es. Sharepoint o un altro sito Web) è ragionevolmente semplice, ma autenticare un browser IE su un server Rails in esecuzione su Windows non tanto con Mongrel. IIS sarebbe un'opzione, come potrebbe essere Apache di base con FastCGI. Il primo sembra un po 'goffo e il secondo non sarà veloce come Mongrel.

Puoi anche utilizzare il modulo Apache ntlm , che dovrebbe passare un'intestazione in avanti alla tua applicazione con il nome utente dell'utente autenticato. Quel modulo sembra un po 'vecchio, ma suggerisce alcuni altri moduli che potrebbero soddisfare le tue esigenze.

Vecchia domanda che conosco ma mi sono imbattuto in questo cercando una risposta simile.

potresti usare i metodi qui descritti ( http://blog.rayapps.com/2008/12/02/ntlm-windows-domain-authentication-for-rails-application/ ). Tuttavia mod_ntlm è per l'autenticazione di Windows su una macchina UNIX / linux. mod_auth_sspi è ciò di cui hai bisogno per l'autenticazione winNT da apache in Windows.

Questo particolare progetto sembra promettente e cerca collaboratori:

Non l'ho ancora provato. Per il momento ho in programma di implementare la soluzione di Raimonds in quanto sembra avere molto successo.

Guarda Waffle . Fornisce SSO su server Windows a Java utilizzando l'API Win32. Esistono numerosi filtri implementati (servlet, valvola tomcat, sicurezza a molla).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top