Аутентификация в 2020
От: rosencrantz США  
Дата: 09.09.20 03:14
Оценка: +1
Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?
Re: Аутентификация в 2020
От: Doc Россия http://andrey.moveax.ru
Дата: 09.09.20 05:30
Оценка: +1
Здравствуйте, rosencrantz, Вы писали:

R>или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


А просто предложить оба варианта клиенту? Мол или делаем свое, но подольше и подороже, или сразу используем сервис, но потом будут платежи за его использование.
Re: Аутентификация в 2020
От: scf  
Дата: 09.09.20 05:32
Оценка: -2
Здравствуйте, rosencrantz, Вы писали:

R>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


Только руками. Т.к. "самый лучший" experience можно сделать только самому, не полагаясь на сторонние апи и сервисы с неуправляемым качеством.

Другое дело в корпоративщине — где важнее не UI/UX, а стоимость разработки и поддержка разнообразных интеграций, типа того же XACML.
Re: Аутентификация в 2020
От: Дельгядо Филипп Россия  
Дата: 09.09.20 12:02
Оценка:
Здравствуйте, rosencrantz, Вы писали:

R>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


Не хватает НФТ — требований по UX, по нагрузке, по методам аутентификации, требований СБ и так далее.
Вот в зависимости от требований и решаем.
Но вообще свой писать не так уж и сложно, если делать это не в первый раз.
Re: Аутентификация в 2020
От: vsb Казахстан  
Дата: 09.09.20 12:24
Оценка:
Здравствуйте, rosencrantz, Вы писали:

R>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


По умолчанию делал бы руками. Не люблю все эти сервисы.
Re: Аутентификация в 2020
От: bnk СССР http://unmanagedvisio.com/
Дата: 09.09.20 13:28
Оценка:
Здравствуйте, rosencrantz, Вы писали:

R>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


Руками. Там обычно ничего особо сложного нет, к тому же есть библиотеки которые это предоставят на уровне ".UseFacebook()".
А со сторонними сервисами неясно какие данные и в какой стране они хранят, можно и под закон попасть какой, если кому-то захочется докопаться.
Re[2]: Аутентификация в 2020
От: rosencrantz США  
Дата: 09.09.20 14:16
Оценка:
Здравствуйте, Doc, Вы писали:

Doc>Здравствуйте, rosencrantz, Вы писали:


R>>или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


Doc>А просто предложить оба варианта клиенту? Мол или делаем свое, но подольше и подороже, или сразу используем сервис, но потом будут платежи за его использование.


Предположим, что у клиента нет технических людей и от вас как от эксперта ожидается "правильное решение" — как скажете, так и будет. Какое ваше решение?
Re[2]: Аутентификация в 2020
От: rosencrantz США  
Дата: 09.09.20 14:23
Оценка: +2
Здравствуйте, Дельгядо Филипп, Вы писали:

ДФ>Здравствуйте, rosencrantz, Вы писали:


R>>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


ДФ>Не хватает НФТ — требований по UX,


Ну чтоб "как у всех". Письмо с подтверждением, кнопка "забыл пароль", возможность поменять email позже с подтверждением.

ДФ>по нагрузке,


Низкая-средняя.

ДФ>по методам аутентификации,


Пароль, Google, Facebook.

ДФ>требований СБ и так далее.


Нет явных требований, но конечно если юзер 5 раз вводит пароль неправильно, было бы здорово что-то с этим сделать.

ДФ>Вот в зависимости от требований и решаем.

ДФ>Но вообще свой писать не так уж и сложно, если делать это не в первый раз.

Из моего опыта — чем меньше про это читаешь, тем легче выглядит задача. Но стоит прочитать пару статей и сразу понятно, что "не так уж и сложно" будет (не) обладать определёнными качествами.
Re[2]: Аутентификация в 2020
От: rosencrantz США  
Дата: 09.09.20 14:25
Оценка:
Здравствуйте, bnk, Вы писали:

bnk>Здравствуйте, rosencrantz, Вы писали:


R>>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


bnk>Руками. Там обычно ничего особо сложного нет, к тому же есть библиотеки которые это предоставят на уровне ".UseFacebook()".

bnk>А со сторонними сервисами неясно какие данные и в какой стране они хранят, можно и под закон попасть какой, если кому-то захочется докопаться.

С .useFacebook() действительно всё довольно прямолинейно, но вот как быть если хочется ещё username-password?
Re[3]: Аутентификация в 2020
От: Doc Россия http://andrey.moveax.ru
Дата: 09.09.20 14:32
Оценка:
Здравствуйте, rosencrantz, Вы писали:

R>Предположим, что у клиента нет технических людей и от вас как от эксперта ожидается "правильное решение" — как скажете, так и будет. Какое ваше решение?


Вопрос частью не технический. Готов ли сам клиент платить ежемесячно за сервис (и сколько). Если нет — то и вариантов нет. Но допустим клиент не против.
Второй момент — что за проект, бюджет и сроки разработки (и если ли свои готовые наработки). Т.е. какая часть бюджета и сроков пойдет на свою систему аутентификации, сравниваем фичи что сами сделаем и что есть в сервисе. Отсюда и будет решение.
Re[3]: Аутентификация в 2020
От: bnk СССР http://unmanagedvisio.com/
Дата: 09.09.20 14:36
Оценка:
Здравствуйте, rosencrantz, Вы писали:

R>>>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


bnk>>Руками. Там обычно ничего особо сложного нет, к тому же есть библиотеки которые это предоставят на уровне ".UseFacebook()".

bnk>>А со сторонними сервисами неясно какие данные и в какой стране они хранят, можно и под закон попасть какой, если кому-то захочется докопаться.

R>С .useFacebook() действительно всё довольно прямолинейно, но вот как быть если хочется ещё username-password?


Ну а сколько там форм? Пять? Напрячься да написать. Для этого сценария даже библиотеки особо не нужны, он фреймворком обычно как-то поддерживается.
Если нужна 2FA, будет наверное еще пять. Всего десять. Ну несколько дней и должно быть.

Все равно же тебе профиль пользователя делать, раз логин делаешь, так хоть будет все в одной кучке.
Re[4]: Аутентификация в 2020
От: rosencrantz США  
Дата: 09.09.20 14:39
Оценка:
Здравствуйте, Doc, Вы писали:

Doc>Здравствуйте, rosencrantz, Вы писали:


R>>Предположим, что у клиента нет технических людей и от вас как от эксперта ожидается "правильное решение" — как скажете, так и будет. Какое ваше решение?


Doc>Вопрос частью не технический. Готов ли сам клиент платить ежемесячно за сервис (и сколько). Если нет — то и вариантов нет. Но допустим клиент не против.

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

Короче, вам сколько подробностей не дай, ваша позиция — это не "писать аутентификацию руками — плохая идея, поэтому, дорогой клиент, давайте или платный сервис купим, или какой-нибудь open source аналог развернём сбоку, но точно давайте не будем писать это руками".
Re[4]: Аутентификация в 2020
От: rosencrantz США  
Дата: 09.09.20 15:00
Оценка: +4
Здравствуйте, bnk, Вы писали:

bnk>>>Руками. Там обычно ничего особо сложного нет, к тому же есть библиотеки которые это предоставят на уровне ".UseFacebook()".

bnk>>>А со сторонними сервисами неясно какие данные и в какой стране они хранят, можно и под закон попасть какой, если кому-то захочется докопаться.

R>>С .useFacebook() действительно всё довольно прямолинейно, но вот как быть если хочется ещё username-password?


bnk>Ну а сколько там форм? Пять? Напрячься да написать. Для этого сценария даже библиотеки особо не нужны, он фреймворком обычно как-то поддерживается.

bnk>Если нужна 2FA, будет наверное еще пять. Всего десять. Ну несколько дней и должно быть.

bnk>Все равно же тебе профиль пользователя делать, раз логин делаешь, так хоть будет все в одной кучке.


Ну там не только к формочкам всё сводится ведь.

1. Если это наша головная боль — слать имейлы, значит нужно озабочиваться через что их слать.
2. Вот зашёл пользователь через логин-пароль, мы ему что? Кукиз? Токен? Истекать/рефрешиться оно как-то будет?
3. Зарегистрировался пользователь с имейлом a@example.org. В какой-то момент пытается его поменять на b@example.org, а b@example.org уже занят другим юзером. Должна об этом голова болеть?

В моём понимании там много таких вот вещей, которые вроде и не сказать, что сложные, но их реально очень много. Формочек мало, а обвеса — много.
Re[5]: Аутентификация в 2020
От: Doc Россия http://andrey.moveax.ru
Дата: 09.09.20 15:06
Оценка:
Здравствуйте, rosencrantz, Вы писали:

R>Короче, вам сколько подробностей не дай, ваша позиция — это не "писать аутентификацию руками — плохая идея, поэтому, дорогой клиент, давайте или платный сервис купим, или какой-нибудь open source аналог развернём сбоку, но точно давайте не будем писать это руками".


Свои фантазии про меня держите при себе, ок?
И чтобы не было вопросов повторю еще раз — все будет зависеть от проекта (требований), сроков и бюджета. Возможно сервис, возможно OS, возможно свое.
Re[6]: Аутентификация в 2020
От: rosencrantz США  
Дата: 09.09.20 15:23
Оценка:
Здравствуйте, Doc, Вы писали:

Doc>Здравствуйте, rosencrantz, Вы писали:


R>>Короче, вам сколько подробностей не дай, ваша позиция — это не "писать аутентификацию руками — плохая идея, поэтому, дорогой клиент, давайте или платный сервис купим, или какой-нибудь open source аналог развернём сбоку, но точно давайте не будем писать это руками".


Doc>Свои фантазии про меня держите при себе, ок?

Doc>И чтобы не было вопросов повторю еще раз — все будет зависеть от проекта (требований), сроков и бюджета. Возможно сервис, возможно OS, возможно свое.

Прошу прощения! У меня не было цели под-бать или обидеть. Перечитайте что я написал — речь исключительно о том, что вы не станете говорить "точно не руками и не о чем тут говорить".

"Всё будет зависеть от требований" — это понятный ответ для вопроса "сколько будет стоить проект", но он не очень уместен для вопроса который определяется не столько хотелками клиента, сколько стандартами индустрии и лучшими практиками.
Re[7]: Аутентификация в 2020
От: Doc Россия http://andrey.moveax.ru
Дата: 10.09.20 14:55
Оценка:
Здравствуйте, rosencrantz, Вы писали:

R>Прошу прощения! У меня не было цели под-бать или обидеть. Перечитайте что я написал — речь исключительно о том, что вы не станете говорить "точно не руками и не о чем тут говорить".



R>"Всё будет зависеть от требований" — это понятный ответ для вопроса "сколько будет стоить проект", но он не очень уместен для вопроса который определяется не столько хотелками клиента, сколько стандартами индустрии и лучшими практиками.


Так и практики будут разные для разных проектов (по типу и требованиям). Универсального решения, вроде "всегда юзаем OS либы для этого", нет.
Re: Аутентификация в 2020
От: hrensgory Россия  
Дата: 16.09.20 15:07
Оценка: 2 (1)
Здравствуйте, rosencrantz, Вы писали:

R>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


"Готовься поставить сбоку бесплатный Keycloak (https://keycloak.org) и включить в нём нужные identity providers, а в приложении у тебя будет стандартный jwt token со всей нужной инфой из КК (username, email, etc.)".

Гугл и фейсбук провайдеры там есть из коробки, а для российских соцсетей (yandex, vk и т.п.) можно взять здесь: https://github.com/playa-ru/keycloak-russian-providers/

--
WBR,
Serge.
Re: Аутентификация в 2020
От: IB Австрия http://rsdn.ru
Дата: 20.09.20 15:43
Оценка: 13 (2) +1
Здравствуйте, rosencrantz, Вы писали:

R>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?

"Я сейчас один умный вещь скажу, только ты не обижайся" (с)
Ничего, никогда не нужно делать руками, если есть готовое. В данном случае, аутентификация с авторизацией только кажутся простыми. На моей памяти, такую штуку пытались прикрутить самостоятельно раза три или четыре, и каждый раз спустя полтора года обнаруживаешь отдельную команду разработчиков, пм-ов, тестеров и еще фиг знает кого, которая ковыряется с этим куском на стадии перманентной бэтты. И так с каждой фичей, которую кажется проще сделать самому, чем взять готовую.
Так что нет, never again — все что можно взять готовым, надо брать готовым, иначе это обойдется дороже и себе и заказчику. Пилить надо только то чего нет, лучший to-do лист, в данном случае.
Мы уже победили, просто это еще не так заметно...
Re: Аутентификация в 2020
От: Stalker. Австралия  
Дата: 28.09.20 03:19
Оценка: 2 (1) -1
Здравствуйте, rosencrantz, Вы писали:

R>Делается некий веб-аппликейшн — скажем, самый лучший to-do list, который должен поддерживать аутентификацию через логин-пароль, гугл и фейсбук. Станете вы по умолчанию делать всё руками — со своей таблицей Users, в которой username, password, email, googleId, facebookId, со своим кодом для отправки "Confirm your email", "Reset password", и т.д., или сразу скажете клиенту: "готовься платить за Okta/Auth0"?


для систем, где требуется хоть какая-то безопасность — свое писать нельзя. Шансов написать свой велосипед на эту тему и что-б его потом не хакнули просто нет.
Re[2]: Аутентификация в 2020
От: vsb Казахстан  
Дата: 28.09.20 06:45
Оценка: +3
Угу. Чтоб хакнули все разом и твой сервис заодно, который так никому не нужен был бы.

А вообще база юзеров это зачастую очень ценная коммерческая информация. Порой сервисы только ради этой базы и покупают. А вы всё это так легко готовы отдать незнамо кому.
Отредактировано 28.09.2020 6:47 vsb . Предыдущая версия .
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.