Hi Gero,
danke, du dass du einen Blick auf mein Machwerk geworfen hast. Ich glaube, es gibt da eine ganze Reihe von Missverständnissen:
enttäuscht, weil nicht ein Punkt meines Prototypen in Deinem auftaucht.
Wie ich oben vielleicht nicht deutlich genug sagte, lag mein Fokus nur auf dem Sessionmanagement + Authentifizierung (+ Zugriffskontrolle). Da ich dort vieles anders mache, habe ich mich entschieden, diesen Punkt herauszugreifen. Den Teil deines Frameworks, der sich mit der Auswahl der Seiten befasst, dem Templating, dem Zusammenbau aus Komponenten, die teilweise durch webcm geschickt werden, der Internationalisierung -- diesen Teil fasse ich überhaupt nicht an und stelle ihn durch das "Weglassen" auch nicht in Abrede. Der kann einfach hinter mein Sessionmanagement geschaltet werden. Vielleicht mache ich das mal als nächsten Schritt, damit das ganze etwas anschaulicher wird.
Mir ging es um Integration von AVM und Freetz und um Sicherheit.
Um Sicherheit geht es mir auch; Integration von AVM gehört zu dem Teil, mit dem ich mich überhaupt nicht befasst habe.
ohne wirklich eine Seite anzuzeigen, kann weder die Anmeldung überprüft werden, noch die Sicherheit, dass die Seite nicht ohne Anmeldung erreichbar ist.
Ich zeige unterschiedliche Seiten an (die alle fast gleich aussehen und aus der selben Quelle generiert werden, aber das ist ja nur zum Testen). Die Seiten /cgi-bin/freetz/private/... sind ohne Anmeldung nicht (in ihrer nicht-Verbots-orangenen Form) erreichbar.
Du hast mehrere Formulare in der Seite, aber nicht gezeigt, wie die Daten trotzdem überprüft werden können
Was meinst du genau mit "Überprüfen" der Daten? Natürlich wird überprüft, ob eine Session existiert, ob der Benutzer sich in dieser Session schon eingeloggt hat, ob er die Berechtigung hat, diese Seite aufzurufen.
[Front-Controller] dass es keinen Weg daran vorbei gibt. Das sehe ich in Deinem Prototypen nicht gewährleistet
Falsch, /cgi-bin/freetz agiert wie bei dir als Frontcontroller für alle Seiten, die unter ./page/ liegen (entspricht deinem ./html/). Auf anderem Wege sind diese Seiten nicht zugreifbar.
Ein allgemeingültiges Layout-Handling ist damit nicht möglich.
Stimmt nicht; ersetze die letzten paar Zeilen in ./controller (grob gesagt) durch deine prepare-template-serverPage-Lösung, und schon du hast dein Layout-Handling. Wie gesagt, es ist nicht eingebaut, weil das ein komplett unabhängiger Aspekt ist.
der Upload funktioniert (?) ohne Login
Der Upload auf den geschützten Seiten funktioniert nicht ohne Login. Lass dich nicht davon verwirren, dass auf jeder Seite die Formulare auftauchen; so lassen sich alle Fälle am besten durchspielen. Später werden natürlich abhängig vom Pfad unterschiedliche Seiten angesprochen, die unterschiedliche Zugriffsrechte benötigen, so dass es natürlich auch Seiten geben kann, zu denen ein Upload nur im eingeloggten Zustand möglich ist.
Fazit für mich: Ich führe mal die prototypische Anbindung an den Rest deines Frameworks durch. Wenn du deine eigenen Seiten siehst, wird das ganze vielleicht anschaulicher.
Viele Grüße,
Andreas