Język

AntiXssEncoder.HtmlAttributeEncode(String, TextWriter) Metoda

Definicja

Koduje i wyprowadza określony ciąg do użycia w atrybucie HTML.

protected public:
 override void HtmlAttributeEncode(System::String ^ value, System::IO::TextWriter ^ output);
protected internal override void HtmlAttributeEncode(string value, System.IO.TextWriter output);
override this.HtmlAttributeEncode : string * System.IO.TextWriter -> unit
Protected Friend Overrides Sub HtmlAttributeEncode (value As String, output As TextWriter)

Parametry

value
String

Ciąg do kodowania.

output
TextWriter

Składnik zapisywania tekstu używany do wyprowadzania ciągu.

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 pochodzą z kontrolek Unicode C0 i podstawowego zakresu znaków łacińskich , chyba że zostaną zanotowane w kolumnie Opis.

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.
0x00AE — 0x00FF 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.

Przykłady danych wejściowych Zakodowane dane wyjściowe
alert('XSS Attack!'); alert('XSS Attack!');
<script>alert('XSS Attack!');</script> &lt;script&gt;alert(&#39;XSS Attack!&#39;);&lt;/script&gt;
alert('XSSあAttack!'); alert(&#39;XSS&#12354;Attack!&#39;);
user@contoso.com user@contoso.com
"Anti-Cross Site Scripting Namespace" &quot;Anti-Cross Site Scripting Namespace&quot;

Aby dostosować bezpieczną listę, wywołaj metodę MarkAsSafe .

Dotyczy