Что требуется Oauth2 или SSO для нашего сценария использования? - PullRequest
0 голосов
/ 16 ноября 2018

Наш бизнес-пример заключается в том, что у нас есть четыре-пять сервисов, развернутых как веб-приложения java spring. Эти сервисы имеют пользователей / клиентов, полученных либо в процессе регистрации, либо от некоторых существующих запущенных приложений, представленных как остальные сервисы. Мы намерены создать единый портал, который предоставит пользователям возможность использовать одну учетную запись / учетные данные для непосредственного входа во многие службы.

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

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

Для услуг, требующих регистрации, мы сохраняем учетные данные клиента в таблице входа в систему, если ее нет; а также в таблице клиентов службы / приложений с общим отображением таблицы входа в систему.

Но нам нужен безопасный портал с отслеживанием сеанса, тайм-аут сеанса, такой же, как Single Sign On

С некоторыми исследованиями мы сузили подход к реализации вышеупомянутого сценария с помощью единого входа или Oauth2, который применим к ней. Для получения более подробной информации см. Ссылку (https://stormpath.com/blog/oauth-is-not-sso).

Может кто-нибудь предложить, какой подход SSO или Oauth2 применим для нашего бизнес-сценария?

если SSO, какой лучший SSO с открытым исходным кодом для Java-приложений Spring?

если OAuth2, что будет действовать как клиентское приложение, сервер авторизации, владелец ресурса и сервер ресурса? Как у нас есть сервисы (Java-приложения) в качестве клиентских приложений, размещенных в Common Application / Portal? будет ли общая таблица входа действовать как владелец ресурса?

1 Ответ

0 голосов
/ 16 ноября 2018

Вы, вероятно, захотите SpingSAML . Если приложения размещаются по разным путям, например example.org/app1 и example.org/app2, то вы можете использовать Shibboleth Service Provider в качестве SAML SP для приложений.

Вам все еще понадобится какой-нибудь провайдер идентификации, чего не может сделать SpingSAML, но существует бесчисленное множество реализаций IdP: т.е. Провайдер идентификации Shibboleth , ADFS или коммерческий IdP, такой как Okta , OneLogin, Ping и др.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...