【发布时间】:2012-05-23 11:43:57
【问题描述】:
我有一个使用 Windows 凭据自动登录的网络应用程序。 我现在想使用我的 Windows 帐户在 c# windows 应用程序中使用来自这个 web 应用程序的信息。因此,我需要能够从该网站获取会话 cookie。 在这里你可以看到我的一段代码,我想在其中检索 cookie:
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];
}
当我调试应用程序时,我看不到凭据中没有填写任何内容: 域、用户名和密码为空。
欢迎任何帮助。
【问题讨论】:
标签: c# webclient kerberos single-sign-on