Hallo,
das Wichtigste zuerst:
ich bin ihm leider etwas auf den Schlips getreten, ...
Davon kann keine Rede sein.
Wir haben unterschiedliche Standpunkte ausgetauscht und ich habe auch gesagt, was mir gefällt oder nicht gefällt, mehr ist und war da nicht.
So, jetzt zur Sache
die Art und Weise, wie Links zu neuen Seiten realisiert sind, nämlich per Javascript, mit dem ein in jede Seite eingebautes HTML-Formular ausfüllt und abschickt (damit u.a. die Session-ID mit übertragen wird).
Yo, mir hat man beigebracht, dass ein Cookie leichter ausgelesen werden kann, als der Inhalt einer Seite in einem anderen Browsertab. Das ist aber schon ein paar Tage her, wenn also jemand aktuellere Fakten hat, lasse ich mich überzeugen.
dass ein Reload von Seiten unmöglich ist: Einmal F5 gedrückt, und man fliegt aus der Session.
Das kam erst auf Anforderung aus diesem Fred dazu.
Ich wurde aufgefordert, die Session zu salzen. Damit ist aber erheblicher Aufwand nötig, um einen Refresh von einer normalen Seitenanforderung zu unterscheiden. Den habe ich zwar angedacht, aber bislang keine Lust gehabt, dafür meine Zeit zu investieren.
Für die reine Darstellung von Informationen geht mir das zu weit; ich denke, in dieser Richtung sollte man differenzieren.
Völlig einverstanden.
Vielleicht sollte man nochmal über mögliche Angriffe nachdenken.
Ich habe mir die Angriffstechniken nochmal angelesen und bin der Meinung, dass mit meinem "ungesalzenen" Ansatz zwar die Vorbereitung für den Angriff ausgeführt werden kann, der Angriff an sich aber nur ein Login-Formular bringt.
Ich bin mir sicher, Gero wird seinen Ansatz noch näher begründen
Wen es von den Machern interessiert, dem erkläre ich meinen Standpunkt gerne per PN, aber hier im Forum möchte ich mich dazu nicht outen.
Nachrichten, die in verschiedene Sprachen übersetzbar sind, sind momentan so eingebunden: <%m XYZ12%> So hat man kaum Anhaltspunkte, was sich dahinter verbirgt und muss Seiten "blind" bearbeiten (oder ständig nachschlagen). Das könnte man verbessern (z.B. ähnlich wie bei GNU gettext)
An gnu-gettext habe ich auch schon gedacht, insbesondere da ihn viele Anwendungen sowieso schon einsetzen. Fehlt also "nur" noch das echte gettext.
Mein Ansatz, den Schlüssel auf 5 Zeichen zu begrenzen hat ausschließlich Platzgründe. Einmal wird der Schlüssel in den Quellen vom WebIF verwendet, zum anderen arbeitet die "Datenbank" mit konstanter Schlüssellänge, um eine schnelle Binärsuche auf dem Index zu ermöglichen. Jedes Byte, um das der Schlüssel vergrößert wird ist mit der Anzahl von DB-Einträgen und dem Aufkommen der Schlüssel zu multiplizieren.
Ich halte ein Offenhalten der Text-Quelle während der Entwicklung für einen akzeptablen Kompromiss (so arbeite ich auch, indem die Quellen immer offen sind).
Wir sollten daran denken, dass das Framework nicht nur HTML-Dateien ausliefern können muss, sondern auch Text, Binary, etc.
Meinst Du jetzt zum Sichern der Einstellungen oder wozu?
Das Webserver-Verzeichnis sollte umstrukturiert werden: Alles, worauf kein direkter Zugriff notwendig ist, sollte auch nicht im Zugriffsbereich des Webservers liegen (Sachen wie ./conf/, viele Dateien in ./cgi-bin/, etc.)
Das conf-Verzeichnis liegt in der Webroot, weil ich diese per NFS einbinde. In der Firmware gibt es nur Links, die die Dateien in conf referenzieren.
So kann ich ohne Aufwand zwischen Box und Entwicklung umschalten.
Selbstverständlich ist das kein Layout für stable (dann sollten die Dateien dorthin gepackt werden, wo jetzt die Links liegen) - aber davon ist der Prototyp ja noch weit entfernt.
Das Stylesheet sollte nicht inline übertragen werden.
Warum nicht?
Wenn ich es inline übertrage, kann es in einem Kennwort-geschützten Bereich liegen (ist jetzt der Fall). Wenn es offline angefordert werden soll, muss der Bereich frei zugänglich sein.
Es sollten mehrere parallele Sessions möglich sein; sonst gibt es Chaos bei mehreren Benutzern.
Die Forderung gab es schon, ist einfach noch nicht umgesetzt.
Ich mag keine Frames, schon gar nicht, wenn sie 100% des umgebenden Fensters einnehmen und erzwungen werden. Die URL-Zeile des Browsers ist dafür da, dass man dort mit den URLs arbeiten kann (bearbeiten, kopieren, Lesezeichen), nicht dafür, dass eine statische URL alles versteckt, was im Hintergrund passiert.
Hier sollten wir deutlich zwischen Entwickler und geplanten Anwendern unterscheiden. Für Entwickler kann ich mich dem Standpunkt von Andreas anschließen, nicht jedoch für geplante Endanwender.
Hier wirkt ein url mit Querystring verwirrend und ich empfinde es schlicht als unprofessionell.
Ich mag kein tabellenbasiertes Layout.
Nun, mit div kann man inzwischen schon einiges machen, aber ein Layout zu erstellen, welches bei unterschiedlichen Browsern gleich angezeigt wird und welches auch Font- / -größenänderungen nicht aus dem Tritt bringt, ist imho noch nicht möglich.
Mein erster Layouttest besteht immer darin, in firefox Strg-+ und Strg-- bis zum unterstützten Maximum auszuprobieren und schauen, wie sich das Layout verhält.
Das silbergraue (Tabellen-)layout ist stabil, d.h. auch für Menschen mit Sehbehinderung bedienbar.
Das Layout mit der FB im Hintergrund besteht aus absoluten Divs und ist eher was für klicky-bunti-Anhänger
Gruß Gero