System.Xml.XmlReaderSettings.Schemas propriedade

Este artigo fornece observações complementares à documentação de referência para essa API.

Este artigo refere-se à Schemas propriedade.

Importante

  • Não use esquemas de fontes ou locais desconhecidos ou não confiáveis. Isso compromete a segurança do seu código.
  • Os esquemas XML (incluindo esquemas embutidos) são inerentemente vulneráveis a ataques de negação de serviço; não os aceite em cenários não confiáveis.
  • As mensagens de erro e exceções de validação de esquema podem expor informações confidenciais sobre o modelo de conteúdo ou caminhos de URI para o arquivo de esquema. Tenha cuidado para não expor essas informações a chamadores não confiáveis.
  • Para obter informações adicionais, consulte a seção "Considerações de segurança".

A XmlSchemaSet classe oferece suporte apenas a esquemas XSD (linguagem de definição de esquema XML). XmlReader instâncias criadas pelo método não podem ser configuradas para habilitar a Create validação de esquema XDR (XML-Data Reduced ).

Considerações de segurança

  • Não use esquemas de fontes desconhecidas ou não confiáveis. Isso comprometerá a segurança do seu código. A classe XmlUrlResolver é usada para resolver esquemas externos por padrão. Para desabilitar a resolução de elementos de inclusão, importação e redefinição de um esquema, defina a propriedade XmlSchemaSet.XmlResolver como null.

  • As exceções geradas como resultado do uso da classe XmlSchemaSet, como a classe XmlSchemaException, podem conter informações confidenciais que não devem ser expostas em cenários não confiáveis. Por exemplo, a propriedade SourceUri de um XmlSchemaException retorna o caminho do URI para o arquivo de esquema que causou a exceção. A propriedade SourceUri não deve ser exposta em cenários não confiáveis. As exceções devem ser tratadas adequadamente para que essas informações confidenciais não sejam expostas em cenários não confiáveis.