cancel
Showing results for 
Search instead for 
Did you mean: 

Fehler nach der Anmeldung (SSL Redirect)

pleibling
Champ in-the-making
Champ in-the-making

Hallo, ich habe einen Alfresco Community Server 201707 unter Windows Server 2012R2.

Dieser steht im LAN hinter eine Sophos Home mit aktiviertem WAF (Web Application Filter) - diesen verwende ich um mehrere Rechner / Dienste über eine Adresse zur verfügung zu stellen.

Das ganze ist mit einem Wildcard Zertifikat geschützt.

Es wird ein Redirect (oder eher ein Proxyverbindung) gemacht von https://host.domain.de nach http://interneip:8080

Ich kann ohne Probleme im Netzwerk zugreifen mit der internen Adresse, von extern kann ich einwandfrei Webdav und auch die Verwaltungstools nutzen - wenn ich mich jedoch an das Share anmelde, kommt nach dem Loginfenster die folgende Meldung:

Fehlermeldung

Muss ich noch eine Einstellung im Alfresco anpassen?

Z.B. diese von dieser Seite: Configuring SSL for a production environment | Alfresco Documentation ? Ich hatte es eher so verstanden, das dies erst erforderlich ist wenn man Alfreso selber auf SSL Umstellt.

Danke für eure Hilfe.

1 ACCEPTED ANSWER

afaust
Legendary Innovator
Legendary Innovator

Warum sind bei Referrer und Origin unterschiedliche Hostnamen angegeben? Beide sollten den/die gleichen Hostnamen enthalten.

View answer in original post

6 REPLIES 6

afaust
Legendary Innovator
Legendary Innovator

In einem solchen Szenario ist i.d.R die CSRFPolicy Konfiguration in der share-config-custom.xml anzupassen, da die externe Adresse nicht mit der internen übereinstimmt, und so ggf. ein Validierungsfehler bei bestimmten Abfragen auftritt. Wichtig sind hier die Pattern für Referrer und Origin. In meinen Setups habe ich hierzu immer einen einfachen Konfigurationsblock mit Platzhaltern, die dann abhängig der öffentlichen Adresse ersetzt werden.

pleibling
Champ in-the-making
Champ in-the-making

Vielen Dank für die schnelle Hilfe - ich habe in der Datei C:\alfresco-community\tomcat\shared\classes\alfresco\web-extension\share-config-custom.xml den folgenden Block:

   <config evaluator="string-compare" condition="CSRFPolicy" replace="true">
      <filter/>
   </config>

gegen diesen getauscht:

<config evaluator="string-compare" condition="CSRFPolicy">
<properties>
<referer>^https?://(%PUBLIC_SHARE_HOST_PATTERN%%PUBLIC_SHARE_PORT_PATTERN%|localhost%LOCAL_PORT_PATTERN%)(?:$|/.+$)</referer>
<origin>^https?://(%PUBLIC_SHARE_HOST_PATTERN%%PUBLIC_SHARE_PORT_PATTERN%|localhost%LOCAL_PORT_PATTERN%)(?:$|/.+$)</origin>
</properties>

</config>

Danach den Server neugestartet - leider aber immer noch das selbe Problem. War das zuvor geschriebene richtig, oder habe ich was falsch gemacht?

afaust
Legendary Innovator
Legendary Innovator

Die Werte für die Platzhalter á la %PUBLIC_SHARE_HOST_PATTERN% müssen natürlich mit sinnvollen Werten je nach öffentlicher Adresse ersetzt werden.

Z.B. wenn host.domain.de die Serveradresse sein soll, 123.123.123.123 die theoretische IP-Adresse und die WAF ggf. auch ausgewählte Seiten per unverschlüsseltes HTTP zulässt/bereitstellt, dann wäre die folgende Einstellung denkbar:

   <config evaluator="string-compare" condition="CSRFPolicy">
<properties>
<referer>^https?://(host\.domain\.de(:(80|443))?|(localhost|123\.123\.123\.123):8080)(?:$|/.+$)</referer>
<origin>^https?://(host\.domain\.de(:(80|443))?|(localhost|123\.123\.123\.123):8080)(?:$|/.+$)</origin>
</properties>
</config>

Dies ist eine komplexere Konfiguration, als man häufig im Netz als Beispiel findet. Leider ignorieren die meisten Beispiele im Netz komplett den Fakt, dass es sich um Regex-Pattern handelt, und nutzen gerade bzgl. des Hostnamen gefährlicherweise den Universalplatzhalter ".", statt diesen korrekt zu escapen. Auch findet man selten Beispiele, die sowohl für Zugriffe über WAF/Proxy funktionieren als auch für (technische) Zugriffe an diesen vorbei.

pleibling
Champ in-the-making
Champ in-the-making

Hi, danke dir für deine schnelle Antwort.

..

Leider klappt es aber immer noch nicht - ich habe den folgenden Teil eingetragen und neugestartet:

   <config evaluator="string-compare" condition="CSRFPolicy">
      <properties>
        <referer>^https?://(host\.domain\.de(Smiley Sad443))?(?:$|/.+$)</referer>
        <origin>^https?://(192\.168\.123\.123):8080)(?:$|/.+$)</origin>
      </properties>
    </config>

Meine URL von extern ist https://host.domain.de (keine feste IP, sondern ein DNS CNAME eintrag), intern ist die Adresse http://192.168.123.123:8080

Ist der Eintrag so richtig?

afaust
Legendary Innovator
Legendary Innovator

Warum sind bei Referrer und Origin unterschiedliche Hostnamen angegeben? Beide sollten den/die gleichen Hostnamen enthalten.

pleibling
Champ in-the-making
Champ in-the-making

Super, das war es:

   <config evaluator="string-compare" condition="CSRFPolicy">
      <properties>
         <referer>^https?://(host\.domain\.de(Smiley Sad80|443))?|(localhost|192\.168\.123\.123):8080)(?:$|/.+$)</referer>
         <origin>^https?://(host\.domain\.de(Smiley Sad80|443))?|(localhost|192\.168\.123\.123):8080)(?:$|/.+$)</origin>
      </properties>
   </config>

Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.