AntiXssEncoder.XmlAttributeEncode(String) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Koduje określony ciąg do użycia w atrybutach XML.
public:
static System::String ^ XmlAttributeEncode(System::String ^ input);
public static string XmlAttributeEncode(string input);
static member XmlAttributeEncode : string -> string
Public Shared Function XmlAttributeEncode (input As String) As String
Parametry
- input
- String
Ciąg do kodowania.
Zwraca
Zakodowany ciąg.
Uwagi
Ta metoda koduje wszystkie znaki z wyjątkiem tych, które znajdują się na liście bezpiecznych. Znaki są kodowane przy użyciu &#DECIMAL; notacji.
Note
Umieść znaki podwójnego cudzysłowu (" ") lub pojedynczy cudzysłów () wokół wynikowego ciągu przed dodaniem go do strony.
W poniższej tabeli wymieniono domyślne bezpieczne znaki. Wszystkie znaki pochodzą z kontrolek Unicode C0 i podstawowego zakresu znaków łacińskich , chyba że zostaną zanotowane w kolumnie Opis.
| Wykres kodu Unicode | Znaki | Opis |
|---|---|---|
| A-Z | Wielkie litery alfabetu łacińskiego | |
| a-z | Małe litery alfabetyczne | |
| 0–9 | Liczby | |
| ! | Wykrzyknik | |
| # | Znak numeru, skrót | |
| $ | Znak dolara | |
| % | Znak procentu | |
| ( ) | Nawiasy | |
| * | Asterisk | |
| + | Znak plus | |
| , | Przecinek | |
| - | Łącznik, minus | |
| . | Kropka, kropka, pełne zatrzymanie | |
| / | Ukośnik | |
| : | Dwukropek | |
| ; | Średnik | |
| = | Znak równości | |
| ? | Znak zapytania | |
| @ | Znak komercyjny | |
| [ ] | Nawiasy kwadratowe | |
| \ | Ukośnik odwrotny | |
| ^ | Daszek | |
| _ | Podkreślenie | |
| ` | Akcent grobowy | |
| { } | Nawiasy klamrowe, nawiasy klamrowe | |
| | | Linia pionowa | |
| ~ | Tylda | |
| 0x00A1 — 0x00AC | Znaki specjalne między 0x00A1 (161 dziesiętne) i 0x00AC (172 dziesiętne) z zakresu znaków Unicode C1 i Łaciński-1. | |
| Znaki specjalne między 0x00AE (174 dziesiętne) i 0x00FF (255 dziesiętne) z zakresu znaków Unicode C1 i Łaciński-1. | ||
| 0x0100 — 0x017F | Znaki między 0x0100 (256 dziesiętne) i 0x017F (383 dziesiętne). (Zakres znaków Unicode Latin-Extended-A ). | |
| 0x0180 — 0x024F | Znaki między 0x0180 (384 dziesiętne) i 0x024F (591 dziesiętne). (Zakres znaków Unicode Latin-Extended-B ). | |
| 0x0250 — 0x02AF | Znaki między 0x0250 (592 dziesiętne) i 0x02AF (687 dziesiętne). (Zakres znaków rozszerzeń IPA Unicode). | |
| 0x02B0 — 0x02FF | Znaki między 0x02B0 (688 dziesiętne) i 0x02FF (767 dziesiętne). (Zakres znaków modyfikatora odstępów Unicode). | |
| 0x0300 — 0x036F | Znaki między 0x0300 (768 dziesiętne) i 0x036F (879 dziesiętne). (Unicode Łączący zakres znaków znaków diakrytycznych ). |
W poniższej tabeli wymieniono przykłady danych wejściowych i odpowiednie zakodowane dane wyjściowe.
| Dane wejściowe | Output |
|---|---|
alert('XSS Attack!'); |
alert('XSS Attack!'); |
<script>alert('XSS Attack!');</script> |
<script>alert('XSS Attack!');</script> |
alert('XSSあAttack!'); |
alert('XSSあAttack!'); |
user@contoso.com |
user@contoso.com |
"Anti-Cross Site Scripting Namespace" |
"Anti-Cross Site Scripting Namespace" |
Aby dostosować bezpieczną listę, wywołaj metodę MarkAsSafe .