当前位置:  开发笔记 > 编程语言 > 正文

使用OpenID进行Web服务身份验证

如何解决《使用OpenID进行Web服务身份验证》经验,为你挑选了1个好方法。

我将为一个新的公共网站开发REST-ful Web服务.Web服务背后的想法是让第三方为业务逻辑开发功能齐全的UI.

出于安全原因,我希望避免用户将我们的服务密码提供给第三方应用程序.(也许这不应该是一个大问题?)相反,我希望在我们的网站上实现某种登录系统,为第三方应用程序提供身份验证令牌,但保持实际密码不在他们手中.

这让我觉得OpenID可能是一个潜在的解决方案.在我看来,它应该工作:实际的密码由OpenID提供商处理,因此它不在第三方应用程序.我认为问题可能在于各种各样的障碍,但这应该是可以控制的.

但是,有一个令人惊讶的缺乏Googleable信息,所以我想SO的意见.有没有人之前实现过类似的系统?它甚至可能吗?这值得吗?



1> 小智..:

我完全同意你想要的是OAuth; 我说曾经在OAuth和OpenID系统上工作过.我也曾经在你的船上几次,不得不开发一个REST Web服务api.

有关OAuth的一个非常好的想法,以及为什么它是您想要的,请参阅这些附加文章:

这些必须阅读,有四个部分全部阅读:http: //hueniverse.com/oauth/guide/

RFC,阅读上面阅读,因为它对大多数人来说可能有点令人生畏:http: //oauth.net/core/1.0

最后可能还有一些代码.我有几个托管的项目正在使用Java/Groovy来执行OAuth.一个是普通的旧OAuth客户端,另一个是与NetFlix进行特定交互的客户端. http://www.blueleftistconstructor.com/projects/

如果你对REST相对缺乏经验(你还没有建立一个完整的web api)我会建议你购买(或者更好地让你的老板去)Richardson&Ruby的"RESTful Web Services".这是一本O'Reilly的书.我可以说这是他们在过去几年首次登场的好书之一.

查看一些基于RESTful OAuth的API也可能有所帮助.NetFlix API是一个很好的例子:http://developer.netflix.com/docs

祝你好运,编码愉快!

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有