2013-07-29 15 views
1

規格:YAF - 從主頁驗證用戶

發生了什麼事?

我有一個網站:http://www.mysite.com,並在該網站我設置了YAF,當用戶訪問http://www.mysite.com/forum他們被帶到論壇。

我想要什麼?

當用戶登錄我的網站時,我想爲他們創建一個cookie,以便當用戶訪問http://www.mysite.com/forum時,他們會自動登錄到論壇。

我做了什麼?

當用戶在我的網站上註冊時,爲他們創建了YAF帳戶(工作正常)。 當用戶登錄我的網站時,我對他們進行了身份驗證並創建了一個cookie,但我也想爲論壇創建一個cookie,以便用戶不必單獨登錄論壇。

要爲我這樣做(讓YAF檢測他們作爲登錄)用戶的cookie:我期待,當我訪問http://www.mysite.com/forum

任何人必須現在進行身份驗證

FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, userName, DateTime.Now, DateTime.Now.AddMinutes(30), true, ""); 
    var encryptedTicket = CookieHelper.EncryptTicket(ticket); 
    var cookie = CookieHelper.CreateCookie(encryptedTicket, ".YAFNET_Authentication"); 
    cookie.Path = "/"; 
    cookie.HttpOnly = true; 
    CookieHelper.AddCookie(cookie); 

任何智慧的話語?

--Rich

回答

2

沒關係......

這裏是解決方案:

增加了一節雙方web.config中的具有相同 值。這允許主網站爲YAF網站可以解密的登錄創建加密會話密鑰 。把它放在 部分。將密鑰更改爲您自己的隨機48-十六進制字符 值(我使用RoboForm生成我的密鑰)。

<machineKey validationKey="DBAEF98E532D4161826F8351C794DFD27C0F814262FD6986" 
decryptionKey="DBAEF98E532D4161826F8351C794DFD27C0F814262FD6986" 
validation="SHA1" decryption="AES" /> 

答案在這裏找到:Log in YAF user

希望它可以幫助別人一天。