|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомСессии в памяти - это же мета -нубство. Например, на той же node.js есть чудесный менеджер процессов PM2, который с минимумом усилий запускает процессы ноды на произвольном количестве ядер. Это на ровном месте прилично бустит производительность. Но это тут же обуславливает невозможность хранения сессии в памяти. Ну и фиг с ними. Нужно будет что-то в кеш для пользователя засунуть, так, чтобы всем нодам это было видно, заюзаю распределённый кеш, но лучше всегда всё делать stateless. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.08.2018, 14:56 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
А вот мне интересно, что за уипанцы пишут обзоры/инструкции/описания? Это же трешак. Касаясь OAUTH2 - чего я только не видел. Сам механизм описан кусочно, а кейсы использования просто упомянуты и не раскрыты абсолютно. Видел, как реально чел предлагает использовать auth code flow в случае со SPA. То есть, сначала получаем auth code, потом тут же идём за токеном. Вообще не соображают, о чем пишут. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2018, 09:43 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортом, Возможное имхо что это не для энтерпрайзе протокол, а для сайтиков...соц.сетей. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2018, 10:02 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Petro123Агнец за бортом, Возможное имхо что это не для энтерпрайзе протокол, а для сайтиков...соц.сетей. Отчего ж? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2018, 10:16 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомВообще не соображают, о чем пишут. Согласен, дока в сети в основном не айс. Но к тому времени, когда где-то собирается айс, прогресс уже уехал :) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2018, 11:09 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомPetro123Агнец за бортом, Возможное имхо что это не для энтерпрайзе протокол, а для сайтиков...соц.сетей. Отчего ж? Не знаю... Как то сложилось впечатление... Ещё со времён OpenID когда питон щупал). Имхо было. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2018, 11:32 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
А почему в токене есть инфа только expires_in: 3600, но нет - с какого времени считается этот срок? Самому писать/считать? Если за этим следит сам idP, то зачем мне эта инфа? И еще - idP, который возвращает мне (.NET) JSON-токен с маркерами - разве не должен прислать мне их с зашифрованными с секретом? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 15:35 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомСамому писать/считать? Если за этим следит сам idP, то зачем мне эта инфа?у него свои токены для общения idP с тобой - АPI. У тебя свои хоть токены, хоть куки, хоть голубиная почта. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 15:44 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомА почему в токене есть инфа только потому что время на сервере SSO может отличаться от времени клиента ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 15:44 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомИ еще - idP, который возвращает мне (.NET) JSON-токен с маркерами - разве не должен прислать мне их с зашифрованными с секретом? каким ещё секретом? nonce? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 15:46 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
hVosttАгнец за бортомА почему в токене есть инфа только потому что время на сервере SSO может отличаться от времени клиента Справедливо. То есть - самому писать в тот же токен? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 15:54 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
hVosttАгнец за бортомИ еще - idP, который возвращает мне (.NET) JSON-токен с маркерами - разве не должен прислать мне их с зашифрованными с секретом? каким ещё секретом? nonce? Ну, смысл JWT-токена, что он шифруется секретом, который знают только две стороны. (.net и idP). А он мне его прислал вообще в открытом виде. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 15:55 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомСправедливо. То есть - самому писать в тот же токен? да, если хочешь :) но смысла особого нет. Агнец за бортомНу, смысл JWT-токена, что он шифруется секретом, который знают только две стороны. (.net и idP). А он мне его прислал вообще в открытом виде. токен не шифруется, он подписывается, важна достоверность, чтобы не подделали. а шифровать ничего не нужно, так как передаётся всё по https, зачем эти ненужные телодвижения? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 15:59 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортом, вот можешь поиграться https://jwt.io/ видишь, 3 часть токена это подпись? это всё. больше никакого шифрования. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 16:01 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
hVostt, Ну ок, но почему idP мне все эти токены шлёт в открытую, JSON-ом? Это нормально? Код: c# 1. 2. 3. 4. 5. 6.
Такой набор полей. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 16:14 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
hVosttтокен не шифруется, ондоки надо смотреть. Там должно быть написано. Например, SAML шифруется. И разница во времени не допускается. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 16:16 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомНу ок, но почему idP мне все эти токены шлёт в открытую, JSON-ом? Это нормально? Да, нормально. Смотри. Допустим, у тебя есть твой сервер A, клиент K и сервер авторизации S. В случае толстого клиента, К может авторизоваться на S самостоятельно, получить токен и дальнейшие обращения делать на сервер А с полученным токеном. При этом за обновление и сопровождение токена клиент сам отвечает. Он только предъявляет его серверу А, смотри, мне разрешено. Что бы мог сделать сервер А. Он мог бы, получив токен, сделать запрос на S, чтобы удостовериться, может быть это какая-то лажа. Но ему это делать не нужно, он просто может проверить подпись. Для создания подписи участвует секретный ключ, известный серверу приложений А и серверу авторизации S. Клиент его не знает, значит не может подделать токен. Благодаря этому, проверка токена миллисекундное дело. И не надо ничего нигде кешировать и хранить в сессии. Всё очень удобно и гибко. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 19:02 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Petro123Например, SAML шифруется. Да нафиг он нужон, сложный и деревянный :) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 19:03 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
hVosttДа нафиг он нужон, сложный и деревянный :)чтобы был не один сорт колбасы краковская, а 10 разных. Альтернатива брат. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 19:12 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
hVostt, Это понятно, спасибо. И я всё-таки со своими ролями. Где их хранить правильно ? Допустим, к разным ресурсам - разные роли - как обычно. Роли (а также как фамилия и мобила и т.д.) не вшиты в сам токен - их нужно получать отдельно. С каждым запросом сервер А дергать не будешь, получая роли - понятно. Пляшем от stateless - значит никаких сесиий. Остаётся - хранить роли в самом токене, который гуляет вместе с кукой. Обновляя их, скажем при каждом обновлении access-маркера. Но тогда всю движуху по подписыванию токена - надо брать на себя? **** Почему я спрашиваю - у меня чувство, что я чего-то не понимаю. Сама технология JWT - понятна и близка. Я не понимаю - почему мне сервер А выдаёт данные в том виде - в котором выдаёт. Он мне выдаёт простой JSON-объект, в котором подписан только идентификационный маркер (и он - одно из полей), а два других - простые поля в JSON-объекте. Зачем он подписывает "идентификационный маркер", а два других - как есть? Если мы говорим о stateless, то надо запихивать в токен кучу дополнительной инфы и подписывать её самому. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 20:14 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортом, Если действующих атрибутов у пользователя много, от stateful не уйти, так как атрибуты пользователя надо дозапрашивать после получения токена и кешировать в приложении. В основном SSO отвечает за аутентификацию, и за авторизацию в приложении. Набор полномочий, с которыми он авторизуется в приложении сохраняется в токен, если он вариативный. Т.е. им управляет сам пользователь при входе. Допустим, SSO спрашивает, вы хотите предоставить приложению доступ к вашему телефону? Месту расположения? Как кто вы хотите войти (функциональная роль)? И т.п. Если это не нужно, достаточно того, что токен содержит в payload username/userid/givenname. Агнец за бортомНо тогда всю движуху по подписыванию токена - надо брать на себя? Нет, зачем? Существующие библиотеки это делают с любым объёмом атрибутов токена. Но большой токен это не гуд. Агнец за бортомЗачем он подписывает "идентификационный маркер", а два других - как есть? JWT состоит из 3-х частей: 1. хедер 2. нагрузка (полезные данные) 3. подпись подпись это хеш от 1+2+secret key Агнец за бортомЕсли мы говорим о stateless, то надо запихивать в токен кучу дополнительной инфы и подписывать её самому. подписывается хедер и нагрузка, чего бы ты в нагрузку не напихал. одинаково при любом объёме. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 20:40 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
hVosttНабор полномочий, с которыми он авторизуется в приложении сохраняется в токен, если он вариативный. У юзера на SSO есть произвольный набор атрибутов. Имя, мыло, телефон, фамилия... Эти атрибуты группируются под разрешениями. Например "личные данные","Данные VK","Служебные данные". Приложениям, что заводятся (регистрируются) в SSO - выдаются вот эти разрешения, которые в принципе будут им доступны. Вопрос - можно ли сделать так, чтобы содержание (то есть - сами значения атрибутов) сразу записывались в payload после аутентификации?? Чтобы не было нужды в дополнительном запросе. P.S. OAUTH2 считается намного проще, чем OAUTH без номера. Страшно представить - что там было. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 21:03 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
Агнец за бортомВопрос - можно ли сделать так, чтобы содержание (то есть - сами значения атрибутов) сразу записывались в payload после аутентификации?? Чтобы не было нужды в дополнительном запросе. Конечно, записывай их в payload на стороне SSO, только смотри, чтобы токен сильно не распух. Агнец за бортомP.S. OAUTH2 считается намного проще, чем OAUTH без номера. Страшно представить - что там было. oauth это только access token по сути, проще это типа сами думайте что с этим дальше делать. и придумали, появился openid connect )) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 22:51 |
|
SSO - несколько вопросов.
|
|||
---|---|---|---|
#18+
hVosttКонечно, записывай их в payload на стороне SSO, Я как-то этим там не рулю.. Это зависит от реализации сервера? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2018, 23:08 |
|
|
start [/forum/topic.php?fid=18&msg=39684338&tid=1355155]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
63ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 303ms |
total: | 461ms |
0 / 0 |