在 C# 客户端应用程序中使用 Kerberos-ticket
本文关键字:Kerberos-ticket 应用程序 客户端 | 更新日期: 2023-09-27 18:35:09
我有一个Web应用程序,我可以使用我的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];
}
当我调试应用程序时,我可以看到凭据中没有填写任何内容:域、用户名和密码为空。
任何帮助都将非常受欢迎。
DefaultCredentials 返回的 ICredentials 实例不能用于查看当前安全上下文的用户名、密码或域。
http://msdn.microsoft.com/en-us/library/system.net.credentialcache.defaultcredentials.aspx