【问题标题】:Token based authentication in Hyperstack?Hyperstack中基于令牌的身份验证?
【发布时间】:2019-09-03 12:33:26
【问题描述】:

我对 hyperstack 身份验证的理解是,它依靠会话来持久化用户的 id,用于获取 acting_user

如果我想从 Rails 会话中分离,并使用基于令牌的身份验证,如何设置 Hyperstack 传输以在每个请求中包含一个令牌?

基本上我要问的是如何发送一个令牌,以便它在acting_user 调用中可用。

class ApplicationController < ActionController::Base
  def acting_user
    claim = JsonWebToken.verify(params[:token], key: some_key)
    @current_user ||= claim[:ok] && User.find(claim[:ok][:user_id])
  end
end

params[:token] 是根据请求从客户端传递的。

【问题讨论】:

    标签: javascript ruby reactjs hyperstack


    【解决方案1】:

    我不是 100% 确定这从未使用过令牌授权,但看看这篇好文章,我相信它应该“正常工作”,除了你将授权进入标题。您将在 ApplicationController 中实现您需要的任何东西,并且您可以在登录 ControllerOp 中访问它。只要确保你设置了acting_user

    https://www.pluralsight.com/guides/token-based-authentication-with-ruby-on-rails-5-api

    从客户端到服务器的所有通信都通过 ServerOp 类,因此您必须修补该类以添加授权。

    很简单:https://github.com/hyperstack-org/hyperstack/blob/edge/ruby/hyper-operation/lib/hyper-operation/server_op.rb

    仅供参考,有一个 github 问题可以添加一个钩子以使这更容易:

    https://github.com/hyperstack-org/hyperstack/issues/168

    【讨论】:

      猜你喜欢
      • 2021-01-25
      • 2016-01-23
      • 2016-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-19
      • 2013-02-11
      • 2010-12-24
      相关资源
      最近更新 更多