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> |
<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" |
Чтобы настроить безопасный список, вызовите MarkAsSafe метод .