Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 跨不同域的表单身份验证_Asp.net_Forms Authentication_Session Cookies - Fatal编程技术网

Asp.net 跨不同域的表单身份验证

Asp.net 跨不同域的表单身份验证,asp.net,forms-authentication,session-cookies,Asp.net,Forms Authentication,Session Cookies,我知道有很多关于这方面的讨论,但我仍然不清楚这一点。我有一个网站www.all.com和www.bll.com。请注意,它们是两个不同服务器上的两个不同网站 它们都使用表单身份验证。如果我在两个网站的web.config中使用相同的验证密钥和解密密钥,为什么我不能在这两个网站之间共享Auth Cookie?我已经读到授权cookie只能在子域之间共享 用户登录www.all.com,我对用户进行身份验证,并将auth cookie添加到响应中,并将其重定向到www.bll.com的安全页面。现在

我知道有很多关于这方面的讨论,但我仍然不清楚这一点。我有一个网站www.all.com和www.bll.com。请注意,它们是两个不同服务器上的两个不同网站

它们都使用表单身份验证。如果我在两个网站的web.config中使用相同的验证密钥和解密密钥,为什么我不能在这两个网站之间共享Auth Cookie?我已经读到授权cookie只能在子域之间共享

用户登录www.all.com,我对用户进行身份验证,并将auth cookie添加到响应中,并将其重定向到www.bll.com的安全页面。现在bll.com应该能够解密auth cookie,并在bll.com中对用户进行身份验证。为什么这是不可能的


如果重定向到其他域,验证cookie作用域是否结束?

您不能这样做。你为什么不用一个加密的querystring标记将它们安全地重定向到
bll.com
,识别它们是谁,然后使用
bll.com
逻辑将它们登录?你似乎误解了子域。www.all.com和www.bll.com在任何方面都不是子域。www.all.com和www2.all.com都是all.com的子域。您可能会看到关于跨子域的cookie身份验证。但它无法解决您的问题,这是由openid等机制解决的