AntiXssEncoder.UrlPathEncode(String) Méthode

Définition

Encode les chaînes de chemin d’accès à utiliser dans une URL.

protected public:
 override System::String ^ UrlPathEncode(System::String ^ value);
protected internal override string UrlPathEncode(string value);
override this.UrlPathEncode : string -> string
Protected Friend Overrides Function UrlPathEncode (value As String) As String

Paramètres

value
String

Chaîne à encoder.

Retours

URL qui contient le chemin codé.

Remarques

Cette méthode encode tous les caractères, à l’exception de ceux qui se trouvent dans la liste sécurisée. Les caractères sont encodés à l’aide %SINGLE_BYTE_HEX de la notation.

Le tableau suivant répertorie les caractères sécurisés par défaut. Tous les caractères proviennent des contrôles Unicode C0 et de la plage de caractères latins de base.

Caractère(s) Description
A-Z Caractères alphabétiques majuscules
a-z Caractères alphabétiques minuscules
0–9 Nombres
# Signe numérique, hachage
% Symbole pour cent
( ) Parenthèses
- Trait d’union, moins
. Point, point, arrêt complet
/ Barre oblique
\ Barre oblique inverse
_ Trait de soulignement
{ } Accolades, crochets courbés
| Ligne verticale
~ Tilde

Le tableau suivant répertorie les exemples d’entrées et les sorties encodées correspondantes.

Input Sortie
http://www.contoso.com:8080/<en-us>/[page].htm?v={value1}#x=[amount] http://www.contoso.com:8080/%3cen-us%3e/%5bpage%5d.htm?v={value1}#x=[amount]
alert('XSS Attack!'); alert(%27XSS%20Attack%21%27)%3b
<script>alert('XSS Attack!');</script> %3cscript%3ealert(%27XSS%20Attack%21%27)%3b%3c/script%3e
alert('XSSあAttack!'); alert(%27XSS%e3%81%82Attack%21%27)%3b
user@contoso.com user@contoso.com
"Anti-Cross Site Scripting Namespace" %22Anti-Cross%20Site%20Scripting%20Namespace%22

Cette méthode encode uniquement le chemin d’accès d’une URL. Cette méthode n’encode pas le schéma (par exemple, http:, ftp:ou file:), l’autorité (par exemple, www.northwind.com ouwww.contoso.com:8080), la requête ou le fragment (par exemple). ?v=s978dfs9#x=103 S’il n’y a pas de schéma ou d’autorité dans la chaîne, la chaîne est supposée être un chemin relatif et le chemin d’accès est encodé. Dans l’URL suivante, seule la sous-chaîne /default.htm est encodée :

http://www.contoso.com:8080/default.htm?v=s978dfs9#x=103

S’applique à