powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Хранение html в БД
7 сообщений из 7, страница 1 из 1
Хранение html в БД
    #38563611
maxapet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть сайт на MVC3. Решил хранить статьи в БД. Статьи представляют из себя текст с html-разметкой, добавляютмя на страницу через Html.Partial. Столкнулся с двумя проблемами: при загрузке текста из БД производится автоматическая замена символов <, >, " и т.д. на escape-последовательности, а при попытке сохранить статью через сайт получаю сообщение о том, что данные вроде "<p class=articleParagraph..." являются небезопасными. Как быть? Как это вообще реализуется? Наверняка ведь есть типовые решения.
...
Рейтинг: 0 / 0
Хранение html в БД
    #38563631
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По первому вопросу - попробуй для переброски статьи в представление воспользоваться не string, а MvcHtmlString.Create() - такая строка не будет преобразовываться
...
Рейтинг: 0 / 0
Хранение html в БД
    #38563646
maxapet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, действительно, помогло. А я-то городил преобразование через jQuery. :)
Вот бы ещё со второй частью разобраться...
...
Рейтинг: 0 / 0
Хранение html в БД
    #38563661
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) @Html.Raw(model.SomeData)
2) [ValidateInput(false)] для экшена
...
Рейтинг: 0 / 0
Хранение html в БД
    #38563682
Фотография Sputnick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[ValidateInput(false)] для экшена
---
это есть не очень безопасно, привет XSS

XSS (англ. Сross Site Sсriрting — «межсайтовый скриптинг») — тип атаки на веб-системы, заключающийся во внедрении в выдаваемую веб-системой страницу вредоносного кода (который будет выполнен на компьютере пользователя при открытии им этой страницы) и взаимодействии этого кода с веб-сервером злоумышленника. Является разновидностью атаки «внедрение кода».

в модели представления помечаем нужно свойство:

Код: c#
1.
2.
[AllowHtml]
public string Company_name { get; set; }


подробней - http://prokomputer.ru/forum/threads/kak-zapisat-html-kod-v-bd-a-zatem-vyvesti-razmetku-v-predstavlenii.72/

есть библиотека AntiXSS, разработанная Microsoft, но она к чертям портит всю разметку,
...
Рейтинг: 0 / 0
Хранение html в БД
    #38564013
maxapet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в чём заключается то, что MS Anti-XSS портит разметку?
...
Рейтинг: 0 / 0
Хранение html в БД
    #38564769
Фотография Sputnick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxapetА в чём заключается то, что MS Anti-XSS портит разметку?

AntiXSS + html раазметка
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Хранение html в БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]