Magento 2 @escapeNotVerified


65

25
Ei ... Por que o voto negativo? Não tenho permissão para fazer perguntas?
Marius

Respostas:


95

Essa tag é usada por testes estáticos. Qualquer saída potencialmente insegura deve ser marcada com @escapeNotVerifiedou @noEscapepara passar nos testes, o último significa que esse uso específico foi verificado e é seguro.

Nas versões futuras, todas as ocorrências de @escapeNotVerifiedserão verificadas e marcadas com @noEscapeou escapadas por um destes métodos:

  • \Magento\Framework\View\Element\AbstractBlock::escapeHtml
  • \Magento\Framework\View\Element\AbstractBlock::escapeUrl
  • \Magento\Framework\View\Element\AbstractBlock::escapeXssInUrl
  • \Magento\Framework\View\Element\AbstractBlock::escapeQuote

Observe também que algumas saídas são consideradas seguras e não devem ser marcadas com essas anotações:

  • Entre aspas simples
  • Entre aspas duplas, mas sem variáveis
  • Digite casting para bool, int
  • Chamadas de método que contêm 'html' em seus nomes, como getTitleHtml, também devem gerar HTML escapado

3
Greats responder @Alex
Amit Bera

Bom Ans +1 @Alex :)
Rama Chandran M

Ajuda +1 @Alex
Nikunj Vadariya

4
No ritmo atual, a substituição será feita aproximadamente 2026: D
Fabian Schmengler

26

Eu o encontro nos devdocs do Magento2

Teste estático

Para melhorar a segurança contra injeções de XSS, um teste estático XssPhtmlTemplateTest.phpé adicionado ao dev \ tests \ static \ testsuite \ Magento \ Test \ Php.

Este teste estático encontra todas as chamadas de eco nos modelos PHTML e determina se é ou não escapado adequadamente.

Abrange os seguintes casos:

  • /* @noEscape */antes da saída. A saída não requer escape. O teste é verde.

  • /* @escapeNotVerified */antes da saída. O escape de saída não está marcado e deve ser verificado. O teste é verde.

Leia o Magento Docs em 2.0 ou 2.1

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.