Attributo alt immagine rimosso con carattere barra verticale: aggiorna il criterio XSS
Gli attributi dell’immagine alt che contengono il carattere barra verticale (|) non vengono mantenuti nell’Editor Rich Text di AEM Sites a causa del criterio di protezione XSS predefinito. Per risolvere questo problema, aggiorna la configurazione dei criteri in modo da consentire il carattere barra verticale.
Descrizione description
Quando si utilizza il componente Testo in Adobe Experience Manager (AEM) Sites, l’aggiunta di un’immagine con un attributo alt contenente il carattere barra verticale (|) determina la rimozione dell’attributo dopo il salvataggio e la riapertura della finestra di dialogo. Questo comportamento si verifica perché il criterio di protezione XSS integrato di AEM non consente il carattere pipe nell’attributo alt, causandone l’eliminazione durante la convalida del contenuto. Altri caratteri speciali come -, &, * e $ non sono interessati da questo comportamento.
Ambiente
Siti Adobe Experience Manager (AEM) (tutte le versioni, incluso AEM as a Cloud Service)
Sintomi
- Dopo l’aggiunta di un’immagine con un attributo
altcontenente il carattere barra verticale (ad esempioalt="test | alt") nella modalità di modifica Source dell’Editor Rich Text del componente Testo, il valore viene inizialmente salvato. - Alla riapertura della finestra di dialogo e alla verifica della modalità di modifica di Source, l’attributo
altnon è presente nel tagimg. - Se la finestra di dialogo viene salvata nuovamente, il testo
altverrà perso definitivamente dall’archivio dei contenuti.
Causa
La configurazione predefinita dei criteri di protezione XSS di AEM non consente il carattere barra verticale (|) nell’attributo alt per le immagini. Di conseguenza, l’attributo viene rimosso durante la convalida del testo RTF.
Risoluzione resolution
Per risolvere il problema, segui la procedura riportata di seguito:
-
Individua il file di configurazione dei criteri di protezione XSS nell’istanza di AEM. Non modificare i file direttamente nelle directory di sistema predefinite.
-
Creare una sovrapposizione personalizzata della configurazione dei criteri di protezione XSS nella directory del progetto, ad esempio la directory
/apps. -
Nella sovrapposizione personalizzata, aggiornare l’espressione regolare (regex) per l’attributo
altin modo da includere il carattere barra verticale (|) nella classe di caratteri consentita. Ad esempio, se il regex originale è([ \p{L}\p{N},'.\s-_()\?] |&[ 0-9] {2};), aggiungere il carattere barra verticale in modo che diventi([ \p{L}\p{N},'.\s-_()\?|] |&[ 0-9] {2};). -
Salva e distribuisci la configurazione aggiornata nell’ambiente AEM.
-
Verifica la modifica:
- Apri un componente Testo nell’Editor Rich Text.
- Aggiungere un’immagine e impostare il relativo attributo
altsu un valore contenente il carattere barra verticale (ad esempio,alt="test | alt") utilizzando la modalità Modifica Source. - Salvare e chiudere la finestra di dialogo, quindi riaprirla e selezionare la modalità Modifica Source per confermare che l’attributo
altpersiste.
-
Se utilizzi AEM as a Cloud Service, tieni presente che gli aggiornamenti dei prodotti potrebbero sovrascrivere la sovrascrittura. Dopo ogni aggiornamento, rivedi e riapplica la personalizzazione, se necessario.
Lettura correlata
Configura l’editor Rich Text per creare contenuti in Adobe Experience Manager