|
|
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Т.е. нужна авторизация напр. обычного приложения (JSP\Servlet) с крупным заказчиком. Я так понял, что на первом этапе при входе в наше приложение появляется окно авторизации по примеру Одноклассников. Пока нарыл такие туторы: http://habrahabr.ru/company/eastbanctech/blog/193662/ (мутновато и много шагов))) https://wiki.eclipse.org/SAML2_IdP_Development_1.1 (связь с иклипсом, что желательно) но выскакивает ошибка Код: java 1. 2. 3. 4. 5. 6. что за ошибка? ... и есть вроде вариант работать с: idP (identity prov) - Shibboleth реализующую SAML 2.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:28 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Какая-то странная точка входа. Код: java 1. 2. 3. 4. 5. 6. 7. 8. Как запускаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 10:21 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczКак запускаешь? вторая ссылка, там проект клиента и сервера. Проект клиента скачал и запустил в иклипсе на томкат Счас ещё раз проверю и отпишу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 10:52 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Очень сильно зависит от Identity provider'а (не поддерживают полностью стандарт SAML2, нужен доступ к логам для разработки). У меня был ADFS. Использовал библиотеку sibotteh saml 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 12:24 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
no56892Очень сильно зависит от Identity provider'а (не поддерживают полностью стандарт SAML2, нужен доступ к логам для разработки). У меня был ADFS. Использовал библиотеку sibotteh saml 2. пров большой и серьёзный. Счас уточнил, нужен именно SAML 2. Полностью или нет покрыт неважно. Главное чтобы у нас Hello World работал)). Если есть ссылки \ куски кода - буду благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 12:45 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Там сначала надо сгенерировать ключи (для подписи(ообязательно), для шифрования - по желанию), затем сгенерить сервис провайдер metadata xml который содержит ваши открытые ключи и URL куда редиректить Idp будет, затем импортнуть в Idp эту штуку, затем в Idp настроить инфу кот он будет передавать Вам вместе с сообщением "о заходе пользователя" (напр. username). Вообще за неделю можно раскурить тему)) В приложении минимально возможный sp metadata xml который импортировался в Microsoft AD Federation Services. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 13:07 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
no56892, спс. Выше ссылки и методы что я давал не в том направлении что вы делали? Пока тыкаюсь в простейшем примере чтобы запустить hello world из одной строки в JSP и редиректом на проверку по SSO. Копаю пример-проект с конфигом в web.xml (/oiosaml.java-demo-11330) oiosaml.configuration.FileConfiguration - oiosaml-j.name was not defined in web.xml = Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 14:11 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Petro123no56892, спс. Выше ссылки и методы что я давал не в том направлении что вы делали? Пока тыкаюсь в простейшем примере чтобы запустить hello world из одной строки в JSP и редиректом на проверку по SSO. Копаю пример-проект с конфигом в web.xml (/oiosaml.java-demo-11330) oiosaml.configuration.FileConfiguration - oiosaml-j.name was not defined in web.xml = Код: java 1. Я сейчас на jBoss делаю SSO с SAML2. Там используется picketlink Вот примеры . Вот это документация от jBoss . Если работать в рамках одного домена, то танцы с ключами не нужны. Смотреть в примерах: picketlink-federation-saml-idp-basic - для идентификации И picketlink-federation-saml-sp-redirect-basic - для доступа. Там куча примеров. Но эти два показывают как сделать приложение для логина и как им воспользоваться из другого приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 14:42 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
mad_nazgul, спс. Примеров много). Не могу придумать как интегрировать с APEX оракля. Он не позволяет у себя писать код гна Java. Только PL процедуры сервера. Либо как бы из хранимки http.p() во внешний инет запрос типа AJAX. Либо Java обёрнутая хранимкой. Это всё не то.. и библиотеки там не подключить. .. - Значит либо своё мин приложение получив токен пишет в куку и редирект на APEX - Значит либо своё мин приложение получив токен пишет в БД и редирект на APEX - Значит либо своё мин приложение как прокси постоянно висит перед APEX... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 17:03 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Для начала я бы посоветовал выяснить какой Idp будет использоваться у ваших партнеров, и получить доступ к его логам (если не дадут, то поднять у себя локально на виртуалке). Про то как сам протокол работает хорошо написано в вики. А вот более детально (в тч формат сообщений): http://saml.xml.org/saml-specifications Для логина/логаута нужно не много сообщений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 19:04 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
no56892, Может я не понял, но до разбора логов и парсинга xml мы вроде не опускаемся? Максимум должен быть jar ник с API и получаем ФИО с Одноклассников. Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 19:37 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
А у вас Одноклассники разве? Вы же говорили про SAML и Idp провайдера? Ну парсить xml не потребуется если Вы будете использовать Shibboleth библиотеку. Она как бы для двух частей - в SAML есть идентити провайдер (это тот у кого пользователи хранятся) "сервер" и сервис провайдер (это ваш сайт, на который предыдущим пользователям хотите дать доступ) "клиент". Библиотека Shibboleth она и для того и для другого, у Вас насколько я понял идентити провайдер уже есть, тоесть Вам надо написать к нему "клиент". Если не использовать эту библиотеку - тогда вручную парсить/составлять xml. Если ваш идентити провайдер предлставляет jar с апи - тогда вообще в чем проблема? (я просто не знаю бывает ли такое, по крайней мере я делал "чисто по протоколу" обмен). Логи нужны, т.к. Вам не будут присылаться ошибки (просто ничего не будет присылаться) и так оч сложно понять в чем дело - чисто для этих целей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 19:56 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
no56892, Одн-ки пример. IdP в 1 посте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 20:08 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
no56892, Что делать если там где польз-ли, напр. Одн... их слишком много. Заводить своих? Или заводить не всех а как бы по приглашению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 20:12 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Хм... К примеру фирма ГАИ хочет прогу с водителями которые стучат на других водителей. Из Од-ков берём ФИО чтобы не врали. Тогда idP будет у меня и он общается с Одноклассниками. Так? 3 стороны а не 2. Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 20:18 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Вы это сервис провайдер, Idp провайдер - уже есть и работает у вашего заказчика, все пользователи у него в базе. Если Вы про то, как же Вам узнать имя пользователя и др инфу если у вас их нет, то какие именно данные Вам передавать настраивается на стороне Idp провайдера, и отсылаются вам при успешном логине пользователя. пример зашел кто-то к вам на сайт, вы смотрите сессию там нет пользователя - формируете SAML AuthRequest, подписываете шифруете, и шлете клиенту Location redirect: idpprovider.net/saml/somthingelse?SAMLRequest=<base64 вашего AuthRequest>, далее клиент переходит на сайт Idp провайдера и если он там не залогинен то логинится, если уже залогинен - то Idp посылает клиенту Location redirect: yoursite.com/samlLoginResponse?SAMLResponse=<base64 SamlResponse на Вам SamlRequest> Вы его дешифруете, проверяете подпись, и получаете примерно: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. Как то так (естественно там можно и через POST и артифакт и т.д. это все уже детали) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 20:36 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
no56892Вы это сервис провайдер, Idp провайдер - уже есть и работает у вашего заказчика, все пользователи у него в базе. вот это применительно к аналогу выше с ГАИ как сказать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 21:30 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
mad_nazgul, у меня пров рекомендует шибболе. А твоё на томкат идёт? бесплатен? Уж очень хороши примеры у тебя). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 21:37 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Petro123mad_nazgul, у меня пров рекомендует шибболе. А твоё на томкат идёт? бесплатен? Уж очень хороши примеры у тебя). Точно не скажу. Но по документации вроде бы можно прикрутить к tomcat. Ну как минимум свободен. ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 07:22 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
половина работ сделана с этими либами commons-codec-commons-codec.jar commons-collections-commons-collections.jar commons-configuration-commons-configuration.jar commons-digester-commons-digester.jar commons-fileupload-commons-fileupload.jar commons-httpclient-commons-httpclient.jar commons-io-commons-io.jar commons-lang-commons-lang.jar commons-logging-commons-logging.jar esapi joda-time-joda-time.jar log4j-log4j.jar not-yet-commons-ssl-0.3.9.jar oiosaml.java opensaml-2.5.1.jar openws-1.4.2.jar org.apache.santuario-xmlsec.jar org.apache.velocity-velocity.jar org.bouncycastle-bcprov-jdk15.jar org.slf4j-slf4j-api.jar org.slf4j-slf4j-log4j12.jar xalan-serializer.jar xalan-xalan.jar xerces-xercesImpl.jar xml-resolver-xml-resolver.jar xmltooling-1.3.2.jar ответка от сервера заказчика idP получаем. копаем дальше)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2015, 17:21 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
да там транзитив все небойсь) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2015, 21:54 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
no56892, не понял твой сленг)). Что есть для перехвата и отладки? Что-то на лету перекодирует из base64? Или сниффер? Или обычный FireBug в фоксе? Он показывает сетевые get\post. Я так понял, что удобнее всего увидеть пересылаемый XML? Т.к. у меня окно idP не с логин формой, а с его ошибкой, то согласен что нужны логи. Они будут не скоро. Шибболе поднять? Почему на виртуалке? На одной машине томкат и он будет работать? Что поднять для простейшего idP? Хотя ты исп-л ADFS и сравнивать сложно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2015, 22:41 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
https://addons.mozilla.org/en-US/firefox/addon/saml-tracer/ завтра опробуем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2015, 22:45 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
Petro123 https://addons.mozilla.org/en-US/firefox/addon/saml-tracer/ завтра опробуем замечательная штука. Кажет чистый SAML запрос. .... Что можно сделать или оттрассировать по этой ошибке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2015, 12:56 |
|
||
|
Нужно SSO по протоколу SAML. Кто делал?
|
|||
|---|---|---|---|
|
#18+
как сделать чтобы idP возвращал не эту картинку, а POST с таким ответом - стектрейсом Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2015, 13:35 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39064652&tid=2124839]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
168ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 457ms |

| 0 / 0 |
