用Ruby on Rails通过HTTP头文件进行自定义授权

4

我有两个内部的Rails服务,它们需要相互通信。我需要建议如何使其足够安全并且尽可能少地付出努力。

目前,服务A向服务B发送Authorization HTTP标头,其中包含秘密令牌。简单的基于HTTP Token的方法,没有什么特别之处。但是我还需要以某种方式传达用户令牌,以便服务B知道哪个用户正在与其交谈。

我的当前解决方案如下:

  1. 发送Authorization Token token=blabla user_token=blabla2
  2. 使用Rails中现有的方法进行解析
  3. 通过提供的user_token来识别用户
  4. 受此StackOverflow帖子的启发

备选方案:

  1. 像这样使用Amazon wayAuthorization: MY-APP-V1 Token=blabla Credential=user_token,但我需要自定义解析器。
  2. 自定义HTTP头像X-USER-TOKEN,但RFC似乎不支持这个想法。
  3. 您的建议或建议。

非常感谢您的任何帮助。

1个回答

1
我很好奇为什么用户令牌不足够,您能详细说明一下吗?
但是假设您想继续使用双令牌方法,可以使用类似JWT的东西来使用秘密令牌对用户令牌进行编码。这样,您只需要一个令牌,并且可以简单地发送它作为Authorization: Bearer xxxxxx

谢谢你的回答。 秘密令牌在服务之间的通信中扮演着安全认证的角色。并非所有API端点都需要用户令牌。 用户令牌在这里扮演授权的角色。 - Andrii Skaliuk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接