Единая учетная запись (Single Sing-Out)
или
Обычная аутентификация по логину-паролю (Basic Authentication)
 Публичный пост 13 сентября 2023  666

Всем привет! Хочу выяснить, кого больше: сторонников централизации данных или децентрализованного подхода к учетным записям.

Для себя я обозначил следующие преимущества и недостатки:

Единая учетная запись (Single Sing-Out)

  • Удобно. Все данные в одном месте, можно использовать автозаполнение в сервисах-партнеров и подтверждать документы
  • Одно место хранения это единая точка отказа. Если что-то случится, то собьется не один сервис, а несколько.

Basic Authentication

  • Нет привязки к экосистеме

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

Напишите, какой путь выбрали вы и почему? Какой из подходов на ваш взгляд будет набирать популярность в ближайшие 5-10 лет?

5 аргументов и 42 плюсика
за «Единая учетная запись (Single Sing-Out)»
7 аргументов и 67 плюсиков
за «Обычная аутентификация по логину-паролю (Basic Authentication)»
за «Обычная аутентификация по логину-паролю (Basic Authentication)»
Конкретный SSO рано или поздно сдохнет

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

@yeputons, А как же банковские SSO? Там и так знают о тебе все, и даже больше )))

  Развернуть 1 комментарий

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

  Развернуть 1 комментарий
за «Единая учетная запись (Single Sing-Out)»
Имплементировать на сайт безопасный SSO — просто, Basic — сложно

Я рассмотрю проблему со стороны владельцев веб-ресурсов и прогеров.

Довольно трудно разработать правильную и секьурную Basic Authentication для сервиса. Многие не парятся дальше MD5 для паролей, отсюда громадные утечки паролей и последующие взломы других сайтов просто потому, что люди переиспользуют пароли.

Гораздо сложнее сделать схему с двойным хешированием паролей и двойной солью, которая будет ещё более секьурной. Тут первый этап хеширования происходит в браузере клиента, а второй на самом сервере.

О наиболее секьрных типах Basic Authentication SPAKE2+, OPAQUE, AuCPace и прочих даже ваш седой CTO и тим лид не слышали, а когда вы спросите у вашего безопасника, то он побежит за священником. Их имплементация настолько сложна и непонятна, что кроме Protonmail я даже не знаю кто вообще их использует.

Вывод:

В инете кучи рукожопых людей, которые делают аутентификацию и хранение пользовательских секретов на отвали, поэтому не надо этим обезьянам давать гранату в руки в виде придумывания Basic Authentication (дай бог они хотя бы используют встроенные во фреймворки способы, но таких умных единицы). В качестве защиты от дурака, SSO и Passkeys куда надежнее.

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

Поэтому, в качестве защиты от дурака с обеих сторон наиболее предпочтительны SSO и Passkeys.

Сейчас ничего не нужно разрабатывать. Возьмите supertokens и делегируйте аутентификацию на специалистов. SSO там тоже можно включить.

  Развернуть 1 комментарий

@oskar, сложно сказать о безопасности supertokens - нет никаких аудитов безопасности, даже нету простой security white paper, поэтому я бы не доверял этой штуке, зная как айтишка забивает на безопасность.

Да, он open source, но этот код может проверить только узкоспециализированный профи, чтобы понять его качество. Не говорю уже о правильных имплементациях крипто алгоритмах - самая частая головная боль.

  Развернуть 1 комментарий
за «Обычная аутентификация по логину-паролю (Basic Authentication)»
Можно залогиниться только в один сайт

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

Аналогично с фишингом и угоном паролей.

за «Единая учетная запись (Single Sing-Out)»

заебись, на телефончик смотришь и заходишь. а пароль помнишь от айклауда/гугла/майкрософта и резервной почты. усё

за «Обычная аутентификация по логину-паролю (Basic Authentication)»

Sso даёт массу преимуществ маркетологам, мошенникам, etc. Если есть возможность зайти по отдельной учётной записи - лучше так и делать.

за «Обычная аутентификация по логину-паролю (Basic Authentication)»
Всегда можно залогиниться

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

за «Единая учетная запись (Single Sing-Out)»
Лень делать аккаунт на каждый сайт

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

за «Обычная аутентификация по логину-паролю (Basic Authentication)»

Ну чисто безопасности ради. Чтоб не угнали все за раз.

Ну и пилить акки где можно типа user+serviceName@email.com, чтоб видеть кто сливает имейлы :) или любой 10minutesmail - хранить все это в менеджере паролей с totp.

за «Обычная аутентификация по логину-паролю (Basic Authentication)»

Сегодня SSO работает, а завтра бац и условный гугл/сбербанк/{подставь_свое} тебя забанили. Вопрос запоминания кучи паролей и доступа к ним по биометрии на любом устройстве решается банальным битварденом каким-нибудь, для параноиков можно даже заселфхостить. Использую SSO только для какой-нибудь фигни.

за «Единая учетная запись (Single Sing-Out)»
Для рабочих сервисов — SSO самое то

Зачем знать/держать в голове/менеджере паролей акки от гита, сиая, волтов, атлассианов, датадогов, авсов...

Okta наше всё. Ну для работы

за «Обычная аутентификация по логину-паролю (Basic Authentication)»
у базовой аутентификации нет минусов SSO

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

P.S.
почему ты расшифровал SSO как single sign-OUT?

@metatrongay, вероятно автозамена бахнула. Спасибо!

  Развернуть 1 комментарий

@metatrongay, только поправить не могу пока - при попытке сохранения сайт выдает 500ку и отваливается ((

  Развернуть 1 комментарий
за «Единая учетная запись (Single Sing-Out)»
Лучше когда SSO есть, чем когда его нет.

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

Всегда здорово когда есть Basic Autentification.
Очень хорошо, что ты не привязан к какой-то экосистеме и вся твоя безопасность не зависит от надёжности этой экосистемы.
Basic Autentification вполне себе безопасная штука, но стоит использовать разные пароли (кто знает как хранит ваши пароли тот или иной сервис) и грамотно хранить свои пароли: пользоваться надёжным поссворд менеджером и надёжно его защищать (только не пользуйтесь дефолтными встроенными в браузер хранилками паролей). Взломали пассворд менеджер - зашли во все ваши сервисы.

Вывод: главное чтобы было MFA.

После прочтения остальных комментариев хочется дополнить.

Сейчас почти во всех общественных сервисах есть и то и другое, что очень здорово. Сервис проверенный - выбираю SSO, какая-то разовая не особо нужная регистрация - Basic Auth. Или наоборот что-то настолько важное, что надёжность моей учётной записи в Google это высокий риск - Basic Auth (а ещё собственный почтовый сервер и шапочка из фольги)

В Enterprise я однозначно за своё SSO - закрывается много дыр в безопасности, удобно, надёжно.

  Развернуть 1 комментарий

😎

Автор поста открыл его для большого интернета, но комментирование и движухи доступны только участникам Клуба

Что вообще здесь происходит?


Войти  или  Вступить в Клуб