如何用c#编写一个防火墙自动登录应用程序

本文关键字:防火墙 一个 应用程序 登录 何用 | 更新日期: 2023-09-27 17:50:57

在我的工作日中,我需要通过内部网上大约90,000个防火墙进行身份验证,也需要通过vpn从家里进行身份验证,我想知道自动化这个过程有多容易。我想使用c#,并提出了这样的东西(这不起作用)。

...
System.Net.HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
request.Proxy.Credentials = request.Credentials = new NetworkCredential("someusername", "somepass");
request.PreAuthenticate = true;
request.KeepAlive = true;
request.Timeout = 10 * 1000;
var response = request.GetResponse();
...

这段代码似乎工作正常,我得到正确的响应细节,但如果我然后尝试访问我的web浏览器中的网页,我仍然被要求登录。

如何保存连接/身份验证细节?饼干?还是我这样做完全错了?

p。我知道我可以让应用程序做这个,但我想自己做。

如何用c#编写一个防火墙自动登录应用程序

这取决于防火墙web界面中使用的身份验证机制。
重要的是,您必须登录并在防火墙web界面上创建一个会话,之后您可以在浏览器中使用该会话。你可以尝试找出你的会话密钥(POST, GET, Cookie等),并尝试将它从你的c# web响应"传输"到你的浏览器。但是正如Alex已经指出的那样,如果这有效,你应该考虑使用另一个防火墙;)

为了得到这样一个很好的管理员帮助工具,我会尝试在你的应用程序中使用一个WebBrowser控件,并使用这个"框架浏览器"自动登录到你的防火墙web应用程序。类似的东西也应该适用于防火墙web界面:http://www.codegain.com/articles/csharp/utilities/automating-facebook-login-using-webbrowser-control-in-csharp.aspx

相关文章: