2009-08-21 2 views
11

È necessario che un'applicazione Web ASP.NET utilizzi Shibboleth per l'autenticazione. Qualcuno l'ha già fatto prima? Ci sono delle librerie là fuori per supportare le chiamate al metodo? O è una cosa solo Java?Shibboleth e .NET

+3

Pensavo che Shibboleth fosse uno degli dei più vecchi. Apparentemente autentica le persone? – quillbreaker

+2

Sarei interessato se tu abbia trovato una soluzione .NET per questo. –

+0

Non l'ho fatto per .NET, ma potresti avere qualche idea a leggere attraverso l'implementazione Objective-C per l'iPhone. –

risposta

8

Non è sicuramente una cosa solo Java, è disponibile un modulo Apache per il download sul sito Shibboleth.

Non so se c'è qualcosa di specifico per .NET.

Abbiamo implementato Shibboleth un po 'di tempo fa e inizialmente abbiamo provato a utilizzare le soluzioni Java: era un incubo. Le app java erano mal scritte, buggy e mal documentate. È stato complicato e abbiamo deciso di utilizzare il modulo Apache su un server dedicato e inoltrare gli utenti autenticati con successo alla nostra app Tomcat. Il modulo Apache è stato facilissimo da configurare, configurare e lavorare.

Non so se hai già capito ma la documentazione Shib e il sito web sono incredibilmente difficile da navigare - è una lotta per trovare tutte le informazioni utili. Sono andato a cercare un'implementazione .NET, ma ho rinunciato!

Se le nostre esperienze Java sono tutto da seguire Vorrei seriamente suggerire la creazione di un server Apache con il modulo Shibboleth installato e risparmiando un mondo di dolore.

Questo è un buon sito per testare le vostre Shibboleth installare, una volta che lo avete configurato: http://www.testshib.org/testshib-two/index.jsp

Se si trova una buona soluzione .NET allora sarei molto interessato a sentire su di esso. In bocca al lupo!

5

So che questa è una domanda molto vecchio, ma ho pensato che potrei essere in grado di fare un po 'meglio in espansione per coloro che stanno trovando le risposte da parte di Google.

Come consigliato sopra, si desidera veramente configurare il server Web per caricare un modulo. La parte difficile di shibboleth è il file di configurazione, ma supponendo che qualcun altro nella tua organizzazione abbia utilizzato shibboleth puoi usare il loro come modello ed è abbastanza facile.

Per l'autenticazione basata .NET, è necessario configure Shibboleth in IIS. La configurazione predefinita per IIS crea una directory chiamata/secure, e qualsiasi cosa posta sotto di essa richiederà l'autenticazione shibboleth (ad esempio, reindirizzerà al provider di identità). È possibile configurarlo per coprire altre directory o persino eseguire l'autenticazione lazy.

Una volta installato il pezzo di autenticazione, è possibile controllare le intestazioni per "leggere" le informazioni che il provider di identità sta trasmettendo all'utente. IIS gestisce le cose un po 'diversamente da Apache, ma è ancora abbastanza facile. Se si desidera semplicemente il nome utente, è possibile utilizzare HTTP_REMOTEUSER anche se potrebbero esserci opzioni migliori; Ad esempio Ohio State University recommends using the eduPersonPrincipalName.

+0

Questo è quello che ho fatto con Shibboleth. L'unica configurazione era l'XML Shibboleth e il modello Discovery. Sono d'accordo, la documentazione è difficile per qualcuno con una conoscenza limitata di Apache, o qualcuno che lo faccia per la prima volta. –

+0

So che questa è una vecchia domanda, ma che succede se si tratta di un servizio Web .NET MVC ospitato nell'app Web di Azure? Il nostro obiettivo è limitare chi può chiamare il servizio agli utenti autenticati SSO (SAML/Shib). – o365spo

3

Come dice MatthewMartin, Shibboleth è solo un server SAML, Windows Identity Foundation supporta SAML come spiegato in questo blog post.

+1

I link per scaricare il CTP sono morti. – mlhDev

+0

piuttosto sicuro che il WIF sia stato inserito nelle Dll del framework dotnet. Tutta la roba della WS Fed è mescolata con OWIN/Katana –