2011-06-08 94 views
1

我想做一个简单的可扩展的网络系统,并且在查看了一下后,似乎表单身份验证使用cookie是我正在寻找的内容,因为我不需要会话用于存储登录相关数据。Asp Mvc 3&Ninject - 授权属性+ FormsAuthentication的cookie

我最近在系统的那个部分探测过,发现授权属性没有做任何事情。在环顾网络之后,Ninject似乎正在引发这个问题,因为它不能正确处理属性。

现在,如果是这种情况,它不允许我使用内置的身份验证机制我怎么才能获得相同的功能,授权通常会给我,而不必编写我自己的身份验证系统?

目前看起来我必须制作我自己的CustomAuthorizationAttribute,然后制作一个过滤器,我很乐意这样做,但我无法找到如何让这个按照FormsAuthentication机制。此外,这似乎只能在控制器级别上工作,而不是在操作级别上。

回答

0

我使用Ninject + MVC3 +授权属性与ASP.NET表单身份验证使用Cookie。一切正常。

你是什么意思的“授权属性没有做任何事情?”你有没有在你的web.config文件中设置你的会员供应商?

+0

我读到,当使用Ninject作为控制器工厂时,它不能使用[Authorize]属性,所以我只是让自己的简单Cookie读取器来模仿它。 – somemvcperson 2011-06-19 19:44:04

1

我刚才有类似的问题(这是我如何找到你的问题)。

经过一番谷歌搜索后,我试着将我的IKernel设置代码从Global.asax移动到App_Start\NInjectMVC3.cs,它奇迹般地工作。

虽然我不确定是什么导致了最初的问题。