首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果用户是在应用程序中创建的,如何在WebApi上授权用户

如果用户是在应用程序中创建的,如何在WebApi上授权用户
EN

Stack Overflow用户
提问于 2015-04-14 06:21:55
回答 1查看 534关注 0票数 1

我有一个带有webapi控制器的MVC应用程序。

当用户被授权时,他可以访问应用程序中的所有mvc [Authorize]控制器操作。但是,由于某些原因,当我在位于我的应用程序[Authorize]用户上的WebApi控制器上设置属性authenicated时,服务器将返回用户401 Unauthorized

代码语言:javascript
运行
复制
 [Authorize]
 public class FilesController : ApiController

通过对找出的研究,认为WebApi的[Authorize]属性实际上是System.Web.Http.AuthorizeAttribute,而对于mvc控制器则是System.Web.Mvc.AuthorizeAttribute

如果用户是在mvc >控制器级别被授权的,那么是否有任何方法来设置应用程序,以便他也能获得webapi的授权?

我试图将WebApi属性更改为[System.Web.Mvc.Authorize],但这不是要工作的接缝。

看起来我必须做一些类似于的事情,使用这个图书馆,你有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2015-04-14 06:38:39

我看不出在MVC和Web中将用于身份验证/授权的筛选器放在单个筛选器中的好方法,因为它们有非常不同的行为。对于MVC请求,当用户授权失败时,您希望将它们重定向到另一个页面,或者以另一个用户的身份登录,或者只是让他们知道他们没有访问该页面的权限。对于Web API请求,当用户授权失败时,您希望发送一个HTTP状态代码,该代码指示授权失败并让客户端处理它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29620439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档