2009-11-04 81 views

回答

1

布萊恩說的是真的。在經典模式下,您將通過雙重身份驗證過程。也就是說,IIS首先對您進行身份驗證,然後ASP.NET會對您進行身份驗證。在經典模式下,IIS身份驗證可能設置爲匿名,在這種情況下,IIS將在該字段中不記錄任何內容。如果打開集成管道,認證只發生一次 - 並在IIS管道內。這意味着IIS可以將數據寫入cs-username字段。

5

cs-username對ASP.NET /表單身份驗證一無所知,反之亦然......您在IIS中啓用了匿名訪問,是嗎?這就是爲什麼沒有cs-username輸出。

0

我認爲你必須將asp.net LOGGIN保存在HEADER變量中,並使用na ISAPI過濾器來獲取這些信息並保存在IIS_LOG上。

0

您可以執行以下操作並將其設置爲IIS日誌cs-username。

public WebApiApplication() 
{ 
    this.AuthenticateRequest += WebApiApplication_AuthenticateRequest; 
} 

void WebApiApplication_AuthenticateRequest(object sender, EventArgs e) 
{ 
    HttpContext.Current.User = new GenericPrincipal(new GenericIdentity("SET THE USER INFO HERE"), null); 
} 
相關問題