使用OpenRasta进行身份验证

使用OpenRasta进行身份验证

问题描述:

我正在尝试使用OpenRasta进行简单的RESTful服务。此服务需要使用http基本身份验证或(最好)摘要进行保护。使用OpenRasta进行身份验证

环顾净,有几十网页的写作如何精彩OpenRasta是,它甚至支持摘要式身份验证,但我一直没能找到如何使那些或者为我服务的单个实例。

将RequiresAuthentication放在我的方法或处理程序上似乎没有任何作用。

有没有人曾经这样做过?或者它只是一个梦想软件?

UPDATE:我放弃了开始工作,并与OpenRasta的Scott Littlewoods分叉。他改变了身份验证的工作方式并使用他的实现,我设法同时执行了基本和摘要。

我已经整理了一篇小博客文章和示例应用程序,以展示如何使用OpenRasta的当前RTM启用摘要式身份验证。

http://scottondotnet.blogspot.com/2010/10/openrasta-digest-authentication.html

的源代码可以在这里找到:http://github.com/scottlittlewood/OpenRastaDigestDemo

查看OpenRasta.Security中的类。这是一个IAuthenticationProvider,您需要在容器中执行并注册摘要以进入。

检查调试日志,如果在执行此操作后仍不起作用,并将其副本发送到邮件列表中,那里的人员将能够帮助你。

+0

把依赖于IAuthenticationProvider国际奥委会并没有帮助,我的问题已经坐在OpenRasta谷歌组,只要这一个。至少我在这里得到了一些反馈! – Khash 2010-09-14 12:14:48

+0

对不起,我一周没有一台笔记本电脑,并没有像我应该那样密切关注邮件列表。 [RequiresAuthentication]属性将确保该调用仅对通过身份验证的用户(通过IPrincipal的默认.net身份验证)成功。当您注册身份验证提供程序时,HTTP摘要处理程序将启动,否则它不会。 – SerialSeb 2010-09-15 12:41:38

+0

你如何向容器注册?在其他地方,您指向http://trac.caffeine-it.com/openrasta/wiki/Doc/DependencyInjection#Howaboutmyowninterfaces,但不会谈论身份验证。我实现了IAuthenticationProvider,并且我用[RequiresAuthentication]修饰了一个处理程序,所以我得到了提示进行身份验证,但它似乎没有打到我的Authentication类。 – pc1oad1etter 2010-09-29 17:40:05

我认为问题在于使用Cassini(内置于VS.NET)进行调试。 Cassini不支持像IIS那样的身份验证。当我切换到使用IIS时,它开始提示我进行身份验证。