dersud
Goto Top

CUPS-Admin-Interface in Website einbinden

Hallo wieder mal!

Folgende Ausgangsbasis: ich musste ein bestehendes Debian 8 mit cups 1.7.5 auf Debian 9 mit cups 2.2.1 upgraden, damit ein paar Mac-Clients (nach Mojave Upgrade) wieder ausdrucken
konnten. Leider ist seither das Admin-Interface, welches über iframe in unsere interne Hausverwaltungs-WebUi integriert war, nicht mehr erreichbar und es erscheint nur mehr in Firefox
zum Beispiel die Meldung:

"Blockiert von der Inhaltsicherheitsrichtlinie (CSP)

Diese Webseite hat eine Inhaltsicherheitsrichtlinie (Content Security Policy), die verhindert, dass die Webseite auf diese Weise eingebunden wird.

Firefox hat diese Webseite daran gehindert, auf diese Weise geladen zu werden, weil die Webseite eine Inhaltsicherheitsrichtlinie (Content Security Policy) hat, die dies nicht erlaubt."

Daher meine Frage: gibt es irgendeine Möglichkeit, die cups-Admin-WUI wieder in einem Frame in der Verwaltungs-WUI einzubinden? Ach ja: wir haben an den Wänden montierte Touchscreens mit Browsern im Vollbild, weshalb das Öffnen neuer Fenster ein No-Go ist...

Danke im voraus!

Content-Key: 444832

Url: https://administrator.de/contentid/444832

Ausgedruckt am: 29.03.2024 um 12:03 Uhr

Mitglied: 139374
Lösung 139374 26.04.2019 aktualisiert um 13:05:20 Uhr
Goto Top
Das kommt deswegen weil CUPS den entsprechenden Header aus Sicherheitsgründen in die Seite setzt:
X-Frame-Options: DENY
Content-Security-Policy: frame-options 'deny'  
https://github.com/apple/cups/issues/4492

die cups-Admin-WUI wieder in einem Frame in der Verwaltungs-WUI einzubinden?
Ja, entweder indem du im CUPs-Paket selbst die Header anpasst oder die Seite z.B. über einen ReverseProxy einbindest der die Header entfernt. iFrames sind aber generell eine schlechte Idee in der heutigen Zeit, verlinke es auf deiner Seite oder steuere CUPs über ein eigenes Interface.
Mitglied: DerSud
DerSud 26.04.2019 um 13:21:48 Uhr
Goto Top
Danke, werde die Lösungen in der Reihenfolge ausprobieren. Ich weiß, IFrames sind nicht optimal, aber wie das mal so ist mit alten Projekten, die im Laufe der Zeit gewachsen sind...
Mitglied: DerSud
DerSud 29.04.2019 um 17:21:39 Uhr
Goto Top
So, mit einem Apache Reverse Proxy hat es geklappt. Falls wer das gleiche Problem haben sollte: Standard-Installation laut den unzähligen Anleitungen im Web druchführen, zusätzlich mod_headers & mod_rewrite aktivieren und in der Site-(Proxy)-Config die folgenden Zeilen reinschreiben:

RewriteEngine On
Header unset Server
Header unset X-Frame-Options
Header unset Content-Security-Policy

Zwecks Security kann man alles noch in SSL verpacken und den Zugriff nur für die Touchscreen-PCs (Require ip x.x.x.x in proxy.conf) erlauben...