SSO (Пользовательская версия): различия между версиями

Материал из SmartPlayer
Нет описания правки
Нет описания правки
 
(не показано 10 промежуточных версий 2 участников)
Строка 1: Строка 1:
<languages/>
<translate>
<!--T:1-->
== '''Общая информация''' ==
== '''Общая информация''' ==
[[File:SSO.png|thumb| Расположение и отображение кнопки "SSO" на главной странице сайта|300px]]
[[File:SSO.png|thumb| Расположение и отображение кнопки "SSO" на главной странице сайта|300px]]
Большинство компаний стремится к усовершенствованию и упрощению при взаимодействии со своим продуктом. А любому пользователю хочется чтобы ПО, которое он использует предоставляло большой спектр возможностей, закрывала все его потребности и было понятно даже без специальных знаний. <br><br>
Большинство компаний стремится к усовершенствованию и упрощению при взаимодействии со своим продуктом. А любому пользователю хочется чтобы ПО, которое он использует предоставляло большой спектр возможностей, закрывала все его потребности и было понятно даже без специальных знаний. <br><br>
Для облегчения жизни пользователя, команда SmartPlayer добавила функционал под название ''"SSO"'' или же ''"Same sign-on"''.<br><br>
Для облегчения взаимодействия с функционалом у пользователя, команда SmartPlayer добавила функционал под название ''"SSO"'' или же ''Single Sign-On''.<br><br>
Этот функционал дает возможность пользователю использовать свою почту (корпоративную или личную) для работы внутри нашей системы SmartPlayer. То есть ему не придется заводить отдельную почту для работы в нашей системе.
Этот функционал дает возможность пользователю оперировать своей электронной почтой (корпоративной или личной) для работы внутри нашей системы SmartPlayer. То есть ему не придется заводить отдельную почту для работы в нашей системе.
{{Note|Данный функционал перед использованием необходимо настроить. Настройка должна проводится силами системного администратора со стороны пользователя и нашей команды.|warn}}
{{Note|Данный функционал перед использованием необходимо настроить. Настройка должна проводится силами системного администратора со стороны пользователя и нашей команды.|warn}}
=='''Что даёт интеграция по SSO'''==
=='''Что даёт интеграция по SSO'''==
* '''Уменьшение временных затрат'''  
* '''Уменьшение временных затрат'''  
Строка 28: Строка 32:
'''SSO''' - ''Представьте, что у вас есть ключ, который открывает дверь в ваш дом, гараж, офис и почтовый ящик. Вместо того чтобы носить с собой кучу ключей для каждой двери, у вас есть только один ключ, который работает со всеми замками.''<br><br>
'''SSO''' - ''Представьте, что у вас есть ключ, который открывает дверь в ваш дом, гараж, офис и почтовый ящик. Вместо того чтобы носить с собой кучу ключей для каждой двери, у вас есть только один ключ, который работает со всеми замками.''<br><br>
'''SAML''' - ''Представьте, что вы хотите попасть в эксклюзивный клуб. У вас нет личного пропуска, но вы являетесь членом другого клуба, который имеет договор с этим эксклюзивным клубом. Когда вы приходите, вы показываете свой бейджик из первого клуба, и охранник эксклюзивного клуба звонит в ваш первоначальный клуб, чтобы подтвердить вашу личность. После подтверждения охранник пускает вас внутрь. Здесь ваш бейджик — это что-то вроде SAML-утверждения, а оба клуба — это разные системы или приложения.''<br><br>
'''SAML''' - ''Представьте, что вы хотите попасть в эксклюзивный клуб. У вас нет личного пропуска, но вы являетесь членом другого клуба, который имеет договор с этим эксклюзивным клубом. Когда вы приходите, вы показываете свой бейджик из первого клуба, и охранник эксклюзивного клуба звонит в ваш первоначальный клуб, чтобы подтвердить вашу личность. После подтверждения охранник пускает вас внутрь. Здесь ваш бейджик — это что-то вроде SAML-утверждения, а оба клуба — это разные системы или приложения.''<br><br>
'''ADFS'''-''Представьте, что каждый раз, когда вы приходите на работу, вы должны показать охраннику свой пропуск, чтобы попасть внутрь. Ваш пропуск — это доказательство того, что вы работаете в компании. Теперь представьте, что ваша компания имеет специальное соглашение с несколькими другими зданиями или офисами, и вы можете показать свой пропуск на входе в любое из них, и вас пустят внутрь.''<br>
'''ADFS'''-''Представьте, что каждый раз, когда вы приходите на работу, вы должны показать охраннику свой пропуск, чтобы попасть внутрь. Ваш пропуск — это доказательство того, что вы работаете в компании. Теперь представьте, что ваша компания имеет специальное соглашение с несколькими другими зданиями или офисами, и вы можете показать свой пропуск на входе в любое из них, и вас пустят внутрь.''<br><br>
Ещё стоит напомнить про термин '''"Аутентификация"'''- это процедура подтверждения идентичности пользователя посредством проверки предоставленных им данных, таких как логин и пароль. Этот процесс гарантирует, что пользователь действительно является тем, за кого он себя выдает.
 
<!--T:3-->
== '''Принцип действия''' ==
== '''Принцип действия''' ==
Если выражаться простыми словами SSO - это система единого входа с использованием одних и тех же данных в виде логина и пароля. <br>
Единый вход происходит по принципу:
# Наш сервер создает запрос на аутентификацию
# Этот запрос отправляется по маршруту/пути, которым является протокол SAML
# Достигнув конечной точки запрос попадает в ADFS сервер пользователя, где на него формируется ответ
# Ответ отправляется, также с помощью протокола SAML обратно к на на сервер. Внутри "ответа" данные о пользователе
# Наш сервер используя эти данные переводит пользователя в личный кабинет SmartPlayer
# И в тот же момент он заносит этого пользователя в базу данных SmartPlayer
[[File:Порядок действий.png|thumb|center|Визуализация процесса входа по SSO |800px]]
<!--T:4-->
== '''Порядок действий''' ==
== '''Порядок действий''' ==
Ниже будет описаны пошаговые действия для использования SSO. Эта инструкция будет выполнима, только при условии что системный администратор со стороны клиента настроил интеграцию по SSO:<br>
Ниже будет описаны пошаговые действия для использования SSO. Эта инструкция будет выполнима, только при условии что системный администратор со стороны клиента настроил интеграцию по SSO:<br>
1. ''Первоначально пользователю необходимо попасть на главную страницу нашего сайта'' (внешняя ссылка)<br>
* ''Первоначально пользователю необходимо попасть на страницу аутентификации нашего сайта'' [https://cms.smartplayer.org/#/login?lang=ru SmartPlayer]
2. ''Далее необходимо кликнуть по кнопке "Войти по SSO"'' <br>
* ''Далее необходимо кликнуть по кнопке "Войти по SSO"''  
3. ''Следующее что увидит пользователь - зависит от настроек функционала SSO.'' Это может быть:<br>
* ''Следующее что увидит пользователь - зависит от настроек функционала SSO.''  
<div style="border: 2px solid #d3d3d3; padding: 10px; border-radius: 8px; background-color: #f5f5f5;">Это может быть:
- либо форма с заполнением персональных - логина и пароля<br>
- либо форма с заполнением персональных - логина и пароля<br>
- либо вас сразу отправит на главную страницу сайта из-за системы сохранения и автозаполнения данных (логина и пароля).<br>
- либо вас сразу отправит на главную страницу сайта из-за системы сохранения и автозаполнения данных (логина и пароля).<br>
''Далее все актуально только для первого случая, где пользователь все данные заносит вручную.''<br>
''Далее все актуально только для первого случая, где пользователь все данные заносит вручную.''<br></div>
4. ''После заполнения персональных данных и нажатия кнопки "Вход" вас перенаправит в личный кабинет аккаунта.''<br>
* ''После заполнения персональных данных и нажатия кнопки "Вход" вас перенаправит в личный кабинет аккаунта.''<br>
5. ''Вы можете пользоваться функционалом личного кабинета SmartPlayer''
* ''Вы можете пользоваться функционалом личного кабинета SmartPlayer''
== Итоговый результат ==
[[File:Карта процесса SSO.png|thumb|center|Карта процесса получения доступа через SSO |800px]]
 
<!--T:5-->
== '''Итоговый результат''' ==
Пользователь может работать с нашим функционалом не создавая отдельную учетную запись, а использую уже созданный аккаунт. Таким образом он избежит траты лишнего времени, создания "бесполезных дублей" своего e-mail и усилит безопасность персональных данных.
Пользователь может работать с нашим функционалом не создавая отдельную учетную запись, а использую уже созданный аккаунт. Таким образом он избежит траты лишнего времени, создания "бесполезных дублей" своего e-mail и усилит безопасность персональных данных.
== '''Доработка авторизации через SSO''' ==
Доработка SSO позволяет пользователю избежать повторной авторизации на SSO - серверах Lamoda. То есть SSO сервис теперь проверяет что сессия с данным пользователем уже есть, и его повторная авторизация не требуется.<br>
Для реализация данного решения на серверной части был добавлен параметр «SSO_FORCE_AUTHN». Данный параметр по умолчанию имеет значение «0», то есть включена прозрачная авторизация.
</translate>

Текущая версия от 13:51, 13 ноября 2024

Другие языки:

Общая информация

Расположение и отображение кнопки "SSO" на главной странице сайта

Большинство компаний стремится к усовершенствованию и упрощению при взаимодействии со своим продуктом. А любому пользователю хочется чтобы ПО, которое он использует предоставляло большой спектр возможностей, закрывала все его потребности и было понятно даже без специальных знаний.

Для облегчения взаимодействия с функционалом у пользователя, команда SmartPlayer добавила функционал под название "SSO" или же Single Sign-On.

Этот функционал дает возможность пользователю оперировать своей электронной почтой (корпоративной или личной) для работы внутри нашей системы SmartPlayer. То есть ему не придется заводить отдельную почту для работы в нашей системе.

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

Что даёт интеграция по SSO

  • Уменьшение временных затрат

Люди часто используют более одного корпоративного приложения. И на каждом сервисе им необходимо пройти аутентификацию. Или проще говоря ввести логин и пароль чтобы зайти в аккаунт. Этот процесс отнимает много времени. SSO призвано помочь упростить процесс проверки пользователей корпоративных приложений и упрощает получения доступа к защищенным ресурсам.

  • Оптимизация ресурсов

Люди пытаются запомнить многочисленные пароли от различных сервисов. Корпоративные пользователи могут легко забыть свои учетные данные, из-за их большого объёма. Следствием этой ситуации являются частые запросы на восстановление или сброс паролей, которые увеличивает нагрузку на штатные ИТ-отделы. Внедрение SSO действительно снижает количество случаев забытых паролей. Таким образом, позволяет оптимизировать позволяет не использовать ресурсы службы поддержки и выделять их под другие задачи.

  • Укрепление возможностей безопасности

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

  • Приятный опыт взаимодействия для клиента

SSO используют для обеспечения конечным пользователям простого и беспроблемного входа в систему. А также дает возможность управления учётной записью пользователя и её параметрами. Тако подход упрощает жизнь пользователя, в связи с использованием меньшего количества паролей. При этом пользователи продолжают иметь безопасный доступ к приложению и ее функционалу.

Терминология

Это базовые термины которые необходимо понимать, чтобы разобраться в принципах работы SSO. Они будут описаны просто, понятно и с примерами:

SSO (Same sign-on) - это функция, благодаря которой пользователь может войти в одно приложение или веб-сайт и автоматически получить доступ к другим приложениям или сайтам без необходимости повторно вводить свои учетные данные.

SAML (Security Assertion Markup Language) — это стандартный язык для обмена данными аутентификации и авторизации между разными системами. Он позволяет одной системе подтвердить вашу личность другой системе без необходимости вводить логин и пароль заново.

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

А теперь представим их в виде более простых примеров:

SSO - Представьте, что у вас есть ключ, который открывает дверь в ваш дом, гараж, офис и почтовый ящик. Вместо того чтобы носить с собой кучу ключей для каждой двери, у вас есть только один ключ, который работает со всеми замками.

SAML - Представьте, что вы хотите попасть в эксклюзивный клуб. У вас нет личного пропуска, но вы являетесь членом другого клуба, который имеет договор с этим эксклюзивным клубом. Когда вы приходите, вы показываете свой бейджик из первого клуба, и охранник эксклюзивного клуба звонит в ваш первоначальный клуб, чтобы подтвердить вашу личность. После подтверждения охранник пускает вас внутрь. Здесь ваш бейджик — это что-то вроде SAML-утверждения, а оба клуба — это разные системы или приложения.

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

Ещё стоит напомнить про термин "Аутентификация"- это процедура подтверждения идентичности пользователя посредством проверки предоставленных им данных, таких как логин и пароль. Этот процесс гарантирует, что пользователь действительно является тем, за кого он себя выдает.

Принцип действия

Если выражаться простыми словами SSO - это система единого входа с использованием одних и тех же данных в виде логина и пароля.
Единый вход происходит по принципу:

  1. Наш сервер создает запрос на аутентификацию
  2. Этот запрос отправляется по маршруту/пути, которым является протокол SAML
  3. Достигнув конечной точки запрос попадает в ADFS сервер пользователя, где на него формируется ответ
  4. Ответ отправляется, также с помощью протокола SAML обратно к на на сервер. Внутри "ответа" данные о пользователе
  5. Наш сервер используя эти данные переводит пользователя в личный кабинет SmartPlayer
  6. И в тот же момент он заносит этого пользователя в базу данных SmartPlayer
Визуализация процесса входа по SSO

Порядок действий

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

  • Первоначально пользователю необходимо попасть на страницу аутентификации нашего сайта SmartPlayer
  • Далее необходимо кликнуть по кнопке "Войти по SSO"
  • Следующее что увидит пользователь - зависит от настроек функционала SSO.
Это может быть:

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

Далее все актуально только для первого случая, где пользователь все данные заносит вручную.
  • После заполнения персональных данных и нажатия кнопки "Вход" вас перенаправит в личный кабинет аккаунта.
  • Вы можете пользоваться функционалом личного кабинета SmartPlayer
Карта процесса получения доступа через SSO

Итоговый результат

Пользователь может работать с нашим функционалом не создавая отдельную учетную запись, а использую уже созданный аккаунт. Таким образом он избежит траты лишнего времени, создания "бесполезных дублей" своего e-mail и усилит безопасность персональных данных.

Доработка авторизации через SSO

Доработка SSO позволяет пользователю избежать повторной авторизации на SSO - серверах Lamoda. То есть SSO сервис теперь проверяет что сессия с данным пользователем уже есть, и его повторная авторизация не требуется.
Для реализация данного решения на серверной части был добавлен параметр «SSO_FORCE_AUTHN». Данный параметр по умолчанию имеет значение «0», то есть включена прозрачная авторизация.