2
我有一個Web應用程序,我使用Windows憑據自動登錄。 我現在想要使用我的Windows帳戶在c#windows應用程序中使用此Web應用程序的信息。所以我需要能夠從這個網站獲得session-cookie。 在這裏你可以看到一些我的代碼,在這裏我要檢索的cookie:在C#客戶端應用程序中使用Kerberos票據
string URLAuth = extractParameterFromProperties("relatieBeheer_login_url");
WebClient webClient = new WebClient();
webClient.Credentials = CredentialCache.DefaultCredentials;
// webClient.UseDefaultCredentials = true;
byte[] responseBytes = webClient.DownloadData(URLAuth);
//byte[] responseBytes = webClient.UploadValues(URLAuth, "POST", formData);
string resultAuthTicket = Encoding.UTF8.GetString(responseBytes);
if(resultAuthTicket.Contains("Verkeerde combinatie gebruikersnaam")){
sessionCookie="NoSession";
}else{
WebHeaderCollection cookies = webClient.ResponseHeaders;
sessionCookie = cookies[HttpResponseHeader.SetCookie];
}
當我調試應用程序,我什麼也看不見填充憑據: 域名,用戶名&密碼是空的。
任何幫助將是最受歡迎的。
OK,但你的意思是的DefaultCredentials的確應該發送的Kerberos票然後? – user1370849
@ user1370849我相信他們應該與身份驗證一起發送,但由於安全原因您無法在變量中看到他們。 –
任何我可以解決這個問題的方法。在wireshark中,我沒有看到任何Kerberos票證通過,而當我只是USDàweb瀏覽器時,我可以看到它通過 – user1370849