2 足 OAuth 和 REST

Posted

技术标签:

【中文标题】2 足 OAuth 和 REST【英文标题】:2-legged OAuth and REST 【发布时间】:2011-05-13 11:53:42 【问题描述】:

我想在我公司的 Intranet 中的 Internet 上放置一个 Web 服务,以使合作伙伴能够访问该 Web 服务提供的信息。 目前,Web 服务位于 SOA 中,我决定将所有内容都迁移到 RESTful Web 服务中,因此采用面向 Web 的架构。 我正在考虑执行此操作时应该考虑的一些安全方面。

我不知道哪种解决方案对我来说更有用。 我已经查找了 HMAC、OAuth 信息,但我想知道是否可以使用 OAuth,而不介绍第三方。

例如,合作伙伴想登录网站,然后继续导航,2-legged OAuth 对我的需求有用吗? 是否有其他有用的安全解决方案来执行此操作?

非常感谢。

【问题讨论】:

【参考方案1】:

是的,OAuth 支持“2-legged”案例;只需省略 oauth_token 参数,然后根据需要使用 HMAC-SHA1(共享密钥)或 RSA-SHA1(公钥)。值得注意的是,签名并不涵盖 API 客户端可能发送的所有内容。它不包括 PUT 请求的主体或不是表单提交的 POST 请求的主体。

您可能只想使用 HTTPS + 基本身份验证进行调查,因为这可以让您利用许多现成的软件(Apache 或同等软件),而无需将签名库引入您的客户端和服务器。

【讨论】:

以上是关于2 足 OAuth 和 REST的主要内容,如果未能解决你的问题,请参考以下文章

获得使用 Java 或 Groovy 填充的有效 oauth_signature 的绝对最少代码?

获得使用 Java 或 Groovy 填充的有效 oauth_signature 的绝对最少代码?

OAuth 2.0 两腿身份验证与 SSL/TLS

四足蜘蛛机械人

四足蜘蛛机械人

四足机器人SOLO技术详解--目录翻译