Com os melhores cumprimentos,

Boa tarde,Á algum tempo que temos convivido com um problema sem o resolver. A necessidade de enviar código HTML/FreeMarker num pedido HTTP e esse conteúdo ser interpretado pelo Sanatizer como código malicioso.A nossa solução para isso tem diso desligar a Sanatization nos parâmetros da DIF, só que dessa forma expomos toda a aplicação a ataques desse tipo em qualquer parâmetro.Criei hoje uma solução para este problema. A possibilidade de declarar parâmetros considerados seguros e que mesmo com a configuração de Sanatization ligada não serão processados mantendo o seu conteúdo inaltarado.São usados de uma das seguintes formas:1. A forma desejável para todos os casosA annotation Parameter passa a receber um novo parâmetro trusted que se a true adiciona o referido parâmetro como de confiança e não é processado./** */
@Parameter(trusted = true)
protected String businessID;2. A forma alternativa para quando não é possível declarar os parâmetrosAo nível da stage declarar uma lista de parâmetros a considerar seguros.@StageDefinition(name = "Data Provider", service = "dataproviderservice")
@Callback(CallbackType.OFF)
@DeclareTrustedParameters("content,sql,json")
public class DataProvider {
Está disponível na versão 2.2.9-2-SNAPSHOT no HEAD já comitado.Deverá ser aplicável à FUC e RUC e outros que tenham a mesma necessidade.Com os melhores cumprimentos,Pedro Viegas
Director Departamento de Desenvolvimento
(Development Manager)
Digitalis Informática Lda
R&D: http://development.digitalis.pt