2009-08-21 15 views
11

Mam wymaganie, aby aplikacja internetowa ASP.NET używała Shibboleth do uwierzytelniania. Czy ktoś to wcześniej zrobił? Czy istnieją biblioteki obsługujące wywołania metod? A może to tylko Java?Shibboleth i .NET

+3

Myślałem, że Shibboleth był jednym ze starszych bogów. Wygląda na to, że uwierzytelnia ludzi? – quillbreaker

+2

Byłbym zainteresowany, gdyby znalazłeś rozwiązanie .NET do tego. –

+0

Nie zrobiłem tego dla .NET, ale możesz uzyskać pomysły przeglądające moją implementację Objective-C dla iPhone'a. –

Odpowiedz

8

Z pewnością nie jest to produkt wyłącznie w języku Java, moduł Apache jest dostępny do pobrania na stronie Shibboleth.

Nie wiem, czy jest coś konkretnego dla .NET.

Zaimplementowaliśmy Shibboleth jakiś czas temu i początkowo próbowaliśmy używać rozwiązań Java - to był koszmar. Aplikacje Java były źle napisane, błędne i źle udokumentowane. Było to kłopotliwe, po czym ostatecznie zdecydowaliśmy się użyć modułu Apache na dedykowanym serwerze i przekazać pomyślnie uwierzytelnionych użytkowników do naszej aplikacji Tomcat. Moduł Apache był łatwy w konfiguracji, konfiguracji i pracy.

Nie wiem, czy już zdążyłeś, ale dokumentacja Shib i strona internetowa są niesamowicie trudne w nawigacji - walka o znalezienie użytecznych informacji. Poszedłem i szukam tam implementacji .NET, ale zrezygnowałem!

Jeśli nasze doświadczenia z Javą są czymś, co można zrobić, poważnie sugerowałbym skonfigurowanie serwera Apache z zainstalowanym modułem Shibboleth i oszczędzanie sobie świata bólu.

Jest to dobre miejsce do testowania Shibboleth zainstalować raz masz go skonfigurować: http://www.testshib.org/testshib-two/index.jsp

Jeśli znajdziesz dobre rozwiązanie .NET wtedy byłbym bardzo zainteresowany o tym słyszeć. Powodzenia!

5

Wiem, że jest to naprawdę stare pytanie, ale pomyślałem, że być może uda mi się nieco rozszerzyć dla tych, którzy znajdują odpowiedzi od Google.

Zgodnie z powyższym opisem, na pewno chcesz skonfigurować serwer WWW tak, aby ładował moduł. Najtrudniejszą częścią shibboleth jest plik konfiguracyjny, ale zakładając, że ktoś inny w twojej organizacji używał shibboleta, możesz użyć ich jako szablonu i jest to dość łatwe.

Dla uwierzytelniania opartego na .NET, musisz configure Shibboleth in IIS. Domyślna konfiguracja usług IIS tworzy katalog o nazwie/secure, a wszystko, co zostanie tam umieszczone, będzie wymagało uwierzytelnienia shibboleth (tzn. Przekieruje to do dostawcy tożsamości). Można go skonfigurować tak, aby obejmował inne katalogi, a nawet leniwego uwierzytelniania.

Po wprowadzeniu elementu uwierzytelniania można sprawdzić nagłówki, aby "odczytać" informacje przekazywane przez dostawcę tożsamości. IIS obsługuje rzeczy nieco inaczej niż Apache, ale wciąż jest dość łatwe. Jeśli chcesz tylko nazwy użytkownika, możesz użyć HTTP_REMOTEUSER, chociaż mogą istnieć lepsze opcje; tj. Ohio State University recommends using the eduPersonPrincipalName.

+0

To właśnie zrobiłem z Shibboleth. Jedyną konfiguracją była Shibboleth XML i szablon Discovery. Zgadzam się, dokumentacja jest trudna dla kogoś z ograniczoną wiedzą Apache, lub kogoś, kto robi to za pierwszym razem. –

+0

Wiem, że to stare pytanie, ale co, jeśli to usługa internetowa .NET MVC hostowana w aplikacji internetowej Azure? Naszym celem jest ograniczenie tego, kto może wywołać usługę do uwierzytelnionych użytkowników SSO (SAML/Shib). – o365spo

3

MatthewMartin mówi, że Shibboleth jest tylko serwerem SAML, Windows Identity Foundation obsługuje SAML, jak wyjaśniono w tym blog post.

+1

Łącza do pobrania CTP są już martwe. – mlhDev

+0

dość pewny, że WIF został wciągnięty do bibliotek DLL dotnet. Wszystkie materiały WS Fed są mieszane z OWIN/Katana –