Как я могу создать файл метаданных моего приложения Java Spring, чтобы установить соединение с поставщиком удостоверений, таким как Ping Federate?

Я работаю с единым входом (SSO) в течение некоторого времени. Я использую Ping Federate в качестве поставщика удостоверений (IdP) и образец приложения с пружинной загрузкой Java в качестве поставщика услуг (SP). Используемый протокол — SAML.

Я загрузил приложение spring из https://start.spring.io с зависимостями «Интернет» и «Безопасность» и с нетерпением жду установления соединения. При выполнении настройки необходимо загрузить файл метаданных приложения Spring, которое в данном случае является поставщиком услуг, в Ping Federate. Я хочу знать, как я могу создать файл метаданных для моего весеннего приложения?

Я сослался на некоторые документы, но ничего не мог с собой поделать. https://docs.spring.io/spring-security-saml/docs/1.0.0.RELEASE/reference/html/chapter-quick-start.html

Любая помощь будет очень кстати.

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Версия Java на основе версии загрузки
Версия Java на основе версии загрузки
Если вы зайдете на официальный сайт Spring Boot , там представлен start.spring.io , который упрощает создание проектов Spring Boot, как показано ниже.
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
0
0
1 906
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Чтобы ответить на ваш вопрос «как я могу создать файл метаданных для своего весеннего приложения?»,

(1) Я загрузил последнюю версию Ping Federate, т. е. pingfederate-9.2.2.zip.

(2) Я создал «Ping Federate в качестве поставщика удостоверений (IdP) и образец приложения с пружинной загрузкой Java в качестве поставщика услуг (SP)» в Ubuntu 16.04 со ссылкой на информацию, предоставленную в вашем посте.

(3) Затем я успешно проверил связь SAML между «Ping Federate в качестве поставщика удостоверений (IdP)» и «примером приложения Spring-boot Java в качестве поставщика услуг (SP)» со ссылкой на информацию, предоставленную в вашем посте.

Следующие ответы и ответ помогут вам войти в «мое весеннее приложение (в качестве поставщика услуг (SP))» через единый вход SAML, предоставляемый «Ping Federate (в качестве поставщика удостоверений (IdP))».

(1) Процитируйте ваш пост «Я скачал весеннее приложение от https://start.spring.io с зависимостями «Интернет» и «Безопасность» и с нетерпением жду установления соединения».

Ответ:

Я выполнил те же задачи, что и вы, выполнив команды ниже.

# Download demo.zip from https://start.spring.io with "Web" and "Security" dependencies 

$unzip demo.zip

$cd demo

$sudo mvn package

$sudo cp target/demo-0.0.1-SNAPSHOT.war /opt/tomcat/webapps/

$ls /opt/tomcat/webapps/demo-0.0.1-SNAPSHOT/WEB-INF/
classes  lib  lib-provided

Теперь мы обнаруживаем, что приложение spring (вы загрузили с зависимостями «Интернет» и «Безопасность») НЕ было установлено с SAML SP. Другими словами, приложение Spring НЕ является приложением с поддержкой SAML SP. Поэтому «Я НЕ могу создать файл метаданных для своего весеннего приложения».

(2) Процитируйте свой пост "Я ссылался на некоторые документы, но ничего не мог с собой поделать. https://docs.spring.io/spring-security-saml/docs/1.0.0.RELEASE/reference/html/chapter-quick-start.html"

Ответ:

Процитируйте важную информацию, предоставленную по приведенной выше ссылке "весна-безопасность-самл", в своем сообщении.

4.2.1 Downloading sample application 

Download the Spring SAML Extension either from sources or from one of the releases.

(I) Щелкните ссылку "из источников" в репозитории GitHub.

Затем щелкните папку «образцы» (например, весна-безопасность-saml/образцы/), чтобы прочитать README «Как запустить простой пример поставщика удостоверений (IDP) и поставщика услуг (SP)».

(II) Следуйте инструкциям, приведенным в README, я успешно подтвердил «вход в систему, инициированный SP, и вход, инициированный IDP».

Поскольку в примерах приложений имя хоста жестко закодировано как localhost,

без потери общности, изменив хост-файл DNS на вашем локальном компьютере в демонстрационных целях, мы предполагаем, что

имя хоста «Ping Federate как поставщика удостоверений (IdP)» — ping.example.com.

имя хоста «примера весенней загрузки Java в качестве поставщика услуг (SP)» — localhost.

(3) Процитируйте свой вопрос: «Необходимо загрузить файл метаданных приложения Spring, которое в данном случае является поставщиком услуг, в Ping Federate при выполнении настройки. Я хочу знать, как я могу создать файл метаданных для моего приложения Spring. ?"

Отвечать:

(I) Получите доступ к конечной точке файла метаданных SAML SP приложения spring, созданного с помощью «spring-security-saml/samples/»,

http://localhost:8080/sample-sp/saml/sp/metadata

для «создания/загрузки файла метаданных для моего весеннего приложения», т. е. saml-sp-metadata.xml

(II) Загрузите файл метаданных для моего весеннего приложения (например, saml-sp-metadata.xml) в «Ping Federate как поставщик удостоверений (IdP)»

(III) Загрузите файл метаданных IdP «Ping Federate в качестве поставщика удостоверений (IdP)» в «мое весеннее приложение в качестве поставщика услуг (SP)»

(a) Добавьте приведенный ниже код в конец файла конфигурации «моего весеннего приложения в качестве поставщика услуг (SP)»

$sudo vi  spring-security-saml/samples/boot/simple-service-provider/src/main/resources/application.yml 

        - alias: pingfederate
          metadata: https://ping.example.com:9031/pf/federation_metadata.ping?PartnerSpId=spring.security.saml.sp.id
          link-text: Ping Federate IDP
          authentication-request-binding: urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST

(b) Перезапустите мое весеннее приложение в качестве поставщика услуг (SP), следуя ПРОЧТИ МЕНЯ в разделе «Как запустить простой пример поставщика удостоверений (IDP) и поставщика услуг (SP)» в репозитории GitHub.

чтобы загрузить метаданные IdP «Ping Federate в качестве поставщика удостоверений (IdP)» в «мое весеннее приложение в качестве поставщика услуг (SP)».

(IV) Подтвердить систему единого входа SAML, предоставленную Ping Federate (в качестве поставщика удостоверений (IdP)) для моего весеннего приложения (в качестве поставщика услуг (SP))

(a) Доступ к конечной точке SSO, инициированной Ping Federate IdP, для «моего весеннего приложения в качестве поставщика услуг (SP)»

https://ping.example.com:9031/idp/startSSO.ping?PartnerSpId=spring.security.saml.sp.id

(b) Отправьте свои учетные данные имени пользователя/пароля (например, johndoe/password) локальной учетной записи пользователя Ping Federate во всплывающем диалоговом окне.

(c) Вы успешно перенаправлены и вошли в мое весеннее приложение в качестве поставщика услуг (SP).

Следующее сообщение будет отображаться на главном экране моего весеннего приложения в качестве поставщика услуг (SP).

Success                             User:johndoe 

You are authenticated! 

Другие вопросы по теме