Not logged in. · Lost password · Register
Forum: Non-English Discussion German discussion RSS
HTML-Dateien einbinden (iframe) + schützen
Avatar
martin1234 #1
Member since Mar 2019 · 2 posts
Group memberships: Members
Show profile · Link to this post
Subject: HTML-Dateien einbinden (iframe) + schützen
Hallo ich bin grade dabei ein bisheriges Intranet einer Schule mit Hilfe von Dokuwiki zu modernisieren. Klappt auch so weit gut bis auf ein kleines Problem.

Unser Stundenplanprogramm erstellt mehrmals täglich einige Hundert HTML-Dateien. (Die Seiten enthalten Javascript und die Namen der Unterordner ändert sich je nach aktueller Kalenderwoche. Wobei das System da auch immer mal wieder gerne reihenfolgen etc ändert.)

Diese Dateien werden nun automatisch auf dem Webserver hochgeladen. Mit dem iframe Plugin kann ich diese dann auch ganz gut in eine Wiki-Seite einbinden und darstellen lassen.

Aber wie schütze ich die Dateien so, dass nur eingelogte Wiki User diese Dateien aufrufen können?

Die Dateien liegen aktuell in einem Ordner "eigenedateien" im Wurzelverzeichnis.
Wenn man die entsprechende Adresse kennt, kann man diese auch ohne Login aufrufen.
Schütze ich sie mit .htaccess muss jeder sich zweimal anmelden.

Ich habe auch versucht die Dateien im "data" Verzeichnis abzulegen, und einen entsprechenden Namensraum zu erstellen, dann sagt mir aber das iframe Plugin "forbidden".

Hat da jemand eine Idee?

Gerne auch ganz andere Lösungsansätze.

Danke für die Hilfe.

Martin
Avatar
virk #2
Member since Aug 2008 · 632 posts · Location: Aachen, Germany
Group memberships: Members
Show profile · Link to this post
Ich kenne weder das iframe-plugin, noch kenne ich mich mit HTML-Kram aus.
1) Wenn Du die Dateien in den data-Ordner kopierst, benötigst Du dann tatsächlich das iframe-plugin noch?
2) Musst Du am wiki täglich etwas ändern, wenn "mehrmals täglich einige Hundert HTML-Dateien" hochgeladen werden?
3) Du kannst den link auf diese HMTL-Dateien auf eine Seite schreiben, die Du mit ACL (access control lists) von dokuwiki schützt.
4) Rechte am Ordner "Eigene Dateien" könnte man, wenn es ein Unix wäre, so einstellen, dass nur der webserver darauf Zugriff hat.
5) Stell mal eine solche HTML-Datei (unleserlich gemacht) zur Verfügung. Vielleicht fällt dann dem ein oder anderen was ein.

Gruss Heiner
Avatar
martin1234 #3
Member since Mar 2019 · 2 posts
Group memberships: Members
Show profile · Link to this post
Danke Virk für die Antwort. Hier noch ein paar genauere Informationen:
Struktur:
Es werden jedesmal für jede Klasse, Raumbelegung Lehrer eigene Stundenpläne in Form einer Tabelle erzeugt. Soweit eigentlich ganz einfach. Die Nummerierung welche Klasse welche Nummer hat ändert sich aber immer wieder (Dateiname z.B. c00013.htm) ebenso der passende Unterordner je nach Kalenderwoche. z.B. liegt diese c00013.htm halt in der 20KW in eigenedateien/20/c/c00013.htm) von dher ist nicht das lesen sondern die Navigation das Problem. Aktuell erstellt das Programm dazu jeweils eine default.htm Seite im Hauptverzeichnis (eigenedateien) von der aus die Navigation mit einem Dropdown Menü schnell klappt. Für einzelne Klassen habe ich tatsächlich auch schon ein php Datei egschrieben, die den Quellcode ausliest und die Tabelle in meine alten HTML Seite einfügt. (Ich fluche jedesmal, wenn das Programm mal wieder meint, die Klassenummerierung zu ändern und ich dann die ganzen Variablen entsprechend anpassen muss.) Für alle ist das einfach nicht machbar.

Von daher würde ich diese default.html + orginal generierten Dateien auch gerne behalten.

Aktuell ist lediglich das Problem, dass ich nicht weiß wie ich die Dateien vor fremden Zugriff schützen muss (DSGV).
Mit ACL hab ich keine Ahnung, wie ich da ein fremdes Verzeichnis schütze. (htaccess??) Da hab ich um erlich zu sein nicht durchgeblickt wenn es um einstellungen außerhalb des Konfigurationsmenüse geht. (Da kann ich ja nur Namensräume angeben.)
Im data-Verzeichnis mag es das Iframe-Plugin nicht.
Nur Webserver geht leder auch nicht, weil ja der user die Seiten in einem iframe direkt aufruft.

Nochmals Danke für eure Tipps.

Martin
Avatar
andi (Administrator) #4
User title: splitbrain
Member since May 2006 · 3484 posts · Location: Berlin Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Quote by martin1234:
Aktuell ist lediglich das Problem, dass ich nicht weiß wie ich die Dateien vor fremden Zugriff schützen muss

Das ist erstmal kein DokuWiki Problem. Du packst die HTML Dateien auf einen webserver dann hat erstmal jeder mit Zugriff auf diesen Server Zugriff auf deine Dateien. Du muss also sicherstellen dass dein Webserver die Dateien nur an berechtigte Personen ausspielt. Du hast .htaccess Basic Auth erwähnt - das ist eine Möglichkeit.

Quote by martin1234:
Mit ACL hab ich keine Ahnung, wie ich da ein fremdes Verzeichnis schütze.

Die DokuWiki ACLs schützen die von DokuWiki verwalteten Inhalte. Was sonst so auf deinem Server liegt interessiert DokuWiki nicht.

Quote by martin1234:
Im data-Verzeichnis mag es das Iframe-Plugin nicht.

Natürlich nicht. Niemand darf direkt auf das data Verezichnis zugreifen. Sonst würde man ja die DokuWiki ACLs umgehen.

Du könntest deine Seiten im data/media Verzeichnis ablegen und dann aus einer Seite heraus verlinken. Das würde aber vermutlich nicht funktionieren weil deine HTML-Seiten JavaScript (und eventuell andere) dependencies haben. Zudem müsstest du die Verlinkungen bei jedem neu generieren anpassen.

Was du eigentlich bräuchtest wäre ein Plugin welches alle Dateien eines Verzeichnisses durch ein PHP script proxied welches die ACLs prüft und welches alle dependencies innerhalb von HTML dateien so umschreibt dass auch diese durch das proxy script gezogen werden. Alles nicht ganz trivial. Alternativ könnte man eventuell auch dem Webserver beibringen die Berechtigungen für den Zugriff auf eine bestimmte Location bei DokuWiki abzufragen.

Kurze Antwort: geht nicht. Nutze htaccess und lass deine user einen extra login machen oder kaufe dir einen consultant ein der das für dich programmiert.
Read this if you don't get any useful answers.
Lies dies wenn du keine hilfreichen Antworten bekommst.
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
Imprint
This board is powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2015 by Yves Goergen
Current time: 2019-10-16, 06:54:10 (UTC +02:00)