AEM reindirizza a HTTP quando si accede tramite load balancer con terminazione SSL/TLS

Questo articolo illustra il problema dell’Experience Manager da cui vieni reindirizzato https a http quando si tenta di accedervi tramite un load balancer (o CDN) con terminazione SSL.

Descrizione description

Ambiente

Experience Manager

Problemi/Sintomi

Quando si accede ad AEM tramite un load balancer (o CDN) con terminazione SSL, AEM reindirizza da HTTPS a HTTP.

La terminazione SSL nel load balancer indica che i certificati SSL sono installati nel load balancer. L’utente finale accede al sito tramite https://, mentre nel back-end l’accesso al Dispatcher/server web e all’AEM avviene tramite http://.

Risoluzione resolution

Per risolvere il problema:

I.Update Configurazione /clientheaders del Dispatcher

Consulta la documentazione del load balancer per individuare l’intestazione configurata dal servizio al fine di notificare la terminazione SSL ai sistemi a valle. Per semplicità, questi passaggi si basano sul presupposto che l’intestazione HTTP corretta sia "X-Forwarded-Proto: https"

  1. Accedi al server del dispatcher.
  2. Apri la configurazione .any della farm del dispatcher.
  3. Aggiungi l’intestazione alla sezione /clientheaders.

Se utilizzi un dispatcher senza load balancer o se il load balancer o il proxy non riesce a impostare il X-Forwarded-Proto , quindi puoi impostarla a livello di server web o dispatcher. Se sta usando Apache HTTP Server, quindi aggiorna HTTPS VirtualHost con la presente direttiva:

1
RequestHeader  set X-Forwarded-Proto  "https"

II. Aggiornare le configurazioni dell’intestazione:

  1. Vai a http://host:port/system/console/configMgr/org.apache.felix.http.sslfilter.SslFilter, e accedi come amministratore.
  2. Imposta SSL inoltra intestazione a X-Forwarded-Proto
  3. Imposta SSL inoltra valore a https.
  4. Fai clic su Salva.

Nota:

Non esiste uno standard per le intestazioni del proxy inverso che indicano al back-end il protocollo utilizzato. Tuttavia, ecco alcuni esempi noti:

  • Amazon ELB (Elastic Load Balancer) utilizza l’intestazione "X-Forwarded-Proto: https".
  • Amazon Cloudfront CDN utilizza l’intestazione "X-Cloudfront-Proto: https".

III. Aggiornare la configurazione di Jetty OSGi (AEM 6.3 e versioni successive)

In AEM 6.3 e versioni successive è necessaria una configurazione aggiuntiva:

  • Accedere a http://aem-host:port/system/console/configMgr/org.apache.felix.http.
  • Abilita l’impostazione Abilita connessione proxy/load balancer e salvarlo.

Causa

Diversi load balancer inviano intestazioni diverse per notificare ai sistemi back-end che SSL viene terminato a monte. Ad esempio: Amazon ELB utilizza l’intestazione "X-Forwarded-Proto: https".

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f