我已經設置了一個帶WIF的STS,並且想要公開用戶是否登錄,以便RP可以確定用戶是否登錄而不需要用戶重定向到STS並返回。如果用戶已登錄,則RP上將出現不同的流程流,因此在此過程中知道但不強制登錄是很重要的。User.Identity.IsAuthenticated在通用的asp.net處理程序中使用
我的計劃是在其上創建STS其中,經由HttpWebRequest的擊打時,返回context.User.Identity.IsAuthenticated(的輸出的簡單的通用處理程序,其中上下文是傳遞到ProcessRequest方法的HttpContext:
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
if (context.User != null && context.User.Identity.IsAuthenticated)
context.Response.Write("True");
else
context.Response.Write("False");
}
我的問題是,如果用戶登錄和我打這個處理直接,它返回true,但如果我編程方式從RP命中處理程序,它返回False(事實上身份爲空)。 上午我只是完全錯誤的在做這個,打從RP處理程序將返回RP上的用戶的狀態或可我做錯了什麼?