Validações
Como parte do processo de exportação de extensões customizadas as seguintes validações são executadas pela ferramenta export em suas customizações para assegurar que estejam em conformidade com os padrões de implementação na nuvem.
devtoolkit_extensions.xml arquivo, as seguintes validações são realizadas. Em breve, se alguma dessas validações falhar, o alvo de validação falhará e a ferramenta exibirá uma mensagem de exceção detalhando o erro e onde a validação falhou pela primeira vez. A ferramenta criará o pacote de customização somente se todos os erros de validação forem corrigidos. Essas validações são aplicadas ao carregar personalizações no seu ambiente SaaS.- Validando propriedades customizadas
- Conflitos de nomes de classes
- Conflitos de nome de arquivo
- Log4j 1.x uso (descontinuado)
-Dfail sinalizador:./sci_ant.sh -f ../devtoolkit/devtoolkit_extensions.xml export -Dfail=class,file,log4jVerificações de validação
- Conflitos de nomes de classes
- Valida se não há arquivos de classe duplicados entre o JAR de personalização e as classes existentes do site
out-of-the-box (OOB).
- Conflitos de nome de arquivo
- Valida se todos os arquivos localizados no diretório
/files/dentro do JAR estão em conformidade com uma lista branca predefinida de caminhos de arquivos permitidos. Qualquer arquivo que não corresponda à lista de permissões é sinalizado como um conflito.
- Importações de classe ausentes
- Valida se todas as classes importadas que são usadas no código de personalização estão presentes no tempo de execução do DTK ou fazem parte das bibliotecas de terceiros aprovadas. Essa validação evita falhas no tempo de execução devido à falta de dependências.
- Validações de extensões de banco de dados
- Colunas LOB
- Verifica as colunas para garantir que nenhuma nova coluna LOB personalizada seja introduzida nos xmls da entidade.
- Tipos de dados grandes
- Verifica as colunas para garantir que nenhuma nova coluna com tamanho superior a 500 seja introduzida nos XMLs da entidade.
- Excesso de índices personalizados
- Verifica se o número de índices personalizados excede cinco em uma tabela personalizada ou pronta para uso (OOB), o que pode afetar o desempenho de inserção ou atualização.
- Conexões diretas com o banco de dados e operações SQL
- As validações a seguir identificam padrões arriscados de acesso ao banco de dados.
- Verificações para estruturas de registro não aprovadas e Sys.Out
- Sinaliza o uso das seguintes estruturas de registro em console no código personalizado.
System.out.print*System.err.print*
- Sinaliza o uso das seguintes importações de registro não aprovadas.
- Apache Commons Registro:
org.apache.commons.logging. - SLF4J (Fachada de registro simples para Java):
org.slf4j. - Registro de utilidades Java:
java.util.logging. - Logback:
ch.qos.logback.
- Apache Commons Registro:
- Sinaliza o uso das seguintes estruturas de registro em console no código personalizado.
- Verificações para personalizações web.xml em relação ao OOB web.xml
- Essa validação garante que o arquivo personalizado mantenha todas as configurações necessárias do OOB ( web.xml ) fornecido com o DTK, permitindo entradas adicionais. Quaisquer elementos em falta são comunicados durante a validação.
<runtime_sandbox>/tmp/report/*_details.csv<runtime_sandbox>/tmp/report/*_summary.csvValidando propriedades customizadas
A ferramenta executa uma série de validações nas propriedades customizadas incluídas no arquivo customer_override.properties para assegurar que estejam em conformidade com os padrões de implementação na nuvem. As seguintes validações são executadas nas propriedades customizadas:
yfsxapirestelasticsearchlogfilterdbclassCachejdbcService (of the pattern jdbcService.*.prop_* )
DATABASE_SUPPORT=Y. A ferramenta também ignora as propriedades customizadas
definidas para propriedades que estão no formato yfs.yfs.logall*.Validação do uso de Log4j 1.x
A validação Log4j 1.x verifica se o JAR de personalização não inclui ou faz referência a bibliotecas Log4j 1.x (log4j-1.x.jar) ou APIs (org.apache.log4j.*). O Log4j 1.x chegou ao fim da vida útil e contém vulnerabilidades de segurança conhecidas. O uso dessa estrutura de registro não é permitido para evitar riscos de segurança e garantir a conformidade com os padrões de registro suportados.