OneLogin для Java — проблемы для начинающих

Несколько дней назад я скачал java-saml-2.0.1 в надежде использовать его для реализации SSO через SAML в моем (SP) приложении. На самом деле я не разработчик Java (я C #), но тем не менее работаю над этим. Также очень мало знаком с SSO/SAML, так что прошу простить за глупые вопросы.

1) Как добавить зависимость в мой проект? У меня есть это в моем файле POM.xml. Этого достаточно ?

<dependency>
    <groupId>com.onelogin</groupId>
    <artifactId>java-saml</artifactId>
    <version>2.0.0</version>
</dependency>

2) Я читаю эту статью: Закодируйте свое Java-приложение для обеспечения единого входа через OneLogin. Предполагая, что это относится к java-saml-2.0.1, почему он говорит, что мне нужны файлы в /com? Должен ли я копировать эти файлы в свой проект? Разве я не ссылаюсь на весь пакет?

3) Глядя на dologin.jsp, что делает этот код?

Auth auth = new Auth(request, response);
if (request.getParameter("attrs") == null) {
    auth.login();
} else {
    String x = request.getPathInfo();
    auth.login("/java-saml-tookit-jspsample/attrs.jsp");
}

Он проверяет request.getParameter("attrs"), но затем не использует его. Он устанавливает строку x, но затем не использует ее. Почему?

4) Могу ли я при настройке AccountSettings пропустить сертификат и сделать это позже или он нужен всегда?

5) По сути, мы реализуем это, и первый шаг для моего приложения SP для реализации Шага 2: (SP--> UA) перенаправление на службу единого входа IdP. Итак, когда пользователь пытается получить доступ к моему SP, мне нужно создать токен SAML (?) и отправить его IdP. Как я могу это сделать? Здесь я застреваю.

Я посмотрел на образец, но я не знаю, как настроить параметры, поэтому он не работает.

Кстати: IdP — это внутреннее приложение, которым управляет другое подразделение.


person AnalogKid17    schedule 29.03.2017    source источник
comment
Посетите справочный центр и прочитайте Как Спросить, чтобы узнать, как эффективно использовать этот сайт. ОДИН вопрос на пост, ТАК это не дискуссионный сайт.   -  person Jim Garrison    schedule 30.03.2017
comment
Джим, я знаю, что нарушаю правила, поскольку я упомянул, что нуждался в БОЛЬШОЙ помощи, и я надеялся получить все ответы (наиболее связанные) одним выстрелом. К счастью, Сиксто был достаточно любезен, чтобы почтить мой пост. Я буду задавать по одному вопросу в каждом посте в будущем.   -  person AnalogKid17    schedule 30.03.2017


Ответы (1)


1) Как описано здесь: https://mvnrepository.com/artifact/com.onelogin/java-saml/2.0.1

Вам нужно добавить: com.onelogin java-saml 2.0.1

2) Эта документация устарела и относится к версии 1.X java-saml.

В репозитории github java-saml https://github.com/onelogin/java-saml Вы найдете нужную документацию.

3) Этот код инициирует процесс входа в систему (отправьте AuthNrequest поставщику удостоверений).

Инициирует объект Auth, а последующий вызов метода входа выполняет перенаправление.

Параметр attrs — это параметр получения, который можно отправить в представление индекса, чтобы установить пользовательское состояние RelayState для страницы attrs.jsp.

4) Объект AccountSettings относится к коду 1.X.

Но вам нужно установить x509cert в свойстве настроек перед развертыванием службы.

5) В потоке SSO, инициированном SP, SP отправляет IdP AuthNRequest, а IdP отвечает SAMLResponse. (Ранее IdP и SP должны обмениваться своими метаданными, чтобы установить круг доверия.

person smartin    schedule 30.03.2017