Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Обзор способов и протоколов аутентификации в веб-приложениях

Время на прочтение18 мин
Количество просмотров648K


Я расскажу о применении различных способов аутентификации для веб-приложений, включая аутентификацию по паролю, по сертификатам, по одноразовым паролям, по ключам доступа и по токенам. Коснусь технологии единого входа (Single Sign-On), рассмотрю различные стандарты и протоколы аутентификации.

Перед тем, как перейти к техническим деталям, давайте немного освежим терминологию.

  • Идентификация — это заявление о том, кем вы являетесь. В зависимости от ситуации, это может быть имя, адрес электронной почты, номер учетной записи, итд.
  • Аутентификация — предоставление доказательств, что вы на самом деле есть тот, кем идентифицировались (от слова “authentic” — истинный, подлинный).
  • Авторизация — проверка, что вам разрешен доступ к запрашиваемому ресурсу.


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

Аналогично эти термины применяются в компьютерных системах, где традиционно под идентификацией понимают получение вашей учетной записи (identity) по username или email; под аутентификацией — проверку, что вы знаете пароль от этой учетной записи, а под авторизацией — проверку вашей роли в системе и решение о предоставлении доступа к запрошенной странице или ресурсу.

Однако в современных системах существуют и более сложные схемы аутентификации и авторизации, о которых я расскажу далее. Но начнем с простого и понятного.
Читать дальше →
Всего голосов 48: ↑48 и ↓0+48
Комментарии20

Lamptest.ru: протестировано 557 ламп

Время на прочтение3 мин
Количество просмотров27K
Летом я запустил проект по тестированию светодиодных ламп lamptest.ru. Я планировал тестировать по 10-15 ламп в месяц, но получилось совсем по-другому. Протестировано уже 557 ламп (из них 17 люминесцентных, 59 ламп накаливания, все остальные светодиодные). Такое большое количество ламп удалось протестировать благодаря успешному народному сбору средств (краудфандингу), который продолжается и сейчас.



Сегодня я расскажу, зачем я затеял этот проект, что с ним будет дальше и попрошу вас ответить на вопросы, ответы на которые помогут определить, как будет развиваться проект.

Читать дальше →
Всего голосов 42: ↑41 и ↓1+40
Комментарии127

Хороших книг пост

Время на прочтение2 мин
Количество просмотров70K


А давайте давайте соберём здесь хорошие книги, которые просто стоило собрать.
Суть в том, что просто давно стоило сложить хорошие книги в одном посте, чтобы было что прочитать в дороге — или просто для души.
Читать дальше →
Всего голосов 84: ↑72 и ↓12+60
Комментарии392

Лучшие бесплатные коллекции векторных иконок

Время на прочтение2 мин
Количество просмотров340K
Привет, Хабр! Сегодня я хочу представить вам огромную коллекцию из 51 набора бесплатных векторных иконок. Да, есть потрясающие ресурсы Flaticon или Iconfinder, но бывают случаи, когда необходима именно группа иконок в едином стилистическом оформлении. Определиться с выбором, вам поможет эта подборка. Я старался собрать не как можно больше, а действительно самое лучшее.

Среди веб-разработчиков существует много споров о том, что лучше: иконочный шрифт или SVG спрайты? Четкого ответа на этот вопрос нет. Каждый выбирает свое. Данные наборы иконок вас неограничиывают в выборе, поскольку представлены в различных форматах: @font-face, SVG, EPS, AI, PSD, Sketch.

В целом данная подборка содержит более 10 000 иконок, охватывающих множество категорий: интерфейсы, технологии, наука, спорт, маркетинг, среда, транспорт и тд. Полые, заполненные, цветные, во Flat, Material, Elegant, Cartoon, Hand drawing стилях.

Responsive Icons (100 иконок, PSD, AI, EPS, SVG)


Responsive Icons

Читать дальше →
Всего голосов 91: ↑82 и ↓9+73
Комментарии23

Я хочу, чтобы сайты открывались мгновенно

Время на прочтение10 мин
Количество просмотров139K
Здравствуйте, меня зовут Александр Зеленин и я веб-разработчик. Я расскажу, как сделать так, чтобы ваш сайт открывался быстро. Очень быстро.


Я хочу, чтобы мой сайт открывался быстро
Всего голосов 130: ↑122 и ↓8+114
Комментарии87

Научные мифы, которые невозможно развенчать

Время на прочтение13 мин
Количество просмотров46K
image

Мы постоянно сталкиваемся с подменой реальности ложными убеждениями, которые не только приносят массу неудобств обычным людям, но и препятствуют развитию науки.

В 1997 году врачи из юго-западной Кореи наладили практику ультразвукового обследования для выявления рака щитовидной железы на ранних стадиях. Известия о новой методике быстро распространились, и вскоре все врачи в регионе стали предлагать аналогичные услуги. В итоге, кампания приобрела общенациональный характер, а правительство инициировало программу ультразвуковой диагностики различных видов рака. Сотни тысяч добровольцев согласились пройти тесты всего за $30-50.

Число пациентов с диагностированным раком щитовидной железы в стране заметно возросло: с 5 случаев на 100000 человек в 1999 году до 70 на 100000 в 2011. У двух третей пациентов была удалена щитовидная железа, что привело к необходимости использования пожизненного медикаментозного лечения. А ведь оба варианта развития событий предполагали серьезные риски.

Казалось бы, столь масштабная и дорогостоящая программа в сфере общественного здравоохранения должна была спасти множество жизней. Но, увы. В настоящее время рак щитовидной железы – наиболее распространенная форма данного заболевания, диагностируемая в Южной Корее, а количество людей, умирающих от него ничуть не изменилось — около 1 100 000. Но даже когда некоторые местные врачи это заметили и в 2014 году озвучили мнение о том, что стоило бы прекратить обследования, Корейская ассоциация щитовидной железы, профессиональная организация эндокринологов и хирургов, возразила, заявив, что доступность специализированного УЗИ и лечения – неотъемлемые права человека.
Читать дальше →
Всего голосов 47: ↑33 и ↓14+19
Комментарии97

Что такое RESTful на самом деле

Время на прочтение8 мин
Количество просмотров225K
А ваше приложение — RESTful? Чтобы ответить на этот вопрос нужно сначала разобраться что такое RESTful. Бытует мнение, что отдавать правильные коды ответов в HTTP — это уже RESTful. Или делать правильные идемпотентные HTTP-запросы — это вообще очень RESTful. Мы в Хекслете сделали практический курс по протоколу HTTP (отличия версий, отправка форм, аутентификация, куки и пр.), и в нем мы стараемся рассказать о правильном использовании запросов, но нужно понимать, что RESTful это не про HTTP, это вообще не про протоколы интернета. Современный веб и взаимодействие между браузером и сервером с помощью HTTP и URI могут удовлетворять принципам RESTful, а могут и не удовлетворять.

В сегодняшнем переводе — простое и понятное описание RESTful, и какой должна быть система, чтобы ее можно было так называть.

Читать дальше →
Всего голосов 40: ↑37 и ↓3+34
Комментарии103

70 инструментов, без которых не обойтись ни одному сотруднику на удаленной основе

Время на прочтение5 мин
Количество просмотров48K


В этой подборке мы решили собрать 70 самых популярных инструментов, которыми пользуются удаленные специалисты по всему миру. Эти ресурсы позволят вам организовать работу, проверить заказчика и оценить дальнейшую перспективу сотрудничества.
Читать дальше →
Всего голосов 24: ↑17 и ↓7+10
Комментарии15

Советы по оптимизации Windows для использования SSD

Время на прочтение5 мин
Количество просмотров61K
Привет, Geektimes! Многие до сих пор продолжают утверждать, что твердотельные накопители ненадежные, поскольку имеют ограниченное количество циклов перезаписи и больше подвержены износу, нежели HDD. Сейчас большинство мифов об этом уже развенчаны, однако некоторые советы по оптимизации Windows для работы с SSD могут оказаться полезными.

image

Многие трюки по оптимизации устарели с того момента, когда SSD были слишком дорогими и ограничивались максимальной емкостью в 128 ГБ. Тем более в погоне за более высокой производительностью накопителя вы можете затронуть другие процессы и в конечном итоге сделать только хуже. Поэтому очень важно знать, какие советы действительно окажутся полезными и будут работать, а какие в современных реалиях бестолковые и не имеют практического смысла.
Читать дальше →
Всего голосов 55: ↑30 и ↓25+5
Комментарии39

Let's Encrypt выходит в публичную бету: HTTPS всюду, каждому, отныне и навсегда бесплатно

Время на прочтение3 мин
Количество просмотров67K
Let's Encrypt

Let's Encrypt — это некоммерческая инициатива, предоставляющая бесплатный, автоматизированный и открытый CA (certificate authority — центр сертификации), созданный ISRG на благо общества:

  • бесплатно: владелец всякого доменного имени может воспользоваться Let's Encrypt и получить доверенный (читать как «признаётся любым современным браузером») TLS-сертификат (TLS — наследник SSL) совершенно бесплатно;
  • автоматизированно: Let's Encrypt предоставляет бесплатное и свободное программное обеспечение (клиент), которое, будучи настроенным на веб-сервере, может полностью автоматически запрашивать безвозмездно предоставляемые сертификаты Let’s Encrypt, автоматически конфигурировать и обновлять их;
  • безопасно: Let’s Encrypt строится как платформа для продвижения наилучших практик безопасности TLS как на стороне центра сертификации (CA), так и на стороне веб-сайтов, помогая администраторам должным образом настраивать веб-серверы;
  • прозрачно: информация о выпуске и отзыве каждого сертификата Let's Encrypt доступна вполне и публично так, что любой желающий изучить её сможет это сделать;
  • свободно: протоколы взаимодействия со CA, позволяющие автоматизировать процессы выпуска и обновления сертификатов, будут опубликованы как открытый стандарт для максимального внедрения;
  • кооперативно: как и любой протокол, лежащий в основе Интернета и Всемирной паутины, Let’s Encrypt является совместным, неподконтрольным какой-либо конкретной организации некоммерческим проектом созданным исключительно для того, чтобы принести пользу обществу.

Читать дальше →
Всего голосов 72: ↑71 и ↓1+70
Комментарии138

Векторный, открытый и удобный: Inkscape 0.91

Время на прочтение4 мин
Количество просмотров45K
Давно увлекаюсь векторной графикой, особенно ее созданием, отрисовкой с нуля. Много программ я пробовал, но в основном моим рабочим инструментом был CorelDraw, который меня всем устраивал. Не помню, почему и зачем я начал искать ему альтернативы, но в один прекрасный день я наткнулся на Inkscape. Это была любовь с первого взгляда…

Я все ждал, что на Хабре появится статья-обзор новых возможностей версии Inkscape 0.91, а ее все нет. Решил написать сам, если что не так – не судите строго, пишу редко.

Под катом будет много иллюстративных примеров и технических деталей.

image
Читать дальше →
Всего голосов 64: ↑62 и ↓2+60
Комментарии79

Примеры фишинговых сообщений электронной почты

Время на прочтение5 мин
Количество просмотров138K


Я не случайно поставил в заглавие поста картинку с котиком. Это один из примеров манипулирования человеческим сознанием, апеллирование к жалости. Методы воздействия злоумышленников, использующих такие приемы, находятся в области практической психологии и относятся к cоциальной инженерии. Играя на эмоциях, чувствах, страхах и рефлексах людей злоумышленники получают доступ к интересующей их информации. Все эти методы используются злоумышленниками при создании фишинговых почтовых сообщений.

Внимание, под катом много изображений.
Читать дальше →
Всего голосов 47: ↑44 и ↓3+41
Комментарии34

400 потрясающих бесплатных сервисов

Время на прочтение16 мин
Количество просмотров722K

Рад представить дополнение оригинального списка из 300 потрясающих бесплатных сервисов. Автор оригинальной статьи Ali Mese добавил ещё +100 новых сервисов, которые помогут найти все — от источников вдохновения и редакторов фотографий до создания опросов и бесплатных иконок.

И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные веб-сайты

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly: Конструктор веб-сайтов.
  • Layers: Создание сайтов на WordPress (new).
  • Bootstrap Zero: Самая большая коллекция бесплатных шаблонов Bootstrap (new).
  • Landing Harbor:  Продвижение мобильного приложения c помощью бесплатного лендинга (new).
Читать дальше →
Всего голосов 108: ↑89 и ↓19+70
Комментарии38

Рынок разработки сайтов умирает: что делать и куда идти? Интервью с Михаилом Токовининым (amoCRM)

Время на прочтение12 мин
Количество просмотров32K
Я часто беседую с владельцами российских веб-студий и агентств, чтобы понять и объяснить читателям происходящие процессы на нашем рынке. На самом деле, рынок меняется. Думаю, эти изменения ощущают все игроки, в том числе и мы в Simtech Development. А наша работа на международном рынке подтверждает, что процесс это глобальный и охватывает не только Россию, но и большинство западных стран.

Недавно на CMS Magazine вышло мое интервью с Михаилом Токовининым, одним из партнеров QSOFT+AIC, основателем amoCRM и очень авторитетным экспертом. Это интервью касалось его опубликованного открытого письма в редакцию ЦП «Рынок разработки сайтов умирает — как видеопрокат в 2002 году». Думаю, многие из вас если не читали, то уж слышали о нем.

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

Сегодня я решила опубликовать это интервью здесь. Интересно узнать, что думаете вы по этому поводу и к чему нам всем готовиться (в конце интервью есть опрос для статистики). Приятного и полезного чтения!



Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии20

Грандиозное тестирование аккумуляторов AA/AAA

Время на прочтение6 мин
Количество просмотров304K
После моего грандиозного тестирования батареек многие просили провести такие же основательные тесты NiMh-аккумуляторов. За четыре месяца я протестировал 198 аккумуляторов (44 модели AA и 35 моделей AAA).



Читать дальше →
Всего голосов 217: ↑215 и ↓2+213
Комментарии73

40 ключевых концепций информационных технологий доступно и понятно

Время на прочтение16 мин
Количество просмотров160K
Представляю вашему вниманию перевод очень ёмкой, и в то же время достаточно краткой (для такого масштаба проблемы) статьи Карла Чео. Я решил, что очень хочу сделать её перевод практически сразу, как только начал читать, и очень рад, что в итоге сделал это.
Для того, чтобы сделать обучение более веселым и интересным, представляю вам перечень важных теорий и концепций информатики, объяснённых с помощью аналогий с минимальным количеством технических деталей. Это будет похоже на очень быстрый курс информатики для всех с целью просто дать вам общее представление об основных концепциях.

Важные замечания:
  • Пункты с неуказанным источником написаны мной самостоятельно. Поправьте меня, если вы заметите какие-то неточности. Предложите лучшую аналогию, если это возможно.
  • Заголовки ссылаются на соответствующие им статьи в Wikipedia. Пожалуйста, читайте эти статьи для более серьезных и детальных объяснений.
  • Аналогии — отличный способ объяснить материал, но они не идеальны. Если вы хотите по-настоящему понять перечисленные концепции, вам следует начать с фундаментальных азов и рассуждать, исходя из них.

Также зацените эту инфографику (вариант на русском), если вы просто начинающий программист.
Читать дальше →
Всего голосов 104: ↑96 и ↓8+88
Комментарии37

У нас проблемы с промисами

Время на прочтение16 мин
Количество просмотров240K
Разрешите представить вам перевод статьи Нолана Лоусона «У нас проблемы с промисами», одной из лучших по теме из тех, что мне доводилось читать.

У нас проблемы с промисами


Дорогие JavaScript разработчики, настал момент признать это — у нас проблемы с промисами.

Нет, не с самими промисами. Их реализация по спецификации A+ превосходна. Основная проблема, которая сама предстала передо мной за годы наблюдений за тем, как многие программисты борются с богатыми на промисы API, заключается в следующем:

— Многие из нас используют промисы без действительного их понимания.

Если вы мне не верите, решите такую задачку:

Вопрос: В чем разница между этими четырьмя вариантами использования промисов?

doSomething().then(function () {
  return doSomethingElse();
});

doSomething().then(function () {
  doSomethingElse();
});

doSomething().then(doSomethingElse());

doSomething().then(doSomethingElse);

Узнайте решение задачи
Всего голосов 139: ↑136 и ↓3+133
Комментарии121

Новый алгоритм расчета рейтинга «Кинопоиска» отдает предпочтение фильмам с платным просмотром. Мини-расследование

Время на прочтение13 мин
Количество просмотров53K


Запоздавший апдейт в пост: через 2 месяца после выхода поста в формулу расчета рейтинга была внесены изменения, о которых рассказано в этом посте в блоге проекта. Они приближают рейтинги «Кинопоиска» к тем, которые были раньше (хотя это и не полноценный откат). У автора данного поста нет однозначного мнения о том, всё ли теперь как надо, лишь сдержанный оптимизм.

Вот вроде отшумели события вокруг перезапуска «Кинопоиска», отошедшие пользователи проводят время на прежнем сайте, разработчики с парсерами строят коварные планы, руководством приняты кадровые решения неоднозначной направленности, а всё остальное вернулось на круги своя. Но не всё.

Откат к прежней версии сайта не коснулся рейтингов фильмов. И хотя на странице Топ-250 мы можем наблюдать хорошо знакомый многим расклад с «Побегом из Шоушенка» и «Зеленой милей» в качестве лидеров, на страницах самих фильмов, в выдаче «Гугла» и других местах рейтинг отображается новый — тот, который лег в основу Топа-250 бета-версии (у меня он открывается с перебоями, что наблюдалось и сразу после перезапуска).

И по прошествии недели ничего не поменялось, как бы намекая нам, что новый рейтинг останется надолго, если не навсегда. Не исключаю, что вскоре обновится и старый топ, — может, он держится только потому, что алгоритм расчета рейтингов в нем отличается от алгоритма на страницах фильмов («в топе используются специальные механизмы, препятствующие накрутке рейтинга недобросовестными пользователями»), и этот алгоритм корректирует не новый, а старый рейтинг (в основном, в пределах пары сотых долей).
Читать дальше →
Всего голосов 93: ↑89 и ↓4+85
Комментарии62

DevTips: Советы веб-разработчику (17-32)

Время на прочтение5 мин
Количество просмотров34K
Продолжение цикла переводов полезных советов для веб-разработчика. Другие части: 1-16, 33-48.

Содержание:
   17.  Быстрое редактирование названия HTML-тега в панели «Elements»
   18.  Разворачивание всех дочерних узлов выбранного элемента
   19.  Переключение состояния вкладки DevTools при помощи горячих клавиш
   20.  Переключение на DOM-элемент из DevTools консоли
   21.  Подсветка выполняемого выражения
   22.  Улучшения в работе инструмента Color Picker
   23.  Включение точки останова и навигация по стеку вызовов при помощи горячих клавиш
   24.  Просмотр определения функции, зарегистрированной как обработчик события на DOM-элементе
   25.  Нотификация о JS-ошибке во время написания кода
   26.  Персистентность настроек отображения для режима «Инкогнито»
   27.  Визуализация выбранного режима сглаживания анимации
   28.  Просмотр и изменения точек останова DOM-дерева при помощи панели «Breakpoints»
   29.  Пять интересных возможностей панели «Console»
   30.  Автодополнение свойств и методов объекта в панели «Console»
   31.  Просмотр и отладка обработчиков событий
   32.  Автоматическая остановка выполнения программы при возникновении любых исключений
Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии13

DevTips: Советы веб-разработчику (1-16)

Время на прочтение5 мин
Количество просмотров70K
Команда браузера Google Chrome проделывает огромную работу для того, чтобы разработчикам жилось лучше. Chrome DevTools — пример замечательного инструмента, сильно упрощающего отладку вашего веб-приложения. Но подчас не весь функционал этой системы виден с первого взгляда, поэтому Umar Hansa — программист из Лондона — описывает его на своем сайте, причем в весьма удобном формате: немного текста и короткий скринкаст. А мы, в свою очередь, решили сделать эти советы более доступными русскоязычной аудитории.

Содержание:
  1. Перенаправление порта позволит вам открывать локальные ссылки на мобильном устройстве
  2. Активация псевдо-классов DOM-элемента
  3. Повтор сетевого запроса при помощи cURL
  4. Запуск сохранённых блоков кода (сниппетов) на любой веб-странице
  5. Отслеживание изменений файлов через DevTools
  6. Простая запись действий страницы
  7. Поиск элементов DOM-дерева при помощи CSS-селекторов
  8. Копирование изображения в формате Data URI
  9. Переход к нужной строке при открытии файла
  10. Упрощенная навигация между правками
  11. Копирование ответа на сетевой запрос
  12. Работа с несколькими курсорами при редактировании скриптов
  13. Блочное выделение
  14. Быстрый мониторинг событий в консоли
  15. Доступ к выбранному DOM-узлу в консоли
  16. Отслеживание незавершенных сетевых запросов при помощи фильтра is:running

Продолжение: 17-32, 33-48.
Читать дальше →
Всего голосов 67: ↑62 и ↓5+57
Комментарии18

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность