2

我有一个使用 jquery 从 Web 表单应用程序调用的 asp.net Web api 服务。我正在使用基于表单的身份验证和 AuthorizeAttribute 仅允许某些角色访问数据。

我的 web api 上有一个方法 .. Get 需要一个 id,我不喜欢经过身份验证的用户可以计算出 URL 并浏览数据库中的数据的想法。是否可以验证调用 web api 的客户端?因此,如果我从我的 jquery 代码调用 web api,它可以工作,但是如果有人在浏览器中输入 URL,它会拒绝访问?

感谢您的帮助.. web api 太棒了!我只需要驯服它的观众。

4

1 回答 1

0

您始终可以使用 jQuery 用于调用 Web API 方法的 api 密钥,并使用 MessageHandler 来验证该密钥(如这里讨论的那样,http://www.strathweb.com/2012/05/implementing-message- handlers-to-track-your-asp-net-web-api-usage/)。但是,我认为 Web API 方法还应该在返回数据之前验证经过身份验证的用户是否可以访问给定的 ID。

问候,巴勃罗。

于 2013-03-06T13:33:53.273 回答