HTTPS einloggen

Status
Nicht offen für weitere Antworten.

Timboo89

Mitglied
Hallo,

kurz: ich möchte mich AUTOMATISCH ohne, dass der Benutzer die Seite zu sehen bekommt auf dieser einloggen und die Daten aus der folgenden Seite laden. Der Benutzer muss natürlich vorher Passwort und Benutzernamen angeben. Es handelt sich ein Login auf dieser Seite: https://ssl.fh-wedel.de/sekretariat/
Wie mache ich das?

Restbeschreibung: Das Programm soll am Ende automatisch Notenupdates, die auf den Folgeseiten stehen laden können und (was auch auf den Folgeseiten möglich ist) zu Klausuren anmelden.

Danke im Vorraus


Es sei noch angemerkt: Ich habe keine HTML/PHP irgendwas Erfahrungen, aber die nötigen Kleinarbeiten, werde ich mir schon rausflöhnen. Hoffe ich...
 
Zuletzt bearbeitet:

Timboo89

Mitglied
1) Ich muss ja Benutzernamen und Passwort an die Seite senden, um mich einloggen zu können und auf den Folgeseiten arbeiten zu können. Das weiß ich nicht.

2) Wenn ich auf den Folgeseiten bin, muss / möchte ich bestimmte Dateien herunterladen, wie mache ich das? Also wie kann ich "auf einen Button klicken"?
 
M

maki

Gast
Möchtest du Java lernen um ein Programm zu schreiben welches das macht?

Oder willst du dir zB. Selenium ansehen?
 

DocRandom

Top Contributor
1) Ich muss ja Benutzernamen und Passwort an die Seite senden, um mich einloggen zu können und auf den Folgeseiten arbeiten zu können. Das weiß ich nicht.

2) Wenn ich auf den Folgeseiten bin, muss / möchte ich bestimmte Dateien herunterladen, wie mache ich das? Also wie kann ich "auf einen Button klicken"?

..nun Du könntest HTTPUnit verwenden um einen Browser zu simulieren.
Da es sich aber um eine SSL - Verbindung handelt mußt Du entweder/oder:
  • den Schlüssel richtig ablegen
  • den TrustedManager überschreiben

lg
DocRandom
 

Timboo89

Mitglied
Also grundsätzlich kann ich Java, diesen Teil allerdings nicht, also ja ich möchte ein Programm schreiben, dass für mich das einloggen und herunterladen der daten übernimmt, wenn ich im Programm einen einzigen Button klicke. der Benutzer soll anschliessend nichts mehr machen müssen. (Vorher muss er natürlich Benutzernamen und Passwort angeben.) Das Problem ist auch, wie kann ich das bereits angesprochene Zertifikat automatisch vertrauenswürdig einstufen?
 

Fancy

Aktives Mitglied
Moin,

Das Problem ist auch, wie kann ich das bereits angesprochene Zertifikat automatisch vertrauenswürdig einstufen?


wie bereits von DocRandom angedeutet kannst Du einen neuen TrustManager in den SSLContext einhängen. Anschließend werden alle SSL Verbindungen gegen diesen TrustManager geprüft.

z.B.

[HIGHLIGHT="Java"]public void setupTrustAll(){

final TrustManager[] trustAllCerts = new TrustManager[] {new X509TrustManager(){

public java.security.cert.X509Certificate[] getAcceptedIssuers(){
return null;
}


public void checkClientTrusted(java.security.cert.X509Certificate[] certs, String authType){}


public void checkServerTrusted(java.security.cert.X509Certificate[] certs, String authType){}

}};

try{

final SSLContext sslContext = SSLContext.getInstance("SSL");
sslContext.init(null, trustAllCerts, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory());

} catch(final Exception e){

System.err.println(e);

}
}
[/HIGHLIGHT]


Damit wird eine SSL Verbindung gegen jedes SSL Zertifikat erlaubt. Eine entsprechende Modifikation um lediglich einem bestimmten Zertifikat zu vertrauen, sollte relativ einfach machbar sein (allerdings hab ich dies nie versucht).

Gruß,
Michael

Edit: Lol, die Syntaxhervorhebung klappt ja super (warum macht der Semikolons in den Quellcode?), Zeile 3 soll natürlich heißen:

final TrustManager[] trustAllCerts = new TrustManager[] {new X509TrustManager(){

und an den anderen Stellen natürlich auch "];" durch "]" ersetzen…
 
Zuletzt bearbeitet:

DocRandom

Top Contributor
... diesen Teil allerdings nicht, also ja ich möchte ein Programm schreiben, dass für mich das einloggen und herunterladen der daten übernimmt....
..also, wenn Du Dir den von mir geposteten Link genauer angeguckt hättest, wärest Du auch in der Lage jenes Problem zu lösen. Oder ist es doch nicht soweit her mit Deinen Javakenntnissen und wir sollen ne HA für Dich lösen?

Wenn das mit der HA nicht der Fall ist(ich kann mich ja auch irren), dann lass mal etwas Code von Dir sehen.

lg
DocRandom
 

Timboo89

Mitglied
Danke schon mal für den Code und natürlich auch für den Link.

Ich gebe zu, mir deinen Link noch nicht angesehen zu haben, da ich aktuell am umziehen bin (ich habe nicht ein Mal Semester;)), daher ist das mit den Hausaufgaben auch nicht drin. Allerdings ist es schulisch, das stimmt schon, ich habe mir überlegt, dieses Projekt vielleicht als Abschlussarbeit zu machen - daher existiert auch noch kein Code - und wollte vorher abchecken, wie aufwändig die SSL-Verschlüsselung ist, da ich ungern in ein offenes Feuer renne, ohne zu wissen, wie lange ich es darin aushalten muss;)

Hilft mir in der Aufwandsabschätzung beides sehr weiter. Vielen Dank :) Bei weiteren fragen werd' ich mich wieder melden, das wird dann schätze ich in 2 Wochen sein, wenn ich mit der Abschlussarbeit anfange, da werde ich dann zu erst das herunterladen der Dateien testen:)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
FrankenDerStein HTTP Https Server Bibliothek für Linux und Android gesucht. Netzwerkprogrammierung 7
JaXnPriVate Java HTTPS Server (Secure Sockets) Netzwerkprogrammierung 15
Thallius HTTP Kann man den Raw HTTPS Request irgendwie ausgeben lassen? Netzwerkprogrammierung 6
G localhost im Backend https vs. http Netzwerkprogrammierung 9
T HTTPS-Requests an Server: POST-Parameter kommen nicht an Netzwerkprogrammierung 5
M HTTPS Login & etwas posten Netzwerkprogrammierung 0
M Proxy und HTTPS Netzwerkprogrammierung 3
Thallius HTTP HTTPS unter Java 1.6 schlägt fehl Netzwerkprogrammierung 4
agent47 HTTPs Server Netzwerkprogrammierung 5
GENiALi Grizzly mit HTTPS Netzwerkprogrammierung 0
N Hintergrundlogin HTTPs Webform Netzwerkprogrammierung 5
E Gruppenchat: Über HTTPS oder nicht? Netzwerkprogrammierung 5
K HTTPS Zertifikat Netzwerkprogrammierung 3
F C/S über HTTPS Netzwerkprogrammierung 2
NoXiD Java mit HTTPS verbinden Netzwerkprogrammierung 6
T Up- und Download mit https Netzwerkprogrammierung 14
M HTTP HTTPS-Verbindung mittels Java und Javascript Netzwerkprogrammierung 2
L Https Verbindung wird aus jar heraus nicht aufgebaut Netzwerkprogrammierung 12
E HTTPS Debuggen (verschlüsselte Daten anzeigen)? Netzwerkprogrammierung 12
Q HTTPS mit Apache HttpClient Netzwerkprogrammierung 4
M HTTPS Seiten runterladen Netzwerkprogrammierung 2
C HTTPS mit Apache HTTPClient Netzwerkprogrammierung 1
A HTTPS-Request via Proxy mit Konfigurationsskript Netzwerkprogrammierung 3
P HTTPS - öffentliches Zertifikat - ermitteln Netzwerkprogrammierung 5
G file download über https mit p12 Zertifikat Netzwerkprogrammierung 4
O HTTP Einloggen auf einer Homepage Netzwerkprogrammierung 8
P Mit der URL Klasse einloggen... Netzwerkprogrammierung 8
B FTP Datei auslesen ohne einloggen möglich? Netzwerkprogrammierung 19
M Per eigenem Java SE Prog einloggen auf Webseite Netzwerkprogrammierung 19
H HTTP Einloggen auf einer HTML (php) Seite Netzwerkprogrammierung 6
T apache HTTPClient einloggen Netzwerkprogrammierung 2
L Mit Java auf Forum einloggen und dann einen Threat erstellen Netzwerkprogrammierung 4
N Automatisches einloggen Netzwerkprogrammierung 17
B in router einloggen Netzwerkprogrammierung 11
E In Webseite einloggen/ GET, POST an PHP-Script übergeben Netzwerkprogrammierung 2
O Per POST automatisch auf Website einloggen... Netzwerkprogrammierung 9

Ähnliche Java Themen

Neue Themen


Oben