AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TCPServer Session/Eindeutige ID ermitteln
Thema durchsuchen
Ansicht
Themen-Optionen

TCPServer Session/Eindeutige ID ermitteln

Offene Frage von "HolgerX"
Ein Thema von DelTurbo · begonnen am 3. Dez 2017 · letzter Beitrag vom 5. Dez 2017
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.399 Beiträge
 
Delphi 12 Athens
 
#1

AW: TCPServer Session/Eindeutige ID ermitteln

  Alt 5. Dez 2017, 09:50
SSL kann dennoch unterstützt werden.

Client/Browser <SSL> deineProxyAnwendung <SSL> derZielServer


hier kann man einmal die SSL-Verschlüsselten Daten 1:1 durchreichen
oder Client/Browser <SSL> deineProxyAnwendung und deineProxyAnwendung <SSL> derZielServer nutzen jeweils ein eigenes SLL-Zerzifikat (sie können auch das Selbe nutzen, aber eben jeder)
Client/Browser <SSL> deineProxyAnwendungClientside <X> interneVerbindungUndDatenauswertungUndCookiemanipulationOhneSLL <X> deineProxyAnwendungServerside <SSL> derZielServer

Du bist also kein dummer "ich reich allers durch"-Proxy, sondern für den clöient bist du der Server und für den Server bist du der Client und jeweils dazwischen kommt das SSL rein.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 5. Dez 2017 um 09:54 Uhr)
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.245 Beiträge
 
Delphi 2007 Architect
 
#2

AW: TCPServer Session/Eindeutige ID ermitteln

  Alt 5. Dez 2017, 10:18
Hi,
kurz was ich probiert habe. Nicht böse sein.
Ich habe zum IdHTTPServer eine SSL Verbindung aufgebaut. Der IdHTTPServer übernimmt die Authentifizierung. Passt alles mache ich ein Redirect auf den gleichen Server, allerdings einen anderen Port. Dort wartet der IdTcpServer. Ich bin nur im OnExecute weil das ohne SSL klappte.

Nun kommt leider, wie von Zacherl prophezeit ein Fehler.

Nun müsste ich nur noch wissen, welchen von den Indy Proxys ich nehmen muss. Ich bin irgendwie Total verwirrt und peile nun fast nix mehr. Vielleicht bekomme ich das dann ja doch hin.

Gruß und danke im Voraus
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.245 Beiträge
 
Delphi 2007 Architect
 
#3

AW: TCPServer Session/Eindeutige ID ermitteln

  Alt 5. Dez 2017, 10:38
Hmmm,
also ich habe es nun nochmal anders gemacht. Es klappt doch. Da ich im Moment nur ein Selbst gemacht Zertifikat habe muss ich es 2x bestätigen.
Ich denke mal wenn es ein "Richtiges" ist, merkt man es nicht.

Das bringt mich/uns zu dem alten Problem zurück, wie kann ich im IdTCPServer.OnExecute rausfinden ob der Param xy gesetzt ist und was steht drin.

Und zu der Frage, warum bekomme ich auf einmal das Cookie mit der SessionID ins IdTCPServer.OnExecute geliefert. Ich weiß nicht wie es auf einmal kommt.

Code:
GET /hp/device/jquery.js HTTP/1.1
Accept: application/javascript, */*;q=0.8
Referer: https://192.168.0.2:800/
Accept-Language: de-DE
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Encoding: gzip, deflate
Host: 192.168.0.2:800
DNT: 1
Connection: Keep-Alive
Cookie: IDHTTPSESSIONID=yaZplJnATWAbS9b

Gruß
Ein total verwirrter Mensch........

Nachtrag: Damit es klappte habe ich in IdTCPServer.OnConnect folgendes eingebaut. Das hatte ich mal irgendwo gelesen. Kann es daran liegen das ich auf einmal das Cookie bekomme?

Delphi-Quellcode:
    if (AContext.Connection.IOHandler is TIdSSLIOHandlerSocketBase) then begin
      TIdSSLIOHandlerSocketBase(AContext.Connection.IOHandler).PassThrough:= false;
    end;
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!

Geändert von DelTurbo ( 5. Dez 2017 um 10:43 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.399 Beiträge
 
Delphi 12 Athens
 
#4

AW: TCPServer Session/Eindeutige ID ermitteln

  Alt 5. Dez 2017, 10:42
HTTPClientMitSSL > TCPServerOhneSSL > programmintern 1:1 durchreichen > TCPClientOhneSSL > HTTPServerMitSSL
Die beiden Endunkte ver-/entschlüsseln und du dazwischen bekommt nur die verschlüsselten Daten zu sehn.


HTTPClientMitSSL > HTTPServerMitSSL > programmintern durchreichen, verändern oder sonstwas > HTTPClientMitSSL > HTTPServerMitSSL
Die beiden Endunkte ver-/entschlüsseln aber nicht "untereinander" sondern mit dir und du bekommst so die unverschlüsselten Daten.
Bei Google suchenman in the middle
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.245 Beiträge
 
Delphi 2007 Architect
 
#5

AW: TCPServer Session/Eindeutige ID ermitteln

  Alt 5. Dez 2017, 10:45
Ups, sorry du hast geschrieben während ich meinen Beitrag editiert habe.
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.245 Beiträge
 
Delphi 2007 Architect
 
#6

AW: TCPServer Session/Eindeutige ID ermitteln

  Alt 5. Dez 2017, 10:47
HTTPClientMitSSL > HTTPServerMitSSL > programmintern durchreichen, verändern oder sonstwas > HTTPClientMitSSL > HTTPServerMitSSL
So habe ich es nun am laufen. Trotzdem Frage ich mich, bleibt das Header den ich dort bekomme, um das richtige Ziel zuzuweisen nun immer gleich? Oder ist das eine Laune von irgendwem????
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.245 Beiträge
 
Delphi 2007 Architect
 
#7

AW: TCPServer Session/Eindeutige ID ermitteln

  Alt 5. Dez 2017, 12:55
Hallo an alle die mir geholfen haben. Erst mal ein fettes Danke schön.

Das wird nun wohl meine letzte Frage sein. Ich habe alles soweit, mit SSL, am laufen.

Nun habe ich es mit verschiedenen PCs und Browser Probiert. Ich bekomme immer das Cookie mit wie unten zu sehen ist.

Nun zu meiner Frage: Kann ich mich nun darauf verlassen das es IMMER mit gesendet wird?

Gruß und nochmals Danke....

Code:
GET /colorLok.png HTTP/1.1
Host: 192.168.0.2:800
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36
Accept: image/webp,image/*,*/*;q=0.8
Referer: https://192.168.0.2:800/
Accept-Encoding: gzip, deflate, sdch, br
Accept-Language: en-US,en;q=0.8
Cookie: IDHTTPSESSIONID=huUYf4A3JAeyMUG
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.399 Beiträge
 
Delphi 12 Athens
 
#8

AW: TCPServer Session/Eindeutige ID ermitteln

  Alt 5. Dez 2017, 13:06
Nein. Wenn du das Cookie nicht selber erstellt hast,, bzw. es nicht aus deinem Programm kommt.
Du kannst in den Browsern mal nachsehn, wo das Cookie her kommt.

Beim Erstellen/Setzen eines Cookie kann man den Gültigkeitsbereich angeben und es gab schon welche, die "ausversehn" das Cookie global für alle URLs freigeben. (was man eigentlich niemals machen sollte, außer man will es nutzen, für geheimes Tracking über mehrere Webseiten hinweg)

Eventuell kommt das aber auch von der TIdHTTPServer-Komponente. Dann ja, wenn es aktiviert ist.
https://www.google.de/search?q=%22ID...TPSESSIONID%22

http://www.e-iter.net/Knowledge/Indy9/007271.html
GSessionIDCookie SessionTimeOut
AutoStartSession oder CreateSession/EndSession
SessionList
SessionState
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 5. Dez 2017 um 13:15 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz