Как настроить метаданные IDP и метаданные SP в примере SAML Spring Security?

Я хочу иметь дело с Spring Security SAML. Для этого я начинаю изучать Spring Security SAML. Сначала я создаю учетную запись на SSOCircle. Затем я настроил метаданные IDP и генерацию метаданных SP (4.2.2 и 4.2.3). На entityId я установил:

 <bean id="metadataGeneratorFilter" class="org.springframework.security.saml.metadata.MetadataGeneratorFilter">
    <constructor-arg>
        <bean class="org.springframework.security.saml.metadata.MetadataGenerator">
            <property name="entityId" value="http://idp.ssocircle.com"/>
        </bean>
    </constructor-arg>
 </bean>

Когда я запускаю приложение, у меня есть:

Error occurred:
Reason: Unable to do Single Sign On or Federation.

or

Error occurred:
Reason: Unable to get AuthnRequest.

Как настроить Spring Security SAML?


person somebody    schedule 09.02.2015    source источник
comment
Привет, я не знаю как ты. но одна вещь, которую нужно уточнить, касается интеграции SAML с безопасностью Spring. Вы сделали интеграцию SAML? потому что я придерживался этого с 5 дней. У меня есть два веб-портала, и я хочу интегрировать их в SAML, то есть в систему единого входа. Я использую Spring MVC. Я хочу получить SAML с весенней безопасностью. не могли бы вы рассказать мне об этом. заранее спасибо   -  person    schedule 12.02.2015
comment
@Mehbub, К сожалению, у меня нет хороших новостей. Я тоже не понял Spring Security SAML.   -  person somebody    schedule 12.02.2015
comment
ops :( Если у вас есть информация, пожалуйста, дайте мне знать   -  person    schedule 12.02.2015


Ответы (2)


Следуйте инструкциям в QuickStart глава. Обратите внимание на некоторые отличия:

  1. Зарегистрируйтесь на http://www.ssocircle.com/. Вам необходимо подтвердить свой адрес электронной почты.
  2. Раздел metadataGeneratorFilter в файле sample / src / main / webapp / WEB-INF / securityContext.xml должен выглядеть следующим образом (Примечание: свойство signMetadata закомментировано):

    <bean id="metadataGeneratorFilter" class="org.springframework.security.saml.metadata.MetadataGeneratorFilter">
    <constructor-arg>
        <bean class="org.springframework.security.saml.metadata.MetadataGenerator">
          <property name="entityId" value="urn:test:YourName:YourCity"/>
      <!--<property name="signMetadata" value="false"/>-->
        </bean>
    </constructor-arg>
    

  3. Соберите и запустите веб-сервер локально. Затем загрузите метаданные по адресу http://localhost:8080/spring-security-saml2-sample/saml/metadata. Скопируйте содержимое в буфер обмена.
  4. Обновите метаданные вашего нового профиля на странице https://idp.ssocircle.com/sso/hos/ManageSPMetadata.jsp < / а>.
  5. Введите полное доменное имя службы как «urn: test: YourName: YourCity». Вам необходимо ввести уникальные значения для вашего имени и вашего города. Вставьте метаданные сверху.
  6. To Test:
    1. Logout of SSO Circle Service.
    2. Перейдите к http://localhost:8080/spring-security-saml2-sample.
    3. Вы должны быть перенаправлены на страницу входа в систему SSO Circle.
    4. Войдите, используя свои учетные данные SSO Circle.
    5. Вы должны быть перенаправлены на страницу местного поставщика услуг и пройти аутентификацию.
person RonanOD    schedule 16.03.2015
comment
Спасибо дружище. Я понятия не имею, что я только что сделал, но, по крайней мере, похоже, что это работает, что является прогрессом по сравнению с другими решениями SAML. - person Martin Vysny; 11.01.2017
comment
Не понимаю, чем это заменить? urn: test: YourName: YourCity - person Jose Martinez; 23.03.2018

Фильтр генератора метаданных генерирует метаданные для вашего приложения (поставщика услуг). Предоставляемый вами идентификатор объекта (http://idp.ssocircle.com) уже используется SSO Circle. , вы должны создать уникальное значение, которое описывает ваше приложение, например урна: тест: хельсинки: myapp

Как сказано в руководстве:

не забудьте заменить значение entityId строкой, уникальной в рамках службы SSO Circle (например, urn: test: yourname: yourcity)

person Vladimír Schäfer    schedule 09.02.2015
comment
Ok. Я меняю entityId на, например, urn:test:helsinki:myapp. Но теперь, когда я запускаю приложение, у меня появляется ошибка Reason: The SAML Request is invalid.. Может быть, это entityId я должен вставить что-нибудь в поле на ssocircle.com/en? - person somebody; 10.02.2015
comment
Вы экспортировали метаданные своего приложения в SSO Circle после изменения entityID? Пожалуйста, следуйте инструкциям в руководстве шаг за шагом. - person Vladimír Schäfer; 10.02.2015
comment
Я выполнил следующие шаги: 1. изменить metadata bean 2. изменить metadataGeneratorFilter и установить entytiId как urn:test:helsinki:myapp 3. запустить приложение. Но каждый раз у меня появляется ошибка: Reason: The SAML Request is invalid.. По этой причине я не могу получить информацию о метаданных. - person somebody; 10.02.2015
comment
Итак, вы получаете ошибку при развертывании? Или при открытии URL приложения? Или при нажатии на ссылку входа? Прикрепите XML-файл конфигурации Spring. - person Vladimír Schäfer; 10.02.2015
comment
@ VladírSchäfer, я прочитал документацию об изменениях в метаданных и bean-компонентах metadataGeneratorFilter, однако смог собрать образец saml-spring, развернуть его на Tomcat 8, и он работал прямо из коробки без каких-либо изменений конфигурации с моей стороны. Я, конечно, создал учетную запись на ssocircle.com, но в остальном она работала. Изменилось ли примерное приложение, чтобы разрешить это, и все ли документы синхронизированы с текущей версией образца приложения? Благодарность - person Jim Kennedy; 02.11.2016
comment
@ VladírSchäfer, не могли бы вы помочь мне в решении этой проблемы - person Med; 14.07.2017