DenX: Vertretungsplan mit <iframe> in HTML einbauen

Folgendes Problem:
Ich habe eine lokale (auf der Festplatte gespeicherte) Startseite mit meinem eigenen Inhalt erstellt. Alles funktioniert soweit super.
Nun wollte ich den (passwortgeschützten) Vertretungsplan unserer Schule mit Hilfe eines <iframe> einbauen.
Die Anmeldemaske wird auch angezeigt, ich gebe Benutzername und Passwort ein, der Inhalt des Frames baut sich neu auf, aber es wird wieder die Anmeldemaske angezeigt! Wenn ich absichtlich ein falsches Passwort wähle, baut sich der Inhalt neu auf und es steht da, dass Benutzername oder Passwort falsch ist, wie es ja auch sein sollte...
Der Link zum Vertretungsplan:

Vertretungsplan

Ich benutze Mozilla Firefox, das Poblem ist jedoch auch unterm Internet Explorer reproduzierbar!

Ich habe mir daraufhin den Quelltext der Seite angeschaut und festgestellt, dass sie eigentlich auch nur einen iFrame enthält...
Diesen kann man jedoch nicht direkt aufrufen ("Zugriff verweigert"), ich kann jedoch (im Firefox) im Quelltext des ursprünglichen Vertretungsplans (der Link oben) darauf klicken. Dieser iFrame enthält nun das Anmeldeformular. Ich habe geschafft das auf eine lokale Seite einzubinden, indem ich die relative Pfadangabe von action="..." durch die dazugehörige absolute ersetzt hab, und habe mit dieser Seite erst einmal versucht auf den Vertretungsplan zu kommen, aber auch hier heißt es "Zugriff verweigert"!
Außerdem konnte ich, nachdem ich mich mit richtigen Daten angemeldet habe, den Quelltext der letztendlichen Vertretungsplanseite (eben die, die in meinem Startseiten-iFrame leider nicht angezeigt wird) sehen: Dabei wird mit einem Script, aus dem ich beim besten Willen nicht schlau werde, ein Flash-Element irgendwie in wiederum einen iFrame geladen...

Ich bin schon Stunden und Tage vor dem Problem gesessen und bekomm es einfach nicht hin!
Wenn jemand allgemein eine Idee hätte woran es liegen könnte, wäre ich sehr dankbar.
Morgen Abend kann ich die Quelltexte bzw. den Script posten (ich hab morgen bis um 17.00 Uhr Schule). Wenn jemand die Anmeldeinformtionen braucht, um das Ganze nachzuvollziehen, kann ich sie Ihm per E-Mail schicken, aber ich möchte sie ungern hier öffentlich zugänglich machen ;)

Danke für alle Bemühungen im Voraus...

DenX

  1. Grüße,
    ohne die textwand gelesen zu haben - wenn dein loginscript nicht das gewünscht elifert, sollt4est du vllt mal den unter die lupe nehmen?
    MFG
    bleicher

    --
    __________________________-

    FirefoxMyth
  2. Hallo,

    Außerdem konnte ich, nachdem ich mich mit richtigen Daten angemeldet habe, den Quelltext der letztendlichen Vertretungsplanseite (eben die, die in meinem Startseiten-iFrame leider nicht angezeigt wird) sehen: Dabei wird mit einem Script, aus dem ich beim besten Willen nicht schlau werde, ein Flash-Element irgendwie in wiederum einen iFrame geladen...

    Ich vermute mal, das wird genau das Problem sein:
    Vermutlich wird das Script, welches  den Vertretungsplan nach erfolgter Anmeldung zeigen soll, sich darauf verlassen, dass es NICHT in einem Iframe läuft, sondern eben nur selbst einen neuen erzeugt. Da du dann das ganze aber in einen eigenen Iframe einbettest, geht das schief.

    Ein Beispiel:
    Nehem wir an, der Vertretungsplan erzeugt ein wie auch immer geartetes Iframe, und versucht dann, in dieses Iframe eine neue Quelle zu laden, z.b. so:
    top.frames[0].src = "http://example.com";

    Das funktioniert, wenn man den Vertretungsplan einfach so aufruft. In Deinem Iframe geladen wäre dann aber "top.frames[0]" plötzlich der Vertretungsplan selbst, es müsste dann also heissen "top.frames[0].frames[0].src=...", damit es funktioniert.

    Das ist nur eine von vielen Möglichkeiten warum sowas schief gehen kann.

    Ein anderes Problem könnte die Tatsache sein, dass Du eine fremde Domain (den Vertretungsplan) in eine eigene Seite einbettest. Es gibt zahlreiche Sicherheitsmechanismen im Browser, die dann äußerst restriktiv mit einem solchen Konstrukt umgehen, damit mit sowas kein Unfug getrieben werden kann (Stichwort Same origin policy).

    Fazit:
    Nach allem was Du bisher geschrieben hast, klingt es so, als hättest Du schlechte Karten, wenn Du den Vertretungsplan wirklich in eine lokale Seite einbetten willst. Es sei denn natürlich, Du kannst den Quellcode des Vertretungsplanes anpassen, dann könnte man den ggf. so umbauen, dass er auch in einem Iframe laufen kann.

    Hope that helps,

    Viele Grüße,
    Jörg

    1. Danke zunächst mal für alle schnellen Antworten von euch =)
      Es könnte sein, dass ich gerade dank deiner eine Lösung gefunden habe...
      Ich habe heute aber wahrscheinlich keine Zeit mehr das zu kontrollieren.
      Ich werd mich wieder melden, wenn ich was erreicht habe (oder halt auch nicht)...danke für alles nochmal =)

      DenX

      1. Also wenn deine Idee zutreffen würde und sie eine Art Sicherheitsmechanismus gegen iFrames haben, dann hab ich praktisch verloren...
        Das Ganze funktioniert aber auch in einem "normalen" Frame nicht!?

        Die "Lösung" die ich gestern erwähnt habe, löst in keinster Weise das eigentliche Problem: Ich konnte auf Umwegen irgendwie auf den Quelltext der Seite zugreifen, die letztlich ein Flash-Element enthält, dass der eigentliche Vertretungsplan ist ("Tabelle")...
        Genau dieses <object> hab ich dann gestern bei mir verwendet. Gerade musste ich aber feststellen, dass die "Adresse" des Elementes sich ändert: gestern hieß es
        .../mer1e93b3d4-678d-43c5-8664-69e928692ec0.swf
        und jetzt
        .../mer8e77edcc-f368-4207-b383-8690985f398b.swf

        (Also die Pünktchen sind bekannt ;) )
        Sowas hatte ich leider auch erwartet, deswegen hab ich gestern geschrieben "habe oder auch nicht" =/

        Da hab ich wohl keine Chance oder?
        Ich könnte das jetzt beobachten und vielleicht feststellen, dass es am selben Wochentag gleich heißt...aber das wird wohl nicht so sein...

        Diese Seite kann ich leider auch nicht in einen iFrame packen (Zugriff verweigert)...

        Hmmm...
        Ich muss dann ins Bett. Morgen Schule.
        Ich schau morgen wieder rein...

        DenX

        1. Hallo,

          Also wenn deine Idee zutreffen würde und sie eine Art Sicherheitsmechanismus gegen iFrames haben, dann hab ich praktisch verloren...
          Das Ganze funktioniert aber auch in einem "normalen" Frame nicht!?

          Nein, da Frames und iFrames technisch eigentlich dasselbe sind.
          Es soll einfach i.d.Regel nicht möglich sein, Inhalte einer fremden Webseite anzeigen zu können, aber diese vor bzw. während der Anzeige zu manipulieren.
          Stell Dir vor, Du bindest statt eines Vertretungsplanes eine Homebanking-Seite ein. Gäbe es keine Same Origin Policy, könntest Du z.b. den Prozess, der die PIN des Benutzers ausliest recht einfach auf eine eigene Seite "umbiegen"...und dann bräuchtest Du nur noch ein paar Dumme auf Deine eigene Frame-Seite locken. Hat in der Vergangenheit (so bis Anfang 2000er etwa) wunderbar funktioniert.
          Selbstverständlich unterstelle ich Dir nicht solche kriminelle Energie, aber ich denke es macht deutlich, warum die Browser-Hersteller diesen Cross-Site-Scripting-Geschichten einen Riegel vorschieben mussten.

          Ich könnte das jetzt beobachten und vielleicht feststellen, dass es am selben Wochentag gleich heißt...aber das wird wohl nicht so sein...

          Ich vermute eher, jedesmal wenn Deine Schule etwas an dem Vertretungsplan macht, wird das Flash-File neu generiert und der Name dann aus dem Hash-Wert der Datei bestimmt oder so.
          Da wirst Du also keine Chance haben, den Namen zu erraten.

          Du könntest serverseitig die Vertretungsplan-Seite laden und dann diese in Deiner Seite integrieren. Das müsste gehen, aber mit ziemlich viel Aufwand vermutlich.

          Viele Grüße,
          Jörg

          1. Also ich befürchte an der Stelle werde ich jetzt aufgeben:
            Eine Lösung rückt in weiteste Ferne...

            Eine Idee hab ich noch...wird aber dauernd...wenn sie eine Lösung ergibt werde ich es hier noch posten.

            Noch einmal vielen vielen Dank für alle Antworten, selbst ich jetzt keine Lösung, sondern die (fast) Gewissheit, dass es nicht geht, habe =)

            Gruß,
            DenX

  3. Liebe(r) DenX,

    meine Meinung zu einem online-Vertretungsplan: Vertretungsplan online oder nicht?

    Liebe Grüße,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
    1. Ich habe deine Meinung zur Kenntnis genommen, finde es persönlich aber einfach praktisch, dass der Vertretungsplan online zur Verfügung steht...
      Das mit dem <iframe> wiederum ist einfach nur eine "Spielerei" meinerseits (ich könnte ihn ja auch als Link einbinden).

      DenX (männlich ;) )

      1. Lieber DenX,

        Ich habe deine Meinung zur Kenntnis genommen, finde es persönlich aber einfach praktisch, dass der Vertretungsplan online zur Verfügung steht...

        und Du hast die schriftliche Einverständniserklärung aller Beteiligten, dass Du personenbezogene Daten über sie auf der (Schul-?)Website veröffentlichst? Meine Meinung mag irrelevant sein, das Recht einer jeden Lehrkraft Deiner Schule auf digitale Selbstbestimmung bleibt davon völlig unberührt. Sichere Dich unbedingt rechtlich ab! Das kann sehr riskant werden! [Artikel auf lehrer-online.de zum Thema]

        Das mit dem <iframe> wiederum ist einfach nur eine "Spielerei" meinerseits (ich könnte ihn ja auch als Link einbinden).

        Die technische Seite ist verhandelbar, die rechtliche nicht.

        Liebe Grüße,

        Felix Riesterer.

        --
        ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
        1. Die Seite, in der dieser iFrame eingebettet werden soll, ist wie anfangs erwähnt nicht online verfügbar.
          Es ist wie wenn ich persönlich auf die Vertretungsplanseite gehe, nur dass es als Spielerei in einem iFrame abläuft, was nun nicht funktioniert...

          DenX