留言板

Asset Publisher - Teilen - auf anderer Website

Markus Wiche,修改在8 年前。

Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 11 加入日期: 15-8-17 最近的帖子
Hallo zusammen,

ich möchte gerne die Inhalte eines Asset Publishers in eine andere Intranet-Site (nicht Liferay, nicht der gleiche Host) einbinden.
In "Asset Publisher" -> "Konfiguration" -> Reiter "teilen" kann man dazu diesen Code kopieren.


<script src="http://meinserver/html/js/liferay/widget.js" type="text/javascript"></script>
<script type="text/javascript">
	Liferay.Widget({ url: 'http://meinserver/widget/web/guest/home/-/101_INSTANCE_BBlahblubVK'});
</script>


Das ist bis hierhin grundsätzlich kein Problem . Rufe ich jetzt die Seite mit dem eingefügten Code auf, dann bekomme ich folgende Fehlermeldung:

Dieser Inhalt kann nicht in einem Frame angezeigt werden
Um die Informationen zu schützen, die Sie auf dieser Website eingeben, hat der Herausgeber dieser Inhalte das Anzeigen der Inhalte in einem Frame untersagt.

Mögliche Vorgehensweise:
- Diesen Inhalt in einem neuen Fenster öffnen


Ich habe noch das hier gefunden:

Eingestellt wird das in einem HTTP Header Attribut namens "x-frame-Options"
Wenn dieser Wert auf "Sameorigin" gesetzt wurde, so blockt jeder anständig Browser das laden dieser Seite in einem iframe, es sei denn die Seite mit dem IFRAME läuft unter derselben URL.


Leider habe ich keine Ahnung wie ich in Liferay diesen Header Wert beeinflussen kann, wenn das tatsächlich zur Lösung führt.

Hat jemand eine Idee wie ich das ändern kann?

Viele Grüße
Markus
Markus Wiche,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 11 加入日期: 15-8-17 最近的帖子
Hab es gefunden.
-> Kontrollbereich -> Konfiguration -> Serveradministration -> Eigenschaften -> Systemeigenschaften.
Dort die Suche benutzen, mit dem Suchwert "Header" . Siehe Anhang. Ergebnis:

Eigenschaft Wert
http.header.secure.x.content.type.options true
http.header.secure.x.frame.options true
http.header.secure.x.frame.options.255 /|SAMEORIGIN
http.header.secure.x.xss.protection 1

Die sicherste Variante ist die Freigabe des Plugins für Zugriffe von einer anderen Site durch hinzufügen einer Zeile in die portal-ext.properties oder portal-setup-wizard.properties. Die portal-ext.properties muss ggf. noch angelegt werden.

Diese Zeile fügt einen Eintrag vor der "...options.255" hinzu, weil sie eine niedrigere Indexzahl bekommt. Hier "...options.1"
http.header.secure.x.frame.options.1=/widget/web/guest/home/-/56_INSTANCE_TtFG4Bd9fkkh
thumbnail
Olaf Kock,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

Liferay Legend 帖子: 6396 加入日期: 08-9-23 最近的帖子
Danke für die Rückmeldung. Ich möchte noch eine Lösung dazu fügen: Für den Fall, dass ein Apache httpd vor dem Tomcat (oder appserver) steht, lässt sich dieser Header mit Apache Bordmitteln (oder Standardmodulen) natürlich dort auch einfügen - auch für spezifischere URLs
Markus Wiche,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 11 加入日期: 15-8-17 最近的帖子
danke für den Hinweis. Was ist mit ein "falls ein Apache vor dem tomcat steht" gemeint?
Eingefügt habe ich das Widget auf einem anderen Apache. Ist das damit gemeint? Könnte ich also dort in der httpd.conf einen Eintrag hinzufügen?

Leider bin bis jetzt nicht wirklich erfolgreich. Das ganze wird in der portal-ext.conf geladen hat aber keine Auswirkung. Ich kann das Widget immer noch nicht von einer entfernten Site aufrufen. In der Systemkonfiguration steht halt "Sameorigin". Leider weiß ich auch nach viel Lesen noch nicht wo ich die system-ext.conf hinlegen muss, damit die geladen wird. Es gibt da so viele unterschiedliche Aussagen zu. Bin gerade etwas verwirrt.

Bin für jede Hilfe sehr dankbar.
thumbnail
Olaf Kock,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

Liferay Legend 帖子: 6396 加入日期: 08-9-23 最近的帖子
"Apache vor Tomcat" meint, dass Apache port 80 und/oder 443 bedient und die für Tomcat bestimmten Requests per mod_proxy oder mod_jk an Tomcat weiterleitet. In dem Fall lässt sich Apache mit Bordmitteln konfigurieren und kann Requests - bevor Tomcat sie sieht - umleiten, beantworten oder ergänzen (z.B. durch Hinzufügung oder Weglassung von Headern)
thumbnail
Pina Springer,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 16 加入日期: 10-2-16 最近的帖子
Hallo,
ich hatte das gleiche Problem.
Bei mir hat nur das Einfügen von
http.header.secure.x.frame.options.1=/widget/web/guest/home/-/blogs
in der portal-ext.properties Abhilfe geschaffen.

Grüße,
Pina
Markus Wiche,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 11 加入日期: 15-8-17 最近的帖子
Hallo Pina,

in welchem Dateipfad liegt denn deine portal-ext.properties?
Bei mir liegt die in ${liferay-home} oder so. Dort habe ich auch die oben beschriebene Zeile eingefügt.
Ich habe halt den ganzen String des Widgets eingefügt. Auch die Zeichenkette am Ende der URL ->/widget/web/guest/home/-/101_INSTANCE_BOISbLIzbaVK'

Gruß
Markus
Markus Wiche,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 11 加入日期: 15-8-17 最近的帖子
Danke. So wird es mir klarer. Die Konstellation in meiner Testumgebung ist aber anders.
Ich habe mir mir das Tomcat-Bundle runtergeladen und auf einen Linux Server entpackt.
thumbnail
Pina Springer,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 16 加入日期: 10-2-16 最近的帖子
Hallo Markus,
portal-ext.properties liegt bei mir in liferayhome/tomcat/webapps/ROOT/WEB-INF/classes
Aber ich verwende auch 6.1

Grüße,
Pina
Markus Wiche,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 11 加入日期: 15-8-17 最近的帖子
Hm. Ich mache das genauso. Wird auch in den Portaleigenschaften angezeigt.
Funktioniert aber nicht. In der aktuellen Liferay Version zumindest nicht.
Markus Wiche,修改在8 年前。

RE: Asset Publisher - Teilen - auf anderer Website

New Member 帖子: 11 加入日期: 15-8-17 最近的帖子
Also in der aktuellsten Liferay Version komme ich leider nur ans Ziel, wenn ich in die system-ext.properties folgendes einfüge:

--> http.header.secure.x.frame.options=false

Ist nicht die sicherste Variante, aber alles andere funktioniert nicht. Vielleicht ein Bug.

Aktuell nutze ich -> Liferay Portal Community Edition 6.2 CE GA5 (Newton / Build 6204 / November 25, 2015)