我在我的应用程序上使用了ActinCable,我在授权方面遇到了问题。目前,actioncable尝试重复授权网站上的每个人。
这将在我的日志中返回An unauthorized connection attempt was rejected
的常量流。现在,这是因为访问未登录的人也试图获得访问权。
我的connection.rb
看起来像这样:
module ApplicationCable
class Connection < ActionCable::Connection::Base
identified_by :current_user
def connect
self.current_user = find_verified_user
end
protected
def find_verified_user
if current_user = User.find_by(id: cookies.signed[:user_id])
current_user
else
reject_unauthorized_connection
end
end
end
end
现在我想知道我是否可以做到这一点,只有登录的人才会尝试获得connnection.rb
的授权,而不是每个使用该网站的访问者。我对ActionCable太熟悉了解如何限制它 - 而ActionCable的文档仍处于早期阶段。
答案 0 :(得分:3)
连接尝试是在调用ActionCable.createConsumer()
时。您应该尝试仅在用户登录时调用它。