2012-03-21 40 views
0

我有一個asp.net網站http://www.site.com。此網絡應用程序也在http://subdomain1.site.comhttp://subdomain2.site.com上運行。現在,我想設置身份驗證cookie以這樣的方式http://site.comhttp://www.site.com共享認證Cookie,但它不應該被http://subdomain1.site.com共享。類似地,http://www.domain1.site.comhttp://domain1.site.com應該共享Cookie,但它不應該被http://domain2.site.comhttp://www.domain2.site.com共享。我如何處理這與asp.net?驗證cookie與子域

回答

0

我結束了使用不同的域不同的cookie名稱作爲this article

1

默認情況下,Cookie與特定的域相關聯。例如,如果您的網站是www.contoso.com,則當用戶請求該網站的任何頁面時,您寫入的Cookie將發送到服務器。 (這可能不包括帶有特定路徑值的Cookie。)如果您的站點有子域,例如contoso.com,sales.contoso.com和support.contoso.com,那麼你就可以用餅乾特定子域相關聯。

Response.Cookies["domain"].Domain = "support.contoso.com"; 

正常情況下,在contoso.com上設置的cookie將被所有子域訪問。但如果您想限制Cookie的子域,則應手動爲每個您希望其訪問的域設置域屬性。

問候。

+0

日Thnx鄰省描述,我會試試這個。應該將端口作爲域的一部分? – 2012-03-21 08:01:39

+0

我沒有看到'HttpCookie'object – 2012-03-21 10:07:51

+0

哎呀對不起端口實際上是不適用於web.httpcookie ..但端口應該是域的一部分.. http://www.cookiecentral.com/faq/#任何端口屬性3.2 – 2012-03-21 11:32:12