跨本地资源共享身份验证

时间:2014-05-11 12:08:25

标签: ruby authentication architecture oauth

我的网络应用程序有一个主站点,它使用Oauth通过第三方服务登录(在这种情况下,它是Github)。为了保留登录状态,访问令牌存储在会话中。到目前为止一切都很好。

应用程序的一部分进行后台处理。引用the 12-factor App,听起来我应该将这部分拆分为它自己的资源(本质上是一个单独的应用程序),并通过HTTP发送请求(异步)处理(参见Backing Resources)。

问题是,该部分还需要访问第三方服务。如何安全地为其提供访问令牌?

如果它有用,我正在使用Sinatra和一些Ruby Gems(Rest-Client,Octokit等)。

1 个答案:

答案 0 :(得分:0)

经过一系列的研究,我确定最好的办法就是在Rest请求的消息体中发送令牌。

我认为这是不安全的,但它并不比Github的请求更不安全,它首先为您提供了访问令牌。当然,使用TLS(https)来阻止令牌被拦截很重要。

以下是Oauth2 Bearer令牌的一系列安全建议:

http://self-issued.info/docs/draft-ietf-oauth-v2-bearer.html#anchor6