oauth - MVC4 Web API 的身份验证

标签 oauth asp.net-web-api oauth-2.0

我正在尝试保护我的 MVC4 Web Api。实际上,我真的需要一个具有一些安全性的身份提供者。我的服务类似于 twitter,从安全的角度来看,没有很多私有(private)数据,但服务确实需要知道调用者的用户 ID。

同样重要的是要知道 Web 服务现在只能由移动设备使用,尽管网站可能会在 future 某个时候伴随它。

所以。和互联网把我带到了 Thinktecture.IdentityModel,但它看起来很复杂,我可以找到零文档或样本。在基于声明的身份验证方面,我还没有愉快的经历。我没有声明服务器、 token 提供程序或类似的东西,您似乎需要它才能使用此方法。对于我的情况来说,这一切似乎都太沉重了。

我还阅读了有关实现自己的 HMAC 解决方案 (https://github.com/cuongle/WebAPI.Hmac) 或使用 OAuth (https://github.com/maksymilian-majer/DevDefined.OAuth) 的人,但这些也是看起来有点复杂(我读过没有帮助类的 OAuth 足以让最好的开发人员哭泣,而我不是最好的)。 Janrain 看起来可能会起作用,但看起来您每年必须为超过 2,500 个经过身份验证的用户付费......

为 Web Api 实现简单例份提供者和安全性的最佳方法是什么?

谢谢!

最佳答案

Create an OAuth 2.0 service provider using DotNetOpenAuth 之前,我曾尝试回答与此类似的问题。我在其中强调了 Thinkecture 标识 服务器 . Setup instructions不太难(恕我直言)安装视频是here并且应该有很大帮助。

我也用这个更新了我的旧答案,但这里还有一个相当轻量级的 O-Auth 2.0 实现示例示例代码 here http://code.google.com/p/codesmith/downloads/detail?name=OAuth2.zip&can=2&q=#makechanges

您是否也在这里阅读过这个清晰的问题 Authenticating requests from mobile (iPhone) app to ASP.Net Web API (Feedback requested on my design)

关于oauth - MVC4 Web API 的身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12946256/

相关文章:

api - 具有单个服务器的 OAuth 2.0

iphone - Oauth 和 Twitter API 的起点(用于 iOS 开发)

asp.net-mvc - 将 AuthenticationResult 转换为 MVC session

java - 即使禁用安全性,OAuth token API 也无法在 Elastic Search 中工作

python - 我使用 python(django 框架)从 google api 获取请求 token ,但请求 token 总是返回空的

c# - 增加 Web Api OWIN 自主机中的请求 header 限制

android - 使用 oAuth 的 RESTful Web 服务用于移动应用程序

oauth - 如何获取虚拟谷歌访问 token 来测试 oauth google api

c# - 如何保护 ASP.NET Web API

ssl - 在本地机器的 https 中自托管 Web api 时如何配置 SSL