SlideShare a Scribd company logo
© ООО «РЕАК СОФТ»
Семинар «Безопасная разработка и защита
приложений»
Идентификация, аутентификация, авторизация – встроенные функции
приложений или задачи специализированного сервиса организации?
Москва, 20 апреля 2016
Михаил Ванин, генеральный директорООО «РЕАК СОФТ»
mvanin@reaxoft.ru
Функции приложения
Идентификация
Аутентификация
Авторизация
Прикладная
функция 1
Прикладная
функция 2
…
Прикладная функция
N
Приложение
Возможные варианты реализации в приложении
парольной аутентификации
Использование встроенных
возможностей браузеров и
протокола HTTP
Создание в приложении
формы парольной
аутентификации
HTTP Basic парольная аутентификация
Клиент Сервер
GET /private HTTP/1.1
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Basic
realm= "Site name"
Пользователь
GET /private HTTP/1.1
Authorization: Basic dXNlcjpwYXNz==
HTTP/1.1 200 OK
* base64encode("user:pass")="dXNlcjpwYXNz"
Другие виды HTTP аутентификации
1. Digest
2. NTLM (Windows Authentication)
3. Negotiate
Аутентификация с использованием формы
Клиент Сервер
GET /login HTTP/1.1
HTTP/1.1 200 OK
Пользователь
POST /login HTTP/1.1
login=user@mail.ru&password=pass
HTTP/1.1 302 Found
Set-Cookie: token=AwM1ZW…Ni;
Secure; HttpOnly
GET /private HTTP/1.1
Cookie: token=AwM1ZW…Ni
HTTP/1.1 200 OK
Пользователи не доверяют паролям
Источник: 2015 Accenture DigitalConsumer Survey
Я нуждаюсь в
альтернативе
логинам/паролям для
своей защиты в
Интернете
Логины и
пароли
громоздки в
использовании
В следующем
году я бы
использовал
уникальный чип в
моем
телефоне/ПК для
своей защиты в
Интернете
В следующем
году я бы
использовал
биометрию для
своей защиты в
Интернете
Я знаю не менее
одной
альтернативы
логину/паролю
для своей
защиты в
Интернете
Повышение надежности аутентификации
Строгая аутентификация
(криптографические
средства и электронная
подпись)
Усиленная
аутентификация
(усиление парольной
аутентификацией –
проверка 2 фактора)
Строгая аутентификация с использованием
TLS/SSL Handshake
Клиент Сервер
Фаза 1. Определение параметров шифрования
Пользователь
Фаза 3. Отправка серверу сертификата клиента
(в открытом виде и в зашифрованном на
приватном ключе), проверка сертификата клиента
Фаза 4. Выработка предварительного ключа,
отправка серверу в зашифрованном на открытом
ключе сервера виде, взаимная выработка
сессионного ключа
Фаза 5. Завершение handshake, взаимный обмен
данными по шифрованному каналу
Фаза 2. Получение и проверка сертификата
сервера, запрос сертификата клиента
Строгая аутентификация с использованием
формы аутентификации
Для возможности взаимодействия веб-браузера с USB-токеном /
смарт-картой необходим браузерный плагин
Критерии выбора плагина
1. Поддержка различных ОС и браузеров
- Поддерживается ли Google Chrome? Или работа только через NPAPI?
- Поддерживаются ли Linux и Mac OS X последних версий, и какие их
браузеры?
2. Поддержка средств электронной подписи различных
производителей
- Поддерживаются ли смарт-карты и токены только одного производителя
или разных?
- Обеспечивается ли поддержка только в Windows или и в других ОС?
3. Уровень технической поддержки производителя
плагина
- Имеет ли разработчик плагина обязательства по технической поддержке и
SLA?
4. Безопасность плагина
- Не помещает ли плагин в ОС корневые доверенные сертификаты?
- Не требует ли плагин ввода пользователем ПИН-кода в веб-страницы
браузера?
Примеры плагинов
1. КриптоПро ЭЦП Browser plug-in
2. Aladdin JC-WebClient
3. Рутокен Плагин
4. Плагин портала государственных услуг
5. Blitz Smart Card Plugin
Варианты усиленной аутентификации
SMS-коды Email-коды
HOTP-устройства TOTP-устройства
U2F-устройства Иные способы
Отправка одноразового пароля по SMS / email
Разновидности HOTP-устройств
С LCD-дисплеем
(код вводит
пользователь)
USB HID устройство
(само впечатывает
код)
Комбинированное
RFC4226 «HOTP: An HMAC-Based One-Time Password Algorithm»
Примеры файлов описаний HOTP-устройств
Существует большое разнообразие формата файлов, описывающих
HOTP-устройства
Пример файла для Aladdin eToken Pass
Пример файла для YubiKey
Пример файла для NagraID
Security Display Card
ПримерыTOTP мобильных приложений
Google Authenticator
(наиболее известный)
Authy
(наиболее
функциональный)
Bitrix24 OTP
(сделан компанией
из РФ)
RFC6238 «TOTP: Time-Based One-Time Password Algorithm»
Пример окна настройкиTOTP пользователем
FIDO U2F устройство (Universal 2nd Factor)
Регистрация
устройства
Проверка
при входе
Еще разработчики беспокоятся о …
Регистрация и
администрирование
учетных записей
Применение парольных
политик
Регистрация событий
входа/выхода
Сервисы самостоятельного
восстановления пароля
Отчеты о событиях
входа
Сервисы смены пароля,
управления
аутентификаторами
Информирование
пользователей о
событиях входа
Сервисы выхода из
приложений
А правильно ли разработчики поступают, когда
создают все эти функции безопасности в своем
приложении?
Типичная организация
Сотрудники
организации
Приложения внутри организации Облачные сервисы
4 5
Пользователи устали от парольного хаоса
Я не хочу запоминать много паролей от
своих рабочих учетных записей.
И мне не нравится, что при смене пароля
в каждом приложении свои правила его
задания.
Мне не нравится, что когда переключаюсь
между приложениями, то у меня каждый
раз просят вновь ввести логин и пароль.
И что мешает сделать, чтобы экраны
входа выглядели одинаково?
Я редко использовала приложение и
забыла от него пароль.
И как мне его теперь восстановить?
Беспорядок с входом в приложения беспокоит и
администраторов ИБ
Я не могу гибко настроить в
приложениях правила
аутентификации.
Придется довольствоваться
парольной аутентификацией
При внедрении нового приложения мне
нужно готовить для него учетные
записи, давать доступы, выдавать
пользователям пароли. На это я
трачу свои время и энергию
Пользователи не могут
быстро усвоить новые
пароли. Внедрение новых
приложений происходит
медленно
Чем больше приложений со
своей системой входа, тем
чаще инциденты «забыл
пароль». Пора что-то с
этим предпринять
Беспорядок с входом в приложения беспокоит и
администраторов
У меня нет единой картины,
в какие приложения кто из
пользователей и как часто
ходит
Я не уверен, что все эти механизмы
аутентификации в разных
приложениях безопасны. Сделанное
«плохо» приложение компрометирует
пароли и несет угрозу безопасности
Пользователи выбирают
ненадежные пароли. Вход
не защищен. Парольные
политики не эффективны
Организациям нужен единый сервис доступа
Пользователь с использованием любого
устройства единожды проходит
идентификацию и аутентификацию
Получает доступ к разрешенным приложениям
как внутри, так и вне организации
Единый сервис
доступа
организации
Преимущества использования единого сервиса
Пользователям:
1) используя всего одну учётную
запись пользователь получает
доступ ко всем приложениям
организации. Пользователи
избавлены от необходимости
помнить много логинов и
паролей
2) используют надежные методы
двухфакторной
аутентификации
3) имеют средства для
самостоятельного контроля
событий безопасности,
связанных с входом/выходом в
приложения
Владельцам/администраторам:
1) централизуют управление
аутентификацией, снижают
эксплуатационные затраты
2) внедрение новых приложений
происходит быстрее – не нужно
раздавать пользователям
логины и пароли
3) увеличивают безопасность
4) снижают зависимость от
поставщиков решений по
аутентификации. Легко можно
заменять поставщиков смарт-
карт/токенов
5) с меньшими затратами
добиваются соответствия
нормативным требованиям по
ИБ
Единый сервис доступа – это в тренде
Для пользователей Интернет привычно, когда они используют любимую
учетную запись соц.сети для доступа к множеству сайтов.
Эволюция условий, в которых должен
функционировать единый сервис доступа
Пользователи приложений –
исключительно сотрудники компании
Все устройства доступа – это ПК
Все приложения развернуты
исключительно внутри организации
Вчерашний день
Люди
(пользователи)
Устройства
доступа
Приложения
и данные
Сотрудники
(тысячи)
Поставщики,
партнеры
Потребители
(миллионы)
Приложения
внутри организации
Облачные приложения
(SaaS)
Люди
(пользователи)
Устройства
доступа
Приложения
и данные
Сегодня и завтра
Эволюция условий, в которых должен
функционировать единый сервис доступа
ПК Планшеты Смартфоны Часы
Как можно создать единый сервис доступа?
Традиционный метод Современный метод
«Парольный менеджер»
(Enterprise SSO, PasswordWallet)
Identity Provider и использование
протоколов федеративного доступа
(SAML / WS-Federation / OAuth 2.0 +
OpenID Connect)
Парольный менеджер, Enterprise Single Sign On
Клиентская часть
приложения
Серверная часть
приложения
GET /login HTTP/1.1
HTTP/1.1 200 OK
Пользователь
POST /login HTTP/1.1
login=user@mail.ru&password=pass
HTTP/1.1 302 Found
Set-Cookie: token=AwM1ZW…Ni;
Secure; HttpOnly
GET /private HTTP/1.1
Cookie: token=AwM1ZW…Ni
HTTP/1.1 200 OK
ESSO-агент на ПК
пользователя
ESSO-агент перехватывает
окна входа приложений и
подставляет в них логины и
пароли пользователя
Идентификация/аутентификация с поставщиком
идентификации SAML
Поставщик услуг
(приложение, SP)
Поставщик идентификации
(SAML IDP)
GET /private HTTP/1.1
Пользователь Браузер
GET /SAML/Redirect/SSO?
SAMLRequest=…&RelayState=01c..a95b9c
HTTP/1.1
HTTP/1.1 200 OK
POST /private HTTP/1.1
RelayState=01c..a95b9c
SAMLResponse=…
Установлено доверие,
произведен обмен
метаданными SP и IDP
Примеры приложений, поддерживающих SAML
Поставщик идентификации
(OpenID Connect сервер)
GET /private HTTP/1.1
Пользователь Браузер
Установлено доверие,
произведен обмен
метаданными SP и IDP
Идентификация/аутентификация с поставщиком
идентификации OpenIDConnect (OAuth 2.0)
GET /oauth/ae?response_type=code
&scope=openid phone email
&client_id=client01
&redirect_uri=https://client.ru/re
&state=342a2c0c… HTTP/1.1
HTTP/1.1 302 Found
Location:
https://client.ru/re?code=f954nEz…
&state=342a2c0c…
OAuthAuthorization Code Flow
Фаза 1. Получение авторизационного кода
OAuth-клиент
(фронтэнд приложения)
OAuth-клиент
(бэкэнд приложения)
Поставщик идентификации
(OpenID Connect сервер)Пользователь Браузер
Идентификация/аутентификация с поставщиком
идентификации OpenIDConnect (OAuth 2.0)
OAuthAuthorization Code Flow
Фаза 2. Получение маркера доступа
POST /oauth/te HTTP/1.1
Authorization: Basic bG9jYWxo…
grant_type=authorization_code
&code=f954nEz…
&redirect_uri=https://client.ru/re
HTTP/1.1 200 OK
Content-Type: application/json
{
"access_token": "ORSqyIGx…",
"token_type": "bearer",
"expires_in": 3600,
"refresh_token": "FepnjwwA…",
"scope": ”openid phone email",
"id_token": "eyJhbGci…"
}
OAuth-клиент
(бэкэнд приложения)
Поставщик идентификации
(OpenID Connect сервер)Пользователь Браузер
Идентификация/аутентификация с поставщиком
идентификации OpenIDConnect (OAuth 2.0)
Получение данных о пользователе
POST /oauth/userinfo HTTP/1.1
Authorization: Bearer ORSqyIGx…
HTTP/1.1 200 OK
Content-Type: application/json
{
"sub": ”354323222001",
"name": "Ivan Ivanov",
"given_name": “Ivan",
"family_name": "Ivanov",
"preferred_username": "i.ivanov",
"email": "user@mail.ru",
}
OAuth-клиент
(бэкэнд приложения)
Поставщик идентификации
(OpenID Connect сервер)Пользователь Браузер
Идентификация/аутентификация с поставщиком
идентификации OpenIDConnect (OAuth 2.0)
Обновление маркера доступа при устаревании
POST /oauth/te HTTP/1.1
Authorization: Basic bG9jYWxo…
grant_type=refresh_token
&refresh_token=FepnjwwA…
HTTP/1.1 200 OK
Content-Type: application/json
{
"access_token": "OVrfAj0B…",
"token_type": "bearer",
"expires_in": 3600,
"refresh_token": "jj2DAYsP…",
"scope": "openid phone email"
}
ПО для создания единого сервиса доступа
Решения крупнейших
вендоров
Специализированное ПО
Облачные сервисы
(IDaaS)
Российское ПО
Решения на основе метода
«парольный менеджер»
Решения на основе
протоколов федеративного доступа
RSA Access
Management
Blitz Identity Provider
Open-source
Заключение
1. Создание в приложении функций идентификации,
аутентификации, авторизации требует усилий и
компетенции
2. Результат получается лучше при решении задач
идентификации, аутентификации, авторизации сторонними
средствами защиты, а не путем создания встроенных
функций безопасности
3. Есть большой выбор вариантов платформы для создания
единого сервиса доступа. Есть несколько популярных и
устоявшихся стандартов и протоколов для взаимодействия
приложений и единого сервиса доступа
ООО «РЕАК СОФТ» http://identityblitz.ru +7 (499) 322-14-04 info@reaxoft.ru
Материалы по теме презентации
1. Дистрибутив ПО Blitz Identity Provider для создания единого
сервиса доступа (Linux/Windows) -
http://identityblitz.ru/products/blitz-identity-provider/download/
2. Обзорная статья на Хабре о способах и протоколах
аутентификации (Дмитрий Выростков, DataArt) -
https://habrahabr.ru/company/dataart/blog/262817/
3. Мои презентации на SlideShare -
http://www.slideshare.net/MikhailVanin
Пожалуйста, задавайте вопросы!
ООО «РЕАК СОФТ» http://identityblitz.ru +7 (499) 322-14-04 info@reaxoft.ru
Мои контакты: Михаил Ванин, mvanin@reaxoft.ru

More Related Content

What's hot

Avanpost PKI
Avanpost PKIAvanpost PKI
безопасность веб проектов сергей рыжиков
безопасность веб проектов   сергей рыжиковбезопасность веб проектов   сергей рыжиков
безопасность веб проектов сергей рыжиковMedia Gorod
 
безопасность
безопасностьбезопасность
безопасностьShoplist
 
Сертификаты подписания кода Symantec
Сертификаты подписания кода SymantecСертификаты подписания кода Symantec
Сертификаты подписания кода Symantec
Symantec Website Security
 
Безопасность
БезопасностьБезопасность
Безопасность
1С-Битрикс
 
WatchGuard Authpoint
WatchGuard Authpoint WatchGuard Authpoint
WatchGuard Authpoint
BAKOTECH
 
Особенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферыОсобенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферыDigital Security
 
Экранирование локальных пользователей при выходе в публичные сети: эталонная ...
Экранирование локальных пользователей при выходе в публичные сети: эталонная ...Экранирование локальных пользователей при выходе в публичные сети: эталонная ...
Экранирование локальных пользователей при выходе в публичные сети: эталонная ...
Dmitry Tikhovich
 
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...it-people
 
Gemalto - SAM (SafeNet Authentication Manager)
Gemalto - SAM (SafeNet Authentication Manager)Gemalto - SAM (SafeNet Authentication Manager)
Gemalto - SAM (SafeNet Authentication Manager)
Daria Kovalenko
 
Как разработчику обеспечить безопасность пользователей и данных в мобильном м...
Как разработчику обеспечить безопасность пользователей и данных в мобильном м...Как разработчику обеспечить безопасность пользователей и данных в мобильном м...
Как разработчику обеспечить безопасность пользователей и данных в мобильном м...
Andrey Beshkov
 
Мониторинг приложений ASP.NET на основе сервиса Application Insights
Мониторинг приложений ASP.NET на основе сервиса Application InsightsМониторинг приложений ASP.NET на основе сервиса Application Insights
Мониторинг приложений ASP.NET на основе сервиса Application Insights
Microsoft
 
Postroenie kompleksnoj sistemy obespechenija informacionnoj bezopasnosti v vi...
Postroenie kompleksnoj sistemy obespechenija informacionnoj bezopasnosti v vi...Postroenie kompleksnoj sistemy obespechenija informacionnoj bezopasnosti v vi...
Postroenie kompleksnoj sistemy obespechenija informacionnoj bezopasnosti v vi...vGate R2
 
Олег Губка (Avanpost) "Эффективное управление доступом к информационным ресур...
Олег Губка (Avanpost) "Эффективное управление доступом к информационным ресур...Олег Губка (Avanpost) "Эффективное управление доступом к информационным ресур...
Олег Губка (Avanpost) "Эффективное управление доступом к информационным ресур...
Expolink
 
Демонстрация комплексной системы контроля проводного и беспроводного доступа ...
Демонстрация комплексной системы контроля проводного и беспроводного доступа ...Демонстрация комплексной системы контроля проводного и беспроводного доступа ...
Демонстрация комплексной системы контроля проводного и беспроводного доступа ...
SelectedPresentations
 
Аутентификация
АутентификацияАутентификация
АутентификацияElena_dm
 
Инфоберег. Будущее аутентификации - сегодня
Инфоберег. Будущее аутентификации - сегодняИнфоберег. Будущее аутентификации - сегодня
Инфоберег. Будущее аутентификации - сегодняЕвгений Царев
 
Мониторинг приложений ASP.NET на основе сервиса Application Insights
Мониторинг приложений ASP.NET на основе сервиса Application InsightsМониторинг приложений ASP.NET на основе сервиса Application Insights
Мониторинг приложений ASP.NET на основе сервиса Application Insights
GoSharp
 
Ключевые особенности сертификации по PA-DSS
Ключевые особенности сертификации по PA-DSSКлючевые особенности сертификации по PA-DSS
Ключевые особенности сертификации по PA-DSSDigital Security
 

What's hot (20)

Avanpost PKI
Avanpost PKIAvanpost PKI
Avanpost PKI
 
безопасность веб проектов сергей рыжиков
безопасность веб проектов   сергей рыжиковбезопасность веб проектов   сергей рыжиков
безопасность веб проектов сергей рыжиков
 
Безопасность CMS
Безопасность CMSБезопасность CMS
Безопасность CMS
 
безопасность
безопасностьбезопасность
безопасность
 
Сертификаты подписания кода Symantec
Сертификаты подписания кода SymantecСертификаты подписания кода Symantec
Сертификаты подписания кода Symantec
 
Безопасность
БезопасностьБезопасность
Безопасность
 
WatchGuard Authpoint
WatchGuard Authpoint WatchGuard Authpoint
WatchGuard Authpoint
 
Особенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферыОсобенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферы
 
Экранирование локальных пользователей при выходе в публичные сети: эталонная ...
Экранирование локальных пользователей при выходе в публичные сети: эталонная ...Экранирование локальных пользователей при выходе в публичные сети: эталонная ...
Экранирование локальных пользователей при выходе в публичные сети: эталонная ...
 
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
 
Gemalto - SAM (SafeNet Authentication Manager)
Gemalto - SAM (SafeNet Authentication Manager)Gemalto - SAM (SafeNet Authentication Manager)
Gemalto - SAM (SafeNet Authentication Manager)
 
Как разработчику обеспечить безопасность пользователей и данных в мобильном м...
Как разработчику обеспечить безопасность пользователей и данных в мобильном м...Как разработчику обеспечить безопасность пользователей и данных в мобильном м...
Как разработчику обеспечить безопасность пользователей и данных в мобильном м...
 
Мониторинг приложений ASP.NET на основе сервиса Application Insights
Мониторинг приложений ASP.NET на основе сервиса Application InsightsМониторинг приложений ASP.NET на основе сервиса Application Insights
Мониторинг приложений ASP.NET на основе сервиса Application Insights
 
Postroenie kompleksnoj sistemy obespechenija informacionnoj bezopasnosti v vi...
Postroenie kompleksnoj sistemy obespechenija informacionnoj bezopasnosti v vi...Postroenie kompleksnoj sistemy obespechenija informacionnoj bezopasnosti v vi...
Postroenie kompleksnoj sistemy obespechenija informacionnoj bezopasnosti v vi...
 
Олег Губка (Avanpost) "Эффективное управление доступом к информационным ресур...
Олег Губка (Avanpost) "Эффективное управление доступом к информационным ресур...Олег Губка (Avanpost) "Эффективное управление доступом к информационным ресур...
Олег Губка (Avanpost) "Эффективное управление доступом к информационным ресур...
 
Демонстрация комплексной системы контроля проводного и беспроводного доступа ...
Демонстрация комплексной системы контроля проводного и беспроводного доступа ...Демонстрация комплексной системы контроля проводного и беспроводного доступа ...
Демонстрация комплексной системы контроля проводного и беспроводного доступа ...
 
Аутентификация
АутентификацияАутентификация
Аутентификация
 
Инфоберег. Будущее аутентификации - сегодня
Инфоберег. Будущее аутентификации - сегодняИнфоберег. Будущее аутентификации - сегодня
Инфоберег. Будущее аутентификации - сегодня
 
Мониторинг приложений ASP.NET на основе сервиса Application Insights
Мониторинг приложений ASP.NET на основе сервиса Application InsightsМониторинг приложений ASP.NET на основе сервиса Application Insights
Мониторинг приложений ASP.NET на основе сервиса Application Insights
 
Ключевые особенности сертификации по PA-DSS
Ключевые особенности сертификации по PA-DSSКлючевые особенности сертификации по PA-DSS
Ключевые особенности сертификации по PA-DSS
 

Viewers also liked

лекция безопасная разработка приложений
лекция  безопасная разработка приложенийлекция  безопасная разработка приложений
лекция безопасная разработка приложений
Alexander Kolybelnikov
 
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватает
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватаетГибридный подход к управлению правами доступа: когда стандартного IDM не хватает
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватает
CUSTIS
 
Developer Evidences (Infosecurity Russia 2013)
Developer Evidences (Infosecurity Russia 2013)Developer Evidences (Infosecurity Russia 2013)
Developer Evidences (Infosecurity Russia 2013)
Alexander Barabanov
 
Cloud security
Cloud securityCloud security
Cloud security
Mikhail Vanin
 
SerVal site monitoring presentation - Презентация SerVal
SerVal site monitoring presentation - Презентация SerValSerVal site monitoring presentation - Презентация SerVal
SerVal site monitoring presentation - Презентация SerVal
Elitesru
 
Сергей Федоров - Современная безопасность от Eset
Сергей Федоров - Современная безопасность от EsetСергей Федоров - Современная безопасность от Eset
Сергей Федоров - Современная безопасность от Eset
Expolink
 
6.2. Hacking most popular websites
6.2. Hacking most popular websites6.2. Hacking most popular websites
6.2. Hacking most popular websites
defconmoscow
 
анализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестированияанализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестирования
Ruslan Shevchenko
 
4.3. Rat races conditions
4.3. Rat races conditions4.3. Rat races conditions
4.3. Rat races conditions
defconmoscow
 
Intercepter-NG: сниффер нового поколения
Intercepter-NG: сниффер нового поколенияIntercepter-NG: сниффер нового поколения
Intercepter-NG: сниффер нового поколенияPositive Hack Days
 
Сергей Полаженко - Security Testing: SQL Injection
Сергей Полаженко - Security Testing: SQL InjectionСергей Полаженко - Security Testing: SQL Injection
Сергей Полаженко - Security Testing: SQL Injection
SQALab
 
Непрерывный анализ качества кода с помощью SonarQube
Непрерывный анализ качества кода с помощью SonarQubeНепрерывный анализ качества кода с помощью SonarQube
Непрерывный анализ качества кода с помощью SonarQube
Vasilii Chernov
 
PiterPy#3. DSL in Python. How and why?
PiterPy#3. DSL in Python. How and why?PiterPy#3. DSL in Python. How and why?
PiterPy#3. DSL in Python. How and why?
Ivan Tsyganov
 
Описание задач «Научного Хакатона»
Описание задач «Научного Хакатона»Описание задач «Научного Хакатона»
Описание задач «Научного Хакатона»
Sciencehit.by
 
NLP Project Full Cycle
NLP Project Full CycleNLP Project Full Cycle
NLP Project Full Cycle
Vsevolod Dyomkin
 
Демонстрация атаки на ДБО
Демонстрация атаки на ДБОДемонстрация атаки на ДБО
Демонстрация атаки на ДБОDmitry Evteev
 
Infográfico: Qualidade de vida no trabalho
Infográfico: Qualidade de vida no trabalhoInfográfico: Qualidade de vida no trabalho
Infográfico: Qualidade de vida no trabalho
Senior Sistemas
 
Тестирование защищенности веб-приложений
Тестирование защищенности веб-приложенийТестирование защищенности веб-приложений
Тестирование защищенности веб-приложений
SQALab
 
Город никогда не спит / The City Never Sleeps
Город никогда не спит / The City Never SleepsГород никогда не спит / The City Never Sleeps
Город никогда не спит / The City Never Sleeps
Positive Hack Days
 

Viewers also liked (20)

лекция безопасная разработка приложений
лекция  безопасная разработка приложенийлекция  безопасная разработка приложений
лекция безопасная разработка приложений
 
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватает
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватаетГибридный подход к управлению правами доступа: когда стандартного IDM не хватает
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватает
 
Barabanov_Markov it-std
Barabanov_Markov it-stdBarabanov_Markov it-std
Barabanov_Markov it-std
 
Developer Evidences (Infosecurity Russia 2013)
Developer Evidences (Infosecurity Russia 2013)Developer Evidences (Infosecurity Russia 2013)
Developer Evidences (Infosecurity Russia 2013)
 
Cloud security
Cloud securityCloud security
Cloud security
 
SerVal site monitoring presentation - Презентация SerVal
SerVal site monitoring presentation - Презентация SerValSerVal site monitoring presentation - Презентация SerVal
SerVal site monitoring presentation - Презентация SerVal
 
Сергей Федоров - Современная безопасность от Eset
Сергей Федоров - Современная безопасность от EsetСергей Федоров - Современная безопасность от Eset
Сергей Федоров - Современная безопасность от Eset
 
6.2. Hacking most popular websites
6.2. Hacking most popular websites6.2. Hacking most popular websites
6.2. Hacking most popular websites
 
анализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестированияанализ кода: от проверки стиля до автоматического тестирования
анализ кода: от проверки стиля до автоматического тестирования
 
4.3. Rat races conditions
4.3. Rat races conditions4.3. Rat races conditions
4.3. Rat races conditions
 
Intercepter-NG: сниффер нового поколения
Intercepter-NG: сниффер нового поколенияIntercepter-NG: сниффер нового поколения
Intercepter-NG: сниффер нового поколения
 
Сергей Полаженко - Security Testing: SQL Injection
Сергей Полаженко - Security Testing: SQL InjectionСергей Полаженко - Security Testing: SQL Injection
Сергей Полаженко - Security Testing: SQL Injection
 
Непрерывный анализ качества кода с помощью SonarQube
Непрерывный анализ качества кода с помощью SonarQubeНепрерывный анализ качества кода с помощью SonarQube
Непрерывный анализ качества кода с помощью SonarQube
 
PiterPy#3. DSL in Python. How and why?
PiterPy#3. DSL in Python. How and why?PiterPy#3. DSL in Python. How and why?
PiterPy#3. DSL in Python. How and why?
 
Описание задач «Научного Хакатона»
Описание задач «Научного Хакатона»Описание задач «Научного Хакатона»
Описание задач «Научного Хакатона»
 
NLP Project Full Cycle
NLP Project Full CycleNLP Project Full Cycle
NLP Project Full Cycle
 
Демонстрация атаки на ДБО
Демонстрация атаки на ДБОДемонстрация атаки на ДБО
Демонстрация атаки на ДБО
 
Infográfico: Qualidade de vida no trabalho
Infográfico: Qualidade de vida no trabalhoInfográfico: Qualidade de vida no trabalho
Infográfico: Qualidade de vida no trabalho
 
Тестирование защищенности веб-приложений
Тестирование защищенности веб-приложенийТестирование защищенности веб-приложений
Тестирование защищенности веб-приложений
 
Город никогда не спит / The City Never Sleeps
Город никогда не спит / The City Never SleepsГород никогда не спит / The City Never Sleeps
Город никогда не спит / The City Never Sleeps
 

Similar to Идентификация и аутентификация - встроенные функции безопасности или задачи специализированного сервиса организации?

«Идентификация, аутентификация, авторизация – встроенные функции приложений и...
«Идентификация, аутентификация, авторизация – встроенные функции приложений и...«Идентификация, аутентификация, авторизация – встроенные функции приложений и...
«Идентификация, аутентификация, авторизация – встроенные функции приложений и...
Mail.ru Group
 
Avanpost idm пацифика 2016
Avanpost idm пацифика 2016Avanpost idm пацифика 2016
Avanpost idm пацифика 2016
Diana Frolova
 
MAKING THE BEST FROM HARDWARE AND SOFTWARE FOR TRUE CORPORATE MOBILITY
MAKING THE BEST FROM HARDWARE AND SOFTWARE FOR TRUE CORPORATE MOBILITYMAKING THE BEST FROM HARDWARE AND SOFTWARE FOR TRUE CORPORATE MOBILITY
MAKING THE BEST FROM HARDWARE AND SOFTWARE FOR TRUE CORPORATE MOBILITYAnna Rastova
 
Формула эффективного управления доступом IDM+PKI+SSO. Олег Губка (Аванпост)
Формула эффективного управления доступом IDM+PKI+SSO.  Олег Губка (Аванпост)Формула эффективного управления доступом IDM+PKI+SSO.  Олег Губка (Аванпост)
Формула эффективного управления доступом IDM+PKI+SSO. Олег Губка (Аванпост)Expolink
 
Аналитика мобильных приложений
Аналитика мобильных приложенийАналитика мобильных приложений
Аналитика мобильных приложений
Anatoly Sharifulin
 
Решения для бизнеса: криптографические продукты и онлайн сервисы
Решения для бизнеса: криптографические продукты и онлайн сервисыРешения для бизнеса: криптографические продукты и онлайн сервисы
Решения для бизнеса: криптографические продукты и онлайн сервисы
Цифровые технологии
 
Cеминар: Работа с технологиями - Технологические платформы
Cеминар: Работа с технологиями - Технологические платформыCеминар: Работа с технологиями - Технологические платформы
Cеминар: Работа с технологиями - Технологические платформыMDIF
 
Обучение менеджеров по продажам 2015
Обучение менеджеров по продажам 2015Обучение менеджеров по продажам 2015
Обучение менеджеров по продажам 2015Avanpost Шаркова
 
Hivext – облачная платформа для быстрой разработки интернет приложений
Hivext – облачная платформа для быстрой разработки  интернет приложений Hivext – облачная платформа для быстрой разработки  интернет приложений
Hivext – облачная платформа для быстрой разработки интернет приложений guest800050
 
Как настроить аналитику для мобильных приложений
Как настроить аналитику для мобильных приложенийКак настроить аналитику для мобильных приложений
Как настроить аналитику для мобильных приложений
Нетология
 
Performance-маркетинг мобильных приложений
Performance-маркетинг мобильных приложенийPerformance-маркетинг мобильных приложений
Performance-маркетинг мобильных приложений
Netpeak
 
Решения КРОК для однократной и многофакторной аутентификации
Решения КРОК для однократной и многофакторной аутентификацииРешения КРОК для однократной и многофакторной аутентификации
Решения КРОК для однократной и многофакторной аутентификации
КРОК
 
Защита корпоративных и персональных мобильных устройств в сети
Защита корпоративных и персональных мобильных устройств в сетиЗащита корпоративных и персональных мобильных устройств в сети
Защита корпоративных и персональных мобильных устройств в сети
Cisco Russia
 
Виды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спроститьВиды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спростить
GoIT
 
ARinteg: Защита сетевого периметра
ARinteg: Защита сетевого периметраARinteg: Защита сетевого периметра
ARinteg: Защита сетевого периметраExpolink
 
Конкурс для разработчиков от Evernote
Конкурс для разработчиков от EvernoteКонкурс для разработчиков от Evernote
Конкурс для разработчиков от Evernote
Evernote
 
Маркетинг мобильных приложений: чек-лист по запуску первой кампании
Маркетинг мобильных приложений: чек-лист по запуску первой кампанииМаркетинг мобильных приложений: чек-лист по запуску первой кампании
Маркетинг мобильных приложений: чек-лист по запуску первой кампании
Netpeak
 
Новинки и тенденции в развитии продуктов компании КРИПТО-ПРО
Новинки и тенденции в развитии продуктов компании КРИПТО-ПРОНовинки и тенденции в развитии продуктов компании КРИПТО-ПРО
Новинки и тенденции в развитии продуктов компании КРИПТО-ПРО
Цифровые технологии
 
Gemalto ключевой компонент безопасной инфраструктуры microsoft 05122014
Gemalto  ключевой компонент безопасной инфраструктуры microsoft 05122014Gemalto  ключевой компонент безопасной инфраструктуры microsoft 05122014
Gemalto ключевой компонент безопасной инфраструктуры microsoft 05122014
ISSP Russia
 

Similar to Идентификация и аутентификация - встроенные функции безопасности или задачи специализированного сервиса организации? (20)

«Идентификация, аутентификация, авторизация – встроенные функции приложений и...
«Идентификация, аутентификация, авторизация – встроенные функции приложений и...«Идентификация, аутентификация, авторизация – встроенные функции приложений и...
«Идентификация, аутентификация, авторизация – встроенные функции приложений и...
 
Avanpost idm пацифика 2016
Avanpost idm пацифика 2016Avanpost idm пацифика 2016
Avanpost idm пацифика 2016
 
MAKING THE BEST FROM HARDWARE AND SOFTWARE FOR TRUE CORPORATE MOBILITY
MAKING THE BEST FROM HARDWARE AND SOFTWARE FOR TRUE CORPORATE MOBILITYMAKING THE BEST FROM HARDWARE AND SOFTWARE FOR TRUE CORPORATE MOBILITY
MAKING THE BEST FROM HARDWARE AND SOFTWARE FOR TRUE CORPORATE MOBILITY
 
Формула эффективного управления доступом IDM+PKI+SSO. Олег Губка (Аванпост)
Формула эффективного управления доступом IDM+PKI+SSO.  Олег Губка (Аванпост)Формула эффективного управления доступом IDM+PKI+SSO.  Олег Губка (Аванпост)
Формула эффективного управления доступом IDM+PKI+SSO. Олег Губка (Аванпост)
 
Аналитика мобильных приложений
Аналитика мобильных приложенийАналитика мобильных приложений
Аналитика мобильных приложений
 
Решения для бизнеса: криптографические продукты и онлайн сервисы
Решения для бизнеса: криптографические продукты и онлайн сервисыРешения для бизнеса: криптографические продукты и онлайн сервисы
Решения для бизнеса: криптографические продукты и онлайн сервисы
 
Cеминар: Работа с технологиями - Технологические платформы
Cеминар: Работа с технологиями - Технологические платформыCеминар: Работа с технологиями - Технологические платформы
Cеминар: Работа с технологиями - Технологические платформы
 
Обучение менеджеров по продажам 2015
Обучение менеджеров по продажам 2015Обучение менеджеров по продажам 2015
Обучение менеджеров по продажам 2015
 
Hivext 04.2010
Hivext 04.2010Hivext 04.2010
Hivext 04.2010
 
Hivext – облачная платформа для быстрой разработки интернет приложений
Hivext – облачная платформа для быстрой разработки  интернет приложений Hivext – облачная платформа для быстрой разработки  интернет приложений
Hivext – облачная платформа для быстрой разработки интернет приложений
 
Как настроить аналитику для мобильных приложений
Как настроить аналитику для мобильных приложенийКак настроить аналитику для мобильных приложений
Как настроить аналитику для мобильных приложений
 
Performance-маркетинг мобильных приложений
Performance-маркетинг мобильных приложенийPerformance-маркетинг мобильных приложений
Performance-маркетинг мобильных приложений
 
Решения КРОК для однократной и многофакторной аутентификации
Решения КРОК для однократной и многофакторной аутентификацииРешения КРОК для однократной и многофакторной аутентификации
Решения КРОК для однократной и многофакторной аутентификации
 
Защита корпоративных и персональных мобильных устройств в сети
Защита корпоративных и персональных мобильных устройств в сетиЗащита корпоративных и персональных мобильных устройств в сети
Защита корпоративных и персональных мобильных устройств в сети
 
Виды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спроститьВиды QA: Всё что вы не знали и боялись спростить
Виды QA: Всё что вы не знали и боялись спростить
 
ARinteg: Защита сетевого периметра
ARinteg: Защита сетевого периметраARinteg: Защита сетевого периметра
ARinteg: Защита сетевого периметра
 
Конкурс для разработчиков от Evernote
Конкурс для разработчиков от EvernoteКонкурс для разработчиков от Evernote
Конкурс для разработчиков от Evernote
 
Маркетинг мобильных приложений: чек-лист по запуску первой кампании
Маркетинг мобильных приложений: чек-лист по запуску первой кампанииМаркетинг мобильных приложений: чек-лист по запуску первой кампании
Маркетинг мобильных приложений: чек-лист по запуску первой кампании
 
Новинки и тенденции в развитии продуктов компании КРИПТО-ПРО
Новинки и тенденции в развитии продуктов компании КРИПТО-ПРОНовинки и тенденции в развитии продуктов компании КРИПТО-ПРО
Новинки и тенденции в развитии продуктов компании КРИПТО-ПРО
 
Gemalto ключевой компонент безопасной инфраструктуры microsoft 05122014
Gemalto  ключевой компонент безопасной инфраструктуры microsoft 05122014Gemalto  ключевой компонент безопасной инфраструктуры microsoft 05122014
Gemalto ключевой компонент безопасной инфраструктуры microsoft 05122014
 

Идентификация и аутентификация - встроенные функции безопасности или задачи специализированного сервиса организации?

  • 1. © ООО «РЕАК СОФТ» Семинар «Безопасная разработка и защита приложений» Идентификация, аутентификация, авторизация – встроенные функции приложений или задачи специализированного сервиса организации? Москва, 20 апреля 2016 Михаил Ванин, генеральный директорООО «РЕАК СОФТ» mvanin@reaxoft.ru
  • 3. Возможные варианты реализации в приложении парольной аутентификации Использование встроенных возможностей браузеров и протокола HTTP Создание в приложении формы парольной аутентификации
  • 4. HTTP Basic парольная аутентификация Клиент Сервер GET /private HTTP/1.1 HTTP/1.1 401 Unauthorized WWW-Authenticate: Basic realm= "Site name" Пользователь GET /private HTTP/1.1 Authorization: Basic dXNlcjpwYXNz== HTTP/1.1 200 OK * base64encode("user:pass")="dXNlcjpwYXNz"
  • 5. Другие виды HTTP аутентификации 1. Digest 2. NTLM (Windows Authentication) 3. Negotiate
  • 6. Аутентификация с использованием формы Клиент Сервер GET /login HTTP/1.1 HTTP/1.1 200 OK Пользователь POST /login HTTP/1.1 login=user@mail.ru&password=pass HTTP/1.1 302 Found Set-Cookie: token=AwM1ZW…Ni; Secure; HttpOnly GET /private HTTP/1.1 Cookie: token=AwM1ZW…Ni HTTP/1.1 200 OK
  • 7. Пользователи не доверяют паролям Источник: 2015 Accenture DigitalConsumer Survey Я нуждаюсь в альтернативе логинам/паролям для своей защиты в Интернете Логины и пароли громоздки в использовании В следующем году я бы использовал уникальный чип в моем телефоне/ПК для своей защиты в Интернете В следующем году я бы использовал биометрию для своей защиты в Интернете Я знаю не менее одной альтернативы логину/паролю для своей защиты в Интернете
  • 8. Повышение надежности аутентификации Строгая аутентификация (криптографические средства и электронная подпись) Усиленная аутентификация (усиление парольной аутентификацией – проверка 2 фактора)
  • 9. Строгая аутентификация с использованием TLS/SSL Handshake Клиент Сервер Фаза 1. Определение параметров шифрования Пользователь Фаза 3. Отправка серверу сертификата клиента (в открытом виде и в зашифрованном на приватном ключе), проверка сертификата клиента Фаза 4. Выработка предварительного ключа, отправка серверу в зашифрованном на открытом ключе сервера виде, взаимная выработка сессионного ключа Фаза 5. Завершение handshake, взаимный обмен данными по шифрованному каналу Фаза 2. Получение и проверка сертификата сервера, запрос сертификата клиента
  • 10. Строгая аутентификация с использованием формы аутентификации Для возможности взаимодействия веб-браузера с USB-токеном / смарт-картой необходим браузерный плагин
  • 11. Критерии выбора плагина 1. Поддержка различных ОС и браузеров - Поддерживается ли Google Chrome? Или работа только через NPAPI? - Поддерживаются ли Linux и Mac OS X последних версий, и какие их браузеры? 2. Поддержка средств электронной подписи различных производителей - Поддерживаются ли смарт-карты и токены только одного производителя или разных? - Обеспечивается ли поддержка только в Windows или и в других ОС? 3. Уровень технической поддержки производителя плагина - Имеет ли разработчик плагина обязательства по технической поддержке и SLA? 4. Безопасность плагина - Не помещает ли плагин в ОС корневые доверенные сертификаты? - Не требует ли плагин ввода пользователем ПИН-кода в веб-страницы браузера?
  • 12. Примеры плагинов 1. КриптоПро ЭЦП Browser plug-in 2. Aladdin JC-WebClient 3. Рутокен Плагин 4. Плагин портала государственных услуг 5. Blitz Smart Card Plugin
  • 13. Варианты усиленной аутентификации SMS-коды Email-коды HOTP-устройства TOTP-устройства U2F-устройства Иные способы
  • 15. Разновидности HOTP-устройств С LCD-дисплеем (код вводит пользователь) USB HID устройство (само впечатывает код) Комбинированное RFC4226 «HOTP: An HMAC-Based One-Time Password Algorithm»
  • 16. Примеры файлов описаний HOTP-устройств Существует большое разнообразие формата файлов, описывающих HOTP-устройства Пример файла для Aladdin eToken Pass Пример файла для YubiKey Пример файла для NagraID Security Display Card
  • 17. ПримерыTOTP мобильных приложений Google Authenticator (наиболее известный) Authy (наиболее функциональный) Bitrix24 OTP (сделан компанией из РФ) RFC6238 «TOTP: Time-Based One-Time Password Algorithm»
  • 18. Пример окна настройкиTOTP пользователем
  • 19. FIDO U2F устройство (Universal 2nd Factor) Регистрация устройства Проверка при входе
  • 20. Еще разработчики беспокоятся о … Регистрация и администрирование учетных записей Применение парольных политик Регистрация событий входа/выхода Сервисы самостоятельного восстановления пароля Отчеты о событиях входа Сервисы смены пароля, управления аутентификаторами Информирование пользователей о событиях входа Сервисы выхода из приложений
  • 21. А правильно ли разработчики поступают, когда создают все эти функции безопасности в своем приложении?
  • 23. Пользователи устали от парольного хаоса Я не хочу запоминать много паролей от своих рабочих учетных записей. И мне не нравится, что при смене пароля в каждом приложении свои правила его задания. Мне не нравится, что когда переключаюсь между приложениями, то у меня каждый раз просят вновь ввести логин и пароль. И что мешает сделать, чтобы экраны входа выглядели одинаково? Я редко использовала приложение и забыла от него пароль. И как мне его теперь восстановить?
  • 24. Беспорядок с входом в приложения беспокоит и администраторов ИБ Я не могу гибко настроить в приложениях правила аутентификации. Придется довольствоваться парольной аутентификацией При внедрении нового приложения мне нужно готовить для него учетные записи, давать доступы, выдавать пользователям пароли. На это я трачу свои время и энергию Пользователи не могут быстро усвоить новые пароли. Внедрение новых приложений происходит медленно Чем больше приложений со своей системой входа, тем чаще инциденты «забыл пароль». Пора что-то с этим предпринять
  • 25. Беспорядок с входом в приложения беспокоит и администраторов У меня нет единой картины, в какие приложения кто из пользователей и как часто ходит Я не уверен, что все эти механизмы аутентификации в разных приложениях безопасны. Сделанное «плохо» приложение компрометирует пароли и несет угрозу безопасности Пользователи выбирают ненадежные пароли. Вход не защищен. Парольные политики не эффективны
  • 26. Организациям нужен единый сервис доступа Пользователь с использованием любого устройства единожды проходит идентификацию и аутентификацию Получает доступ к разрешенным приложениям как внутри, так и вне организации Единый сервис доступа организации
  • 27. Преимущества использования единого сервиса Пользователям: 1) используя всего одну учётную запись пользователь получает доступ ко всем приложениям организации. Пользователи избавлены от необходимости помнить много логинов и паролей 2) используют надежные методы двухфакторной аутентификации 3) имеют средства для самостоятельного контроля событий безопасности, связанных с входом/выходом в приложения Владельцам/администраторам: 1) централизуют управление аутентификацией, снижают эксплуатационные затраты 2) внедрение новых приложений происходит быстрее – не нужно раздавать пользователям логины и пароли 3) увеличивают безопасность 4) снижают зависимость от поставщиков решений по аутентификации. Легко можно заменять поставщиков смарт- карт/токенов 5) с меньшими затратами добиваются соответствия нормативным требованиям по ИБ
  • 28. Единый сервис доступа – это в тренде Для пользователей Интернет привычно, когда они используют любимую учетную запись соц.сети для доступа к множеству сайтов.
  • 29. Эволюция условий, в которых должен функционировать единый сервис доступа Пользователи приложений – исключительно сотрудники компании Все устройства доступа – это ПК Все приложения развернуты исключительно внутри организации Вчерашний день Люди (пользователи) Устройства доступа Приложения и данные
  • 30. Сотрудники (тысячи) Поставщики, партнеры Потребители (миллионы) Приложения внутри организации Облачные приложения (SaaS) Люди (пользователи) Устройства доступа Приложения и данные Сегодня и завтра Эволюция условий, в которых должен функционировать единый сервис доступа ПК Планшеты Смартфоны Часы
  • 31. Как можно создать единый сервис доступа? Традиционный метод Современный метод «Парольный менеджер» (Enterprise SSO, PasswordWallet) Identity Provider и использование протоколов федеративного доступа (SAML / WS-Federation / OAuth 2.0 + OpenID Connect)
  • 32. Парольный менеджер, Enterprise Single Sign On Клиентская часть приложения Серверная часть приложения GET /login HTTP/1.1 HTTP/1.1 200 OK Пользователь POST /login HTTP/1.1 login=user@mail.ru&password=pass HTTP/1.1 302 Found Set-Cookie: token=AwM1ZW…Ni; Secure; HttpOnly GET /private HTTP/1.1 Cookie: token=AwM1ZW…Ni HTTP/1.1 200 OK ESSO-агент на ПК пользователя ESSO-агент перехватывает окна входа приложений и подставляет в них логины и пароли пользователя
  • 33. Идентификация/аутентификация с поставщиком идентификации SAML Поставщик услуг (приложение, SP) Поставщик идентификации (SAML IDP) GET /private HTTP/1.1 Пользователь Браузер GET /SAML/Redirect/SSO? SAMLRequest=…&RelayState=01c..a95b9c HTTP/1.1 HTTP/1.1 200 OK POST /private HTTP/1.1 RelayState=01c..a95b9c SAMLResponse=… Установлено доверие, произведен обмен метаданными SP и IDP
  • 35. Поставщик идентификации (OpenID Connect сервер) GET /private HTTP/1.1 Пользователь Браузер Установлено доверие, произведен обмен метаданными SP и IDP Идентификация/аутентификация с поставщиком идентификации OpenIDConnect (OAuth 2.0) GET /oauth/ae?response_type=code &scope=openid phone email &client_id=client01 &redirect_uri=https://client.ru/re &state=342a2c0c… HTTP/1.1 HTTP/1.1 302 Found Location: https://client.ru/re?code=f954nEz… &state=342a2c0c… OAuthAuthorization Code Flow Фаза 1. Получение авторизационного кода OAuth-клиент (фронтэнд приложения)
  • 36. OAuth-клиент (бэкэнд приложения) Поставщик идентификации (OpenID Connect сервер)Пользователь Браузер Идентификация/аутентификация с поставщиком идентификации OpenIDConnect (OAuth 2.0) OAuthAuthorization Code Flow Фаза 2. Получение маркера доступа POST /oauth/te HTTP/1.1 Authorization: Basic bG9jYWxo… grant_type=authorization_code &code=f954nEz… &redirect_uri=https://client.ru/re HTTP/1.1 200 OK Content-Type: application/json { "access_token": "ORSqyIGx…", "token_type": "bearer", "expires_in": 3600, "refresh_token": "FepnjwwA…", "scope": ”openid phone email", "id_token": "eyJhbGci…" }
  • 37. OAuth-клиент (бэкэнд приложения) Поставщик идентификации (OpenID Connect сервер)Пользователь Браузер Идентификация/аутентификация с поставщиком идентификации OpenIDConnect (OAuth 2.0) Получение данных о пользователе POST /oauth/userinfo HTTP/1.1 Authorization: Bearer ORSqyIGx… HTTP/1.1 200 OK Content-Type: application/json { "sub": ”354323222001", "name": "Ivan Ivanov", "given_name": “Ivan", "family_name": "Ivanov", "preferred_username": "i.ivanov", "email": "user@mail.ru", }
  • 38. OAuth-клиент (бэкэнд приложения) Поставщик идентификации (OpenID Connect сервер)Пользователь Браузер Идентификация/аутентификация с поставщиком идентификации OpenIDConnect (OAuth 2.0) Обновление маркера доступа при устаревании POST /oauth/te HTTP/1.1 Authorization: Basic bG9jYWxo… grant_type=refresh_token &refresh_token=FepnjwwA… HTTP/1.1 200 OK Content-Type: application/json { "access_token": "OVrfAj0B…", "token_type": "bearer", "expires_in": 3600, "refresh_token": "jj2DAYsP…", "scope": "openid phone email" }
  • 39. ПО для создания единого сервиса доступа Решения крупнейших вендоров Специализированное ПО Облачные сервисы (IDaaS) Российское ПО Решения на основе метода «парольный менеджер» Решения на основе протоколов федеративного доступа RSA Access Management Blitz Identity Provider Open-source
  • 40. Заключение 1. Создание в приложении функций идентификации, аутентификации, авторизации требует усилий и компетенции 2. Результат получается лучше при решении задач идентификации, аутентификации, авторизации сторонними средствами защиты, а не путем создания встроенных функций безопасности 3. Есть большой выбор вариантов платформы для создания единого сервиса доступа. Есть несколько популярных и устоявшихся стандартов и протоколов для взаимодействия приложений и единого сервиса доступа ООО «РЕАК СОФТ» http://identityblitz.ru +7 (499) 322-14-04 info@reaxoft.ru
  • 41. Материалы по теме презентации 1. Дистрибутив ПО Blitz Identity Provider для создания единого сервиса доступа (Linux/Windows) - http://identityblitz.ru/products/blitz-identity-provider/download/ 2. Обзорная статья на Хабре о способах и протоколах аутентификации (Дмитрий Выростков, DataArt) - https://habrahabr.ru/company/dataart/blog/262817/ 3. Мои презентации на SlideShare - http://www.slideshare.net/MikhailVanin Пожалуйста, задавайте вопросы! ООО «РЕАК СОФТ» http://identityblitz.ru +7 (499) 322-14-04 info@reaxoft.ru Мои контакты: Михаил Ванин, mvanin@reaxoft.ru

Editor's Notes

  1. Более 60 SaaS. Многие enterprise-ПО.
  2. Более 60 SaaS. Многие enterprise-ПО.