asp.net-web-api – 使用多种授权方案(HMAC和OATH)
好的,我有一个用于/ token请求的WebAPI Auth服务,并将Bearer令牌返回给客户端,我已经为属性添加了AppId和Api Key,所以我回来了
{ "access_token": "...","token_type": "bearer","expires_in": 86399,"dm:appid": "1","dm:apikey": "...",".issued": "Wed,01 Jul 2015 20:46:45 GMT",".expires": "Thu,02 Jul 2015 20:46:45 GMT" } 客户端应使用AppId和Api密钥为每个请求生成Hmac SHA256签名. 在我的控制器上,我使用了Authorize属性并创建了一个实现IAuthenticationFilter的HmacAuthentication属性 [RoutePrefix("api/account")] [Authorize] [HmacAuthentication] public class AccountController : ApiController { // rest of controller here } 我遇到的问题是,对该控制器的任何请求都需要Authorization:Bearer …头和HmacAuthentication属性也需要Authorization:amx头. 现在我知道你只能拥有一个Authorization标头,所以我的quandry是如何在不破坏HTTP的情况下实现两个Authorization标头,是否有人实现了OWIN OAuth和HMAC认证的使用 我跟随了Taiseer Joudeh的这些例子 Token Based Authentication using ASP.NET Web API 2,Owin,and Identity 解决方法
这已经很长一段时间没有答案了,因为我已经解决了我的原始问题,我想我应该在这里发布解决方案,以便其他人可以使用它.
最后,解决方案是在评论中添加一个自定义标题,如@Glaucus.对于标准OAuth授权,我添加了Authorize标头属性.为了满足我对HMAC的需求,我只是在标题中添加了X-Authorize属性,并修改了我的代码以使用此标头. 现在,我可以通过OAuth令牌和对请求实施HMAC授权来保护WebAPI服务 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-core – Namespace .AspNetCore.Hosting vs .Exten
- asp.net-mvc-3 – 如何在控制器方法的新选项卡中打开cshtml
- asp.net-mvc – MVC调用Html.Action在区域内?
- 集训第六天:文件上传漏洞
- asp.net-mvc – 已经使用相同的参数类型定义了一个名为“Cr
- asp.net-mvc – ASP.NET MVC RadioButtonListFor始终是预设
- asp.net-mvc – 路由在Asp.net Mvc 4和Web Api
- asp.net – 避免使用CORS进行预检OPTIONS请求
- 有什么好的参考或工具可用于将ASP转换为ASP.NET?
- 如何从ASP.NET Web API返回已排序的字典
- 嵌套字典到嵌套转发器asp.net c#
- asp.net-mvc-4 – .Net MVC4显示错误的视图(.mob
- asp.net – IIS 7.5中的URL重写会导致内部服务器
- 以编程方式从webforms页面调用asp.net mvc控制器
- asp.net-mvc – 使用Asp.Net MVC的Ajax?
- asp.net-mvc – MVC4是否被烘烤到.NET 4.5?
- IIS7上的ASP.NET身份验证问题 – 对于Windows身份
- asp.net-mvc – NLog在所有aspnet布局渲染器上抛
- 清除ASP.NET临时文件缓存的麻烦
- asp.net – UserControl有IsPostBack,但是Contro