2009-08-21 27 views
11

Tôi đã có yêu cầu rằng một ứng dụng web ASP.NET sử dụng Shibboleth để xác thực. Có ai làm điều này trước khi? Có thư viện nào để hỗ trợ các cuộc gọi phương thức không? Hay đây là một điều duy nhất của Java?Shibboleth và .NET

+3

Tôi nghĩ Shibboleth là một trong những vị thần cao tuổi hơn. Rõ ràng anh ta xác thực mọi người? – quillbreaker

+2

Tôi sẽ quan tâm nếu bạn đã tìm thấy một giải pháp .NET cho việc này. –

+0

Tôi đã không làm điều này cho. NET, nhưng bạn có thể nhận được một số ý tưởng đọc thông qua thực hiện mục tiêu-C của tôi cho iPhone. –

Trả lời

8

Đó chắc chắn không phải là điều duy nhất trong Java, có một mô-đun Apache có sẵn để tải xuống trên trang web Shibboleth.

Tôi không biết liệu có bất kỳ điều gì cụ thể cho .NET không.

Chúng tôi đã thực hiện Shibboleth một thời gian trước và ban đầu chúng tôi đã cố gắng sử dụng các giải pháp Java - đó là một cơn ác mộng. Các ứng dụng java đã được viết sai, lỗi và tài liệu bị lỗi. Đó là rắc rối sau khi rắc rối và cuối cùng chúng tôi quyết định sử dụng mô-đun Apache trên một máy chủ chuyên dụng và chuyển tiếp người dùng đã được xác thực thành công vào ứng dụng Tomcat của chúng tôi. Mô đun Apache dễ dàng cài đặt, cấu hình và hoạt động.

Không biết nếu bạn đã nhận ra nhưng tài liệu và trang web của Shib là cực kỳ khó điều hướng - đó là cuộc chiến để tìm bất kỳ thông tin hữu ích nào. Tôi đã đi và tìm một thực hiện NET trên đó nhưng đã từ bỏ!

Nếu kinh nghiệm Java của chúng tôi là bất cứ điều gì để đi theo tôi nghiêm túc đề nghị thiết lập một máy chủ Apache với mô-đun Shibboleth cài đặt và tiết kiệm cho mình một thế giới của đau đớn.

Đây là một trang web tốt để thử nghiệm Shibboleth bạn cài đặt một khi bạn có nó thiết lập: http://www.testshib.org/testshib-two/index.jsp

Nếu bạn không tìm thấy một giải pháp NET tốt sau đó tôi sẽ rất quan tâm để nghe về nó. Chúc may mắn!

5

Tôi biết đây là một câu hỏi thực sự cũ, nhưng tôi nghĩ tôi có thể làm tốt hơn một chút để mở rộng cho những người đang tìm câu trả lời từ Google.

Như đã đề xuất ở trên, bạn thực sự muốn định cấu hình máy chủ web của mình để tải mô-đun. Phần cứng của shibboleth là tập tin cấu hình, nhưng giả sử một số khác trong tổ chức của bạn đã sử dụng shibboleth, bạn có thể sử dụng chúng như một khuôn mẫu và nó khá dễ dàng.

Để xác thực dựa trên .NET, bạn cần phải configure Shibboleth in IIS. Cấu hình mặc định cho IIS tạo thư mục có tên/an toàn và mọi thứ được đặt dưới đó sẽ yêu cầu xác thực shibboleth (nghĩa là nó sẽ chuyển hướng đến nhà cung cấp nhận dạng). Bạn có thể cấu hình nó để bao gồm các thư mục khác hoặc thậm chí làm xác thực lười biếng.

Khi bạn có phần xác thực tại chỗ, bạn có thể kiểm tra tiêu đề để "đọc" thông tin mà nhà cung cấp nhận dạng đang chuyển cho bạn. IIS xử lý mọi thứ một chút khác nhau sau đó Apache, nhưng nó vẫn khá dễ dàng. Nếu bạn chỉ muốn tên người dùng, bạn có thể sử dụng HTTP_REMOTEUSER mặc dù có thể có các tùy chọn tốt hơn; tức là Ohio State University recommends using the eduPersonPrincipalName.

+0

Đây là những gì tôi đã làm với Shibboleth. Cấu hình duy nhất là XML Shibboleth và mẫu Discovery. Tôi đồng ý, tài liệu này là khó khăn đối với một người có kiến ​​thức Apache hạn chế, hoặc ai đó làm việc đó lần đầu tiên. –

+0

Tôi biết đây là một câu hỏi cũ, nhưng nếu đó là dịch vụ web .NET MVC được lưu trữ trên ứng dụng Azure Web? Mục tiêu của chúng tôi là hạn chế những người có thể gọi dịch vụ cho người dùng đã xác thực SSO (SAML/Shib). – o365spo

3

Như MatthewMartin nói rằng Shibboleth chỉ là máy chủ SAML, Windows Identity Foundation hỗ trợ SAML như được giải thích trong số blog post này.

+1

Các liên kết để tải xuống CTP hiện đã chết. – mlhDev

+0

khá chắc chắn WIF đã được kéo vào dll khung dotnet của. Tất cả các công cụ của WS Fed được trộn lẫn với OWIN/Katana –