html текст
All interests
  • All interests
  • Design
  • Food
  • Gadgets
  • Humor
  • News
  • Photo
  • Travel
  • Video
Click to see the next recommended page
Like it
Don't like
Add to Favorites

What about MVC?

Продолжая тему безопасности, хочется также поговорить о еще одном виде вредоносного вмешательства, с помощью подделки межсайтовых запросов (CSRF). Наверное, это второй по популярности тип атаки на веб-приложение, после XSS, о котором мы говорили в предыдущей теме.

Суть CSRF атаки заключается в том, что какое-то приложение или сторонний ресурс отправляют от вашего имени запросы на сервер.
Представьте себе ситуацию, когда вы авторизовались под собой на каком-то сайте, например, на сайте интернет-магазина, в котором зарегистрированы. Далее вы спокойно продолжаете заниматься обычными, хорошими делами, и никого не трогаете. А в один прекрасный момент обнаруживаете, что в том интернет-магазине кто-то оставил отзыв от вашего имени. Как же так получилось, ведь пароль известен только вам? Все просто. Произошла CSRF-атака.

Сегодня мы попробуем имитировать простую CSRF-атаку, а также реализуем механизм защиты  от нее.
В первой части статьи мы познакомились с базовыми механизмами защиты от XSS-атак. Кроме этого, мы научились обходить эту защиту со стороны разработчика, для случаев, когда функционал сайта требует ввода пользователем произвольного контента.

Сегодня мы познакомимся со сторонним средством для обеспечения безопасности введенных, потенциально-опасных данных. Поможет нам в этом библиотека AntiXSS, разработанная Microsoft.
Если вы еще не страдали от XSS-атак на свое творение, то это только дело времени, или усилий, потраченных на защиту от них. О том, что же такое XSS, можно почитать в википедии.
Межсайтовый скриптинг - одна из самых распространенных уязвимостей в интернете. Даю гарантию, что как только вы представите свое творение-сайт широкой публике, то на него сразу же обрушится лавина попыток внедрить какую-либо пакость средствами XSS. Если в нескольких словах, то XSS (Сross Site Sсriрting) - вид уязвимости, которая позволяет внедрить в сайт вредоносный контент. Это может быть скрипт для кражи cookies, разметка для изменения контента, да и любой сторонний контент, который может как-то повлиять на нормальную работу сайта, или сломать всю вашу безопасность.

Сегодня мы начнем знакомиться с механизмами защиты от XSS-атак, а также посмотрим, как эту самую защиту можно обойти в случае необходимости.
Вам приходилось рисовать графики и диаграммы на разрабатываемых сайтах? Мне, например, приходилось. Как всегда, в этом деле спасают разнообразные сторонние решения в виде плагинов и фреймворков.
Проблема в том, что до сих пор я не знал ни одного достойного варианта, который предоставлял бы широкий функционал, был прост в интеграции, и, конечно же, был бесплатным. Раньше можно было жить с бесплатными контролами диаграмм от Telerik, но поскольку лавочка прикрылась, а точнее переросла в Kendo DataViz, который стоит немалых денег, то пришлось искать друге решение.

Я был безмерно удивлен и счастлив, когда узнал, что сам Google предоставляет всем желающим API для визуализации данных. Этот чудный продукт называется Google Chart Tools, и включает в себя полный набор всего необходимого, с множеством вариаций графиков, с примерами, документацией и прочими плюшками.

Сегодня мы познакомимся с Google Chart Tools, и попробуем "внедрить" а наше ASP.NET MVC приложение графики для отображения данных.
В предыдущей статье мы научились создавать и использовать простые хелперы в представлениях. То были небольшие расширения, которые избавляли нас от необходимости частенько повторять в представлениях фактически один и тот же кусок разметки с данными.

В разработке расширений у нас есть практически полная свобода, поэтому их можно делать довольно сложными и функциональными.

Представьте, что у вас есть некий проект - подобие веб-витрины. На одной странице вам нужно рисовать таблицу с категориями товаров, на другой - таблицу с товарами, на третьей - такую же таблицу еще с чем-то. На всех этих страницах таблицы имеют одинаковую структуру, и отличаются лишь количеством ячеек по горизонтали (для категорий нужно больше, а для товаров меньше). Кроме того, в ячейке таблицы товаров выводится блок "О товаре", а в таблице категорий - блок "О категории". Проблема, которую мы постараемся решить - дублирование на всех страницах кода для разметки таблицы, и сопоставление ее ячеек с нужными данными.

Сегодня мы создадим хэлпер для отображения на странице таблицы с какими-либо данными. Такой хэлпер должен уметь строить таблицы для любых обьектов, изменять количество столбцов в зависимости от настроек, а также для вывода данных использовать стороннюю разметку.
Давным-давно, в этом блоге я описывал несколько способов создания ссылки в виде изображения. Помнится, тогда я еще думал: "А ведь было бы круто, если бы в MVC имелся стандартный хэлпер, который наряду с ActionLink создавал бы ссылку в виде картинки, а не текста. Такой себе ActionImageLink!".

Признаюсь, в то время я был более глуп чем сейчас, и даже не думал о том, что хэлперы (расширения) можно создавать самому. Вернее, я думал, знал, но даже не пытался попробовать. Что же, пришло поставить на этом точку.

Сегодня мы научимся создавать глобальные расширения, и использовать их в представлениях нашего приложения.
Мне очень нравится движок представления Razor. Вначале, конечно же, было странно как-то, но теперь уже и не знаю, как можно писать по-другому.

Помимо всех прелестей, Razor позволяет также создавать свои хэлперы в рамках одного представления. Зачем это нужно? Например, чтобы использовать один и тот же кусок разметки несколько раз в одном представлении. Да, для этого можно использовать PartialView. Хэлпер - же является более простым, локальным решением. Главное его преимущество перед PartialView - это быстрота отрисовки, недостаток - конкретный хэлпер виден только в рамках текущего представления.

Итак, сегодня мы научимся создавать Razor-расширения внутри представлений, и также посмотрим, как и где это можно применять.
Читать дальше
Twitter
Одноклассники
Мой Мир

материал с hellomvc.blogspot.com

1

      Add

      You can create thematic collections and keep, for instance, all recipes in one place so you will never lose them.

      No images found
      Previous Next 0 / 0
      500
      • Advertisement
      • Animals
      • Architecture
      • Art
      • Auto
      • Aviation
      • Books
      • Cartoons
      • Celebrities
      • Children
      • Culture
      • Design
      • Economics
      • Education
      • Entertainment
      • Fashion
      • Fitness
      • Food
      • Gadgets
      • Games
      • Health
      • History
      • Hobby
      • Humor
      • Interior
      • Moto
      • Movies
      • Music
      • Nature
      • News
      • Photo
      • Pictures
      • Politics
      • Psychology
      • Science
      • Society
      • Sport
      • Technology
      • Travel
      • Video
      • Weapons
      • Web
      • Work
        Submit
        Valid formats are JPG, PNG, GIF.
        Not more than 5 Мb, please.
        30
        surfingbird.ru/site/
        RSS format guidelines
        500
        • Advertisement
        • Animals
        • Architecture
        • Art
        • Auto
        • Aviation
        • Books
        • Cartoons
        • Celebrities
        • Children
        • Culture
        • Design
        • Economics
        • Education
        • Entertainment
        • Fashion
        • Fitness
        • Food
        • Gadgets
        • Games
        • Health
        • History
        • Hobby
        • Humor
        • Interior
        • Moto
        • Movies
        • Music
        • Nature
        • News
        • Photo
        • Pictures
        • Politics
        • Psychology
        • Science
        • Society
        • Sport
        • Technology
        • Travel
        • Video
        • Weapons
        • Web
        • Work

          Submit

          Thank you! Wait for moderation.

          Тебе это не нравится?

          You can block the domain, tag, user or channel, and we'll stop recommend it to you. You can always unblock them in your settings.

          • krecer
          • домен hellomvc.blogspot.com
          • домен blogspot.com

          Get a link

          Спасибо, твоя жалоба принята.

          Log on to Surfingbird

          Recover
          Sign up

          or

          Welcome to Surfingbird.com!

          You'll find thousands of interesting pages, photos, and videos inside.
          Join!

          • Personal
            recommendations

          • Stash
            interesting and useful stuff

          • Anywhere,
            anytime

          Do we already know you? Login or restore the password.

          Close

          Add to collection

             

            Facebook

            Ваш профиль на рассмотрении, обновите страницу через несколько секунд

            Facebook

            К сожалению, вы не попадаете под условия акции