XmlReaderSettings.MaxCharactersInDocument Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit une valeur indiquant le nombre maximal autorisé de caractères dans un document XML. Une valeur zéro (0) signifie qu’aucune limite n’est limitée à la taille du document XML. Une valeur différente de zéro spécifie la taille maximale, en caractères.
public:
property long MaxCharactersInDocument { long get(); void set(long value); };
public long MaxCharactersInDocument { get; set; }
member this.MaxCharactersInDocument : int64 with get, set
Public Property MaxCharactersInDocument As Long
Valeur de propriété
Nombre maximal autorisé de caractères dans un document XML. La valeur par défaut est 0.
Exemples
Le code suivant définit cette propriété, puis tente d’analyser un document supérieur à la limite. Dans un scénario réel, vous définissez cette limite sur une valeur suffisamment grande pour gérer les documents valides, mais assez petite pour limiter la menace des documents malveillants.
string markup = "<Root>Content</Root>";
XmlReaderSettings settings = new XmlReaderSettings();
settings.MaxCharactersInDocument = 10;
try
{
XmlReader reader = XmlReader.Create(new StringReader(markup), settings);
while (reader.Read()) { }
}
catch (XmlException ex)
{
Console.WriteLine(ex.Message);
}
Dim markup As String = "<Root>Content</Root>"
Dim settings As XmlReaderSettings = New XmlReaderSettings()
settings.MaxCharactersInDocument = 10
Try
Dim reader As XmlReader = XmlReader.Create(New StringReader(markup), settings)
While (reader.Read())
End While
Catch ex As XmlException
Console.WriteLine(ex.Message)
End Try
Ce code produit la sortie suivante :
There is an error in XML document (MaxCharactersInDocument, ).
Remarques
Une valeur zéro (0) signifie qu’aucune limite n’est limitée au nombre de caractères dans le document analysé. Une valeur non nulle spécifie le nombre maximal de caractères pouvant être analysés.
Le nombre maximal de caractères pour le document inclut le nombre de caractères résultant d’entités développées.
Si le lecteur tente de lire un document dont la taille dépasse cette propriété, une XmlException valeur est levée.
Cette propriété vous permet d’atténuer les attaques par déni de service où l’attaquant envoie des documents XML extrêmement volumineux. En limitant la taille d’un document, vous pouvez détecter l’attaque et récupérer de manière fiable.