我正在开发一个Web应用程序,它实际上由两个应用程序组成。一个应用程序称为account
,处理与用户帐户相关的所有事务,例如帐户的身份验证,注册和管理。我还有一个应用程序,我们只需拨打web
。
问题是account
使用SSL / TLS侦听https://account.domain.com,并且网络侦听http://www.domain.com。
我有哪些选项可让人们登录并验证account.domain.com
,然后将其重定向到www.domain.com
,然后他们才真正登录。据我所知,您可以&# 39;在account.domain.com
上设置Cookie,然后让它在domain.com
上运行,因为这会带来安全风险。
有关我的应用程序的一些背景细节:
用Go编程语言编写。
使用Gorilla Toolkit进行大多数HTTP / HTTPS接口,URL路由和处理POST / GET参数。
两个应用程序都存在于同一个虚拟服务器上。
我正在寻找的是一种安全的方式来验证和管理跨域domain.com
的所有子域的会话。我不是特别精通这个主题,所以除了设置cookie之外,我不太了解。
答案 0 :(得分:2)
我对大猩猩不太熟悉,但是应该这样做:
var store = sessions.NewCookieStore([]byte("something-very-secret"))
func init() {
store.Options = &sessions.Options{
Domain: "domain.com", //this
HttpOnly: true,
}
}
基本上,您只需将Cookie的域名设置为.domain.com
(前缀为.
),https://stackoverflow.com/a/1063760/145587
//修改
据@Volker说,不需要点(见评论)。