首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何为注册并转移到其帐户子域的用户自动登录?

如何为注册并转移到其帐户子域的用户自动登录?
EN

Stack Overflow用户
提问于 2012-06-14 21:44:33
回答 1查看 156关注 0票数 0

我正在构建一个多租户应用程序,其中帐户范围在子域。假设acme.com是我的应用程序,埃尔默是我的用户,当埃尔默在acme.com注册时,他被转移到elmer.acme.com。我想在埃尔默登记后签下他,但我现在很难过。我在用饼干。这是我的签名方法:

代码语言:javascript
运行
复制
  def sign_in(user)
    cookies.permanent[:remember_token] = user.remember_token
    current_user = user
  end

这里是我的Users#create方法的一部分,用户可以在这里注册。

代码语言:javascript
运行
复制
if @user.save
  sign_in(@user)
  redirect_to root_url(subdomain: @user.subdomain)
end

当Elmer还在acme.com的时候,cookie就会被设置好。当Elmer被重定向到elmer.acme.com时,cookie无效。

我可以在我的domain: :all中设置session_store,但这违背了一个要求。这意味着埃尔默将被签署为elmer.acme.combuggs.acme.com,以及本质上的*.acme.com。Elmer的会话cookie只对elmer.acme.com和/或acme.com有效。

知道如何做到这一点吗?我使用Ruby1.9.3运行Rails 3.2。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-14 22:48:09

如果要为用户创建/允许令牌登录,则可以:

  1. 在用户模型
  2. 登录上有一个带有该令牌的令牌(或者重定向到特定的URL,或者在存在令牌时添加到身份验证系统以登录)

示例重定向代码:

代码语言:javascript
运行
复制
if @user.save
  sign_in(@user)
  redirect_to root_url(user_id: @user.id, subdomain: @user.subdomain, token: @user.token)
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11041791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档