我们得到我们新的MVC项目离地面,并试图(通过操作过滤器最好),以解决身份验证和授权的担忧。我们的角色将作为AD组(已经为我们确定)出现,因此我们所需要做的就是读取用户所在的组(来自标识)。如果您在其中一个组中,则认为您已通过身份验证,并且适当的授权取决于操作/控制器(某些角色可以执行某些操作)。使用自定义会员供应商有没有实际好处?有没有一种方法可以进行全局身份验证(因为我们使用的是集成安全性,没有登录信息,如果您没有进行身份验证,则无法访问任何页面),因此我们不必每次都在身份验证标签上控制器?有人可能有链接的示例实现吗?认证/授权的ASP.NET MVC项目
2
A
回答
4
使用自定义成员资格提供程序对 有实际好处吗?
是的。我发现默认的membeship提供者不适合大多数情况下我们的需求。
老实说,使用它比处理非常简单的定制工作更痛苦。
这并不意味着你不应该使用身份,只需插入身份并继续使用它。
有没有一种方法,我可以在全球 身份验证(因为我们使用的 集成的安全性,也没有登录 如果 你没有权威性,你不能访问任何页面),所以我们止跌”没有 将[Authenticate]标签放在每个 控制器上?
对我来说最好的选择是将[Authenticate]应用到基础控制器并从中继承你的。
如果您可以编写自定义HttpHandler /模块或插入ControllerFactory。
但它不值得。
另一件事是,可能不同的控制器需要不同的角色,所以在这种情况下,你需要应用[授权(角色=“A,B,C,d”)]的每一个。
是否有示例实现 有人可能有链接?
无法发布适合您的示例(在NDA下)。但是根据你所描述的,你确实需要做的事情很少。只需应用[Authenticate]属性即可。
0
适当授权取决于动作/控制器(某些角色可以做某些事情)上。
我第二基地控制器的德米特里的想法。一旦您通过AD验证用户,您可以将其组名写入cookie中,然后在基本控制器中读取它。你可以把你的组角色映射放在一个XML文件或其他东西中。我这样做:在基本控制器中,我重写了OnActionExecuting方法,并在那里找出他们要求的动作和控制器,然后根据缓存的XML角色映射对其进行检查,并且如果允许用户那么我让方法继续,否则,我将它们重定向到某处。
相关问题
- 1. ASP.Net MVC声明授权和认证
- 2. asp.net认证和授权
- 3. asp.net webservices认证/授权
- 4. Asp.Net MVC授权选项
- 5. REST认证/授权
- 6. ASP.Net/MVC授权Vs的身份验证
- 7. ASP.NET MVC多个不同组的用户 - 授权/认证
- 8. ASP.NET Web API问题 - 授权/认证
- 9. ASP.NET MVC 3身份验证/授权
- 10. Laravel授权认证
- 11. SVN认证和授权
- 12. Java Web认证和授权
- 13. .Net授权/认证理念
- 14. ASP.NET MVC:[授权]的对面
- 15. asp.net的MVC授权问题
- 16. Strongloop的授权和认证
- 17. 查找在ASP.NET MVC项目上使用的授权框架
- 18. Web服务授权认证
- 19. ASP.Net身份验证和授权选项
- 20. SOA服务认证/授权
- 21. diff认证/授权机制
- 22. ASP.NET MVC 3定制授权
- 23. Asp.net MVC授权属性
- 24. ASP.NET MVC授权过滤
- 25. ASP.NET MVC授权 - 自定义?
- 26. 使用ASP.NET MVC授权Twitter
- 27. ASP.NET MVC - 授权重构
- 28. ASP.NET MVC自定义授权
- 29. ASP.NET MVC 2授权问题
- 30. ASP.NET MVC网站授权