none
In VB 2010 Programm: Dateidownload wird von Firewall oder Proxyserver eines Windows Servers geblockt. Wie kann ich das verhindern? RRS feed

  • Frage

  • Hallo!

    Bin neu hier und hoffe, mir kann jemand weiterhelfen.

    Programmiere Windows Forms Anwendung mit Visual Basib 2010.

    Habe folgendes Problem:

    Dateidownload wird von Firewall oder Proxyserver eines Windows Servers geblockt.

    Wie kann ich das verhindern, ohne die Firewall oder den Proxyserver umzukonfigurieren?

    Der Dateidownload erfolgt aus dem Visual Basic Programm heraus in folgender Form:

    My.Computer.Network.DownloadFile("http://test.webserver.net/test.php?daten=abcd", Tempdatei)

    Die "Tempdatei" wird dann mit My.Computer.Filesystem.ReadAllText(Tempdatei) ausgelesen.
    Sie ist nur ca. 5kB groß.

    Das funktioniert alles auf einem Windows 7 - System mit Windows 7-Firewall und direktem Zugang zum Internet über einen Router.

    Auf einer Workstation mit Windows 7 in einem Netzwerk mit Windows-Server mit Antivirensoftware + Firewall + Proxyserver werden die Daten zum Webserver gesendet, aber der Dateidownload wird wohl geblockt.

    Dem Proxyserver muss man Benutzername und Passwort irgendwie übergeben? Wenn ja, wie kann ich das in Visual Basic 2010 machen?

    Ich bin für jede Hilfe dankbar.

    Micha

    Freitag, 7. November 2014 08:36

Antworten

Alle Antworten

  • Hallo Micha,
    Die DownloadFile-Methode hat vier Parameter, von denen der dritte und der vierte für den Benutzernamen und das Passwort stehen. Sie sind standardmäßig auf eine leere Zeichenkette gesetzt.

    Siehe dazu: Network.DownloadFile-Methode (String, String, String, String)

    Gruß,
    Dimitar


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.



    Freitag, 7. November 2014 09:41
    Administrator
  • Wie kann ich das verhindern, ohne die Firewall oder den Proxyserver umzukonfigurieren?

    Hallo Micha,

    wenn die IT die Systemumgebung so konfiguriert hat, das direkte Downloads nicht erlaubt sind, dann werden die das aus guten Grund gemacht haben und es wäre ein merkwürdiges Sicherheitssystem, wenn man das einfach umgehen könnte.

    Da musst Du Dich erst einmal an die IT wenden, ob es den einen Proxy gibt, über den Downloads möglich sind, wie das Authentifizierungsverfahren ist, ob evtl. ein Zertifikat nötig ist usw.


    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Freitag, 7. November 2014 09:46
  • Vielen Dank für die schnellen Antworten.

    Mit den Parametern Benutzername und Passwort werde ich das noch einmal testen.

    Natürlich will ich das Sicherheitssystem nicht einfach umgehen.

    Aber der Anwender müsste die Möglichkeit haben, seine Anmeldedaten bei diesem Vorgang einzugeben.

    Ich werde auch noch einmal die IT dazu kontaktieren.

    Die Tests kann ich voraussichtl. erst Montag o. Dienstag durchführen.

    Werde mich dann hier noch einmal dazu melden.

    Vielen Dank noch einmal für die Tipps.

    Gruß

    Micha

    Freitag, 7. November 2014 11:07
  • Hallo Micha,

    wenn der Anwender die Möglichkeit haben soll, seine Anmeldedaten einzugeben, musst Du das selbst erledigen. Zeige ihm also einen Dialog an, in den er Benutzername und Passwort eingeben kann und verwende diese Informationen dann beim Request auf die Datei.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Freitag, 7. November 2014 16:06
    Moderator
  • Hallo,

    habe Tests ausgeführt, leider erfolglos.

    Habe ein Fenster zur Eingabe von Proxy-Benutzername und -Passwort erstellt und diese Daten im

    My.Computer.Network.DownloadFile("http://test.webserver.net/test.php?daten=abcd", Tempdatei, ProxyUser, ProxPw) eingefügt.

    Nach Eingabe der Proxy-Anmeldedaten erhalte ich leider folgende Fehlermeldung "Der Remoteserver hat einen Fehler zurückgegeben: (407) Proxyauthentifizierung erforderlich."

    Die Anmeldedaten sind ok, habe ich mehrfach überprüft.

    Muss man noch weitere Einstellungen vorgeben, wie IP-Adresse des Proxy-Servers oder Port?

    Wenn ja, wo bzw. wie?

    Port kann man folgendermaßen vorgeben "http://test.webserver.net:8080/test.php?daten=abcd" ?

    Für weitere Hilfe wäre ich sehr dankbar.

    Gruß

    Micha

    Dienstag, 11. November 2014 08:41
  • Hallo Micha,

    die Parameter 3 und 4 sind nicht für einen Proxy, sondern nur für eine Anmeldung am Webserver selbst gedacht.

    Für eine Proxyauthentifizierung schau mal hier:

      http://stackoverflow.com/questions/13008964/webproxy-error-proxy-authentication-required


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Samstag, 15. November 2014 12:16
    Moderator