Shibboleth和.NET

Jos*_*osh 12 asp.net shibboleth

我要求ASP.NET Web应用程序使用Shibboleth进行身份验证.有没有人这样做过?那里有库来支持方法调用吗?或者这只是Java的东西?

Ste*_*dge 8

它绝对不是Java专用的东西,可以在Shibboleth网站上下载Apache模块.

我不知道.NET是否有任何特定内容.

我们前一段时间实现了Shibboleth,我们最初尝试使用Java解决方案 - 这是一场噩梦.java应用程序编写得很糟糕,错误并且记录严重.麻烦之后很麻烦,我们最终决定在专用服务器上使用Apache模块,并将成功通过身份验证的用户转发到我们的Tomcat应用程序上.Apache模块轻松设置,配置和工作.

不知道你是否已经意识到,但Shib文档和网站难以导航 - 这是一个寻找任何有用信息的斗争.我确实去那里寻找.NET实现但放弃了!

如果我们的Java体验是可行的,我会认真建议安装Shibboleth模块的Apache服务器并为自己节省一个痛苦的世界.

这是一个很好的站点,可以在设置后测试Shibboleth安装:http://www.testshib.org/testshib-two/index.jsp

如果你确实找到了一个很好的.NET解决方案,那么我会非常有兴趣听到它.祝好运!


小智 5

我知道这是一个非常古老的问题,但我认为我可以为那些从谷歌找到答案的人做一些更好的扩展.

如上所述,您确实希望配置Web服务器以加载模块.shibboleth的难点在于配置文件,但假设您组织中的其他人使用了shibboleth,您可以使用它们作为模板并且相当容易.

对于基于.NET的身份验证,您需要在IIS中配置Shibboleth.IIS的默认配置创建一个名为/ secure的目录,其下的任何内容都需要shibboleth身份验证(即它将重定向到身份提供程序).您可以将其配置为涵盖其他目录,甚至可以进行延迟身份验证.

获得身份验证后,您可以检查标头以"读取"身份提供商传递给您的信息.IIS的处理方式与Apache不同,但它仍然非常简单.如果您只想要用户名,可以使用HTTP_REMOTEUSER,尽管可能有更好的选择; 即俄亥俄州立大学建议使用eduPersonPrincipalName.