如何使用 asp.net-web-api 实现授权?asp.net-mvc授权和asp.net-web-api授权有多少区别?
问问题
562 次
2 回答
1
在 MVC 中,您可以简单地[Authorize]
在控制器上方添加方法或类来控制受保护的页面。或者为了防止伪造,您可以[ValidateAntiForgeryToken]
在视图和控制器上使用。它将使用 MachineKeys 来评估相关用户。Asp.net Web API 和 MVC 平台之间没有区别。但是 MVC 平台和网页之间存在一些差异。您还可以在 Web.config 文件中使用授权。
- Asp.net MVC 中的 2 种授权类型是:
于 2012-12-25T08:59:27.777 回答
1
您应该首先将授权和身份验证逻辑分开。您可以通过消息处理程序以与主机无关的方式执行身份验证,并通过操作过滤器执行授权。
查看PingYourPackage项目,它是一个示例 ASP.NET Web API 应用程序。您可以在那里看到基本的身份验证消息处理程序。Thread.CurrentPrincipal
如果请求已通过身份验证,则此处理程序为请求设置。
另外,请查看用于AuthorizaAttribute
执行授权的控制器。AuthorizaAttribute
检查执行Thread.CurrentPrincipal
授权。
于 2012-12-25T10:21:16.747 回答