我正在建设一个社交网站,将向世界暴露REST API (WCF WebAPI),所以任何开发人员将能够为网站创建一个客户端应用程序,集成它与其他服务等。
我想为API实现Facebook/Twitter风格的访问控制机制。这样开发人员就可以在网站的开发者部分注册他们的应用程序,创建一个密钥,并在OAuth工作流程中使用该应用程序密钥来访问应用程序接口。
因为我在这个项目中使用了Azure,所以我考虑利用Azure ACS来促进OAuth过程。但是,我找不到任何使用ACS进行应用程序授权的代码示例或手册。
有没有人可以分享这样的例子,或者至少给我一个自己研究的方向?如果我能用另一个OAuth库(例如DotNetOpenAuth)实现Facebook/Twitter的行为,那也是很酷的。
提前谢谢你。
发布于 2011-10-01 10:12:01
对于这类事情,ACS是一个很好的选择。您的场景相当于OAuth委派,这是ACS支持的。
您应该在以下位置查看带有OAuth 2委派的ACS示例:
https://connect.microsoft.com/site1168/Downloads (称为Wif Oauth CTP版本)
请注意,在此示例中,自定义身份验证用于对用户进行身份验证。由于ACS提供了与Idps的单点登录,因此您可以在此处使用ACS (例如,使用Facebook)。
如果您选择此路径,则可以在以下示例中找到有关如何使用自定义主领域搜索页的详细信息:
http://msdn.microsoft.com/en-us/library/hh127794.aspx
最后,你需要有一个网页,在那里你的客户端应用程序将管理他们的设置。为此,您需要使用ACS管理服务。有关使用ACS管理服务的详细信息,请访问:
http://msdn.microsoft.com/en-us/library/gg185970.aspx
https://stackoverflow.com/questions/7613502
复制相似问题