Hi! Ich glaube die Mail ist gar nicht auf der Liste angekommen:
> ---------- Ursprüngliche Nachricht ---------- > > Hi! > > Ich hab mir noch ein paar Gedanken gemacht wegen der Request IDs. Ich habe > versucht mich per Sequenzdiagramm einem Lösungsansatz zu nähern (Siehe hier: > http://www.the-independent-friend.de/files/page_reload_problem.jpeg ). Diesen > "Request ID Store" könnte man im Applikation-Laier realisieren. Die Schwäche > bei > dem Lösungsansatz ist aber, das der User immer nur mit einem Fenster arbeiten > kann/darf. > > Wenn man den Lösungsansatz mit einem Map kombiniert könnte man so was wie ein > Namensraum pro request realisieren. Das müsste aber dann der Framework-Laier > unterstützen. Vielleicht könnte das dann so aussehen: > > # Controller # > > unsigned AccountRegisterController::operator() ( > tnt::HttpRequest& request, > tnt::HttpReply& reply, > tnt::QueryParams& qparam > ) { > > TNT_SESSION_SHARED_VAR( unsigned long, open_account_id, () ); > TNT_REQUEST_SHARED_VAR( std::string, s_requestID, () ); > > std::string s_requestID = getRequestID(); > if ( !open_account_id.hasKey( s_requestID ) ) { > return reply.redirect ( "/bad_request" ); > }; > log_debug( "This window work with account ID: " << > open_account_id[s_requestID] ); > [...] > > # View # > > <%session > scope="shared" > > unsigned long open_account_id; > </%session> > > <%request > scope="shared"> > std::string s_requestID; > </%request> > > Sag Hallo zu ID <$ open_account_id[s_requestID] $> > > > Egal wie letztlich eine Lösung aussieht, halte ich eine Request-ID für sehr > wichtig. Auch aus Sicherheitsgründen. Wenn ich es richtig verstanden habe, war > z.B. eine der zahlreichen Sicherheitslöcher im OpenX-Server (Addserver) das > ein > Virus die Session gekarpert hat (die von einem User normal geöffnet wurde) und > dann requests an den Server schickte. Hätte der OpenX-Server mit Request-IDs > gearbeitet, wäre aufgefallen, das der Session falsche Requests unter geschoben > wurden, die nicht vom User stammten. > > Viele Grüße > > Olaf ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk _______________________________________________ Tntnet-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/tntnet-general
