AntiXssEncoder.HtmlAttributeEncode(String, TextWriter) Метод

Определение

Кодирует и выводит заданную строку для использования в атрибуте 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)

Параметры

value
String

Кодируемая строка.

output
TextWriter

Средство записи текста, используемое для вывода строки.

Комментарии

Этот метод кодирует все символы, кроме тех, которые находятся в списке надежных. Символы кодируются с помощью &#DECIMAL; нотации.

Примечание

Перед добавлением на страницу введите двойные кавычки (" ") или одинарные кавычки (' ').

В следующей таблице перечислены безопасные символы по умолчанию. Все они относятся к элементам управления C0 в Юникоде и диапазону символов "Базовый латинский ", если не указано в столбце Описание.

Символы Описание
A–Z Латинские буквы в верхнем регистре
a–z Латинские буквы в нижнем регистре
0-9 Числа
! Восклицательный знак
# Числовой знак, хэш
$ Знак доллара
% Знак процента
( ) Круглые скобки
* Звездочка
+ Знак "плюс"
, Запятая
- Дефис, минус
. Точка, точка, полная остановка
/ Слэш
: Двоеточие
; Точка с запятой
= Знак равенства
? Вопросительный знак
@ Коммерческое предложение при подписании
[ ] Квадратные скобки
\ Обратная косая черта
^ Курсор
_ Символ подчеркивания
` Гравийный акцент
{ } Фигурные скобки, фигурные скобки
| Вертикальная линия
~ Тильда
0x00A1 — 0x00AC Специальные символы между 0x00A1 (161 десятичная) и 0x00AC (172 десятичные) из элементов управления C1 в Юникоде и в дополнение к символам latin-1 .
0x00AE — 0x00FF Специальные символы в диапазоне 0x00AE (174 десятичных) и 0x00FF (255 десятичных) из элементов управления C1 в Юникоде и дополнительного диапазона символов Latin-1 .
0x0100 — 0x017F Символы от 0x0100 (256 десятичных) до 0x017F (383 десятичных). (Диапазон символов Юникода Latin-Extended-A .)
0x0180 — 0x024F Символы между 0x0180 (384 десятичные) и 0x024F (591 десятичная). (Диапазон символов Юникода Latin-Extended-B .)
0x0250 — 0x02AF Символы от 0x0250 (592 десятичных) до 0x02AF (687 десятичных). (Диапазон символов расширений IPA в Юникоде .)
0x02B0 — 0x02FF Символы от 0x02B0 (688 десятичных) до 0x02FF (767 десятичных). (Диапазон символов символов модификатора между пробелами в Юникоде .)
0x0300 — 0x036F Символы от 0x0300 (768 десятичных) до 0x036F (879 десятичных). (Диапазон символов объединения диакритических знаков в Юникоде.)

В следующей таблице перечислены примеры входных данных и соответствующие закодированные выходные данные.

Примеры входных данных Закодированные выходные данные
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&#32;Site&#32;Scripting&#32;Namespace&quot;

Чтобы настроить безопасный список, вызовите MarkAsSafe метод .

Применяется к