来自已完成身份验证的网络应用的身份验证

时间:2017-07-13 07:06:05

标签: rest security authentication

我有一个Web应用程序,用户可以在身份验证后登录(用户+密码)。我有另一个应用程序,其中一些REST服务驻留在我想从Web应用程序调用。

由于用户已在Web应用程序中进行了身份验证,因此我认为以下方案可以正常运行:

  1. 当用户登录时,在Web应用程序中创建一个令牌(其中包含过期日期)
  2. 调用REST服务时,可以将此标记放入HTTP标头
  3. REST可以看到标题中有这个特殊标记,因此它知道必须回调Web应用程序以检查标记是否有效
  4. 网络应用程序可以确认/拒绝令牌
  5. 如果令牌有效,则REST服务可以执行HTTP动词(GET,PUT等)
  6. 如果无效,则使用HTTP错误代码检索
  7. 我知道有一些已经实现的身份验证协议(如OAuth)可以执行相同的操作但场景看起来很简单,无需添加任何不必要的基础架构等即可实现它。

    你认为它能奏效吗?如果可以,我应该注意什么? 如果不能为什么不呢?你可以推荐什么?

    很抱歉这个问题很多! :)感谢您的帮助!

    此致 诉

1 个答案:

答案 0 :(得分:0)

如果其他服务应用程序与您的Web应用程序位于同一子域中,并且如果Web应用程序在身份验证后使用会话,为什么不将其传播到其他服务应用程序?您只需在休息应用中配置相同的会话cookie即可。这样,身份验证是自动的,并且没有创建和维护令牌的开销。更重要的是,它可以节省您的开销并提高性能,因为您不必每次都有回调验证令牌。