Итак, вот сценарий.Расширение SAML Spring Security с OPENAM
У меня есть мое приложение < ==> IDP-прокси < ==> IDP. Если оба прокси-сервера IDP и IDP являются экземплярами openam. Идея заключается в том, что мы можем добавить наших дополнительных ВПЛ (от других клиентов), поэтому мы хотим, чтобы прокси-сервер защищал сложность.
Так вот IDP Prxy является: http://idpproxydev.devs1.int:8080/openam
URL МВУ: http://idpdev.devs1.int:80/openam
Мой веб-приложение: http://ocr-jq0zt91.devs1.int:9081/LOS
Я начал использовать http://static.springsource.org/spring-security/site/extensions/saml/index.html для интеграции и теперь я вижу, что SAML: запрос wassent из моего веб-приложения.
Проблема, которую я имею сейчас, - это когда я проверил свою настройку с помощью Fedlet (клиент, который сгенерирован с использованием Openam на прокси-сервере IDP), запрос отправляется прокси, а затем перенаправляется в IDP, поскольку запрос SAML, созданный Fedlet, имеет тот дополнительная информация, которая этот фрагмент в запросе SAML
<samlp:Scoping xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" ProxyCount="1" >
<samlp:IDPList xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol">
<samlp:IDPEntry xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
ProviderID="http://idpdev.devs1.int:80/openam" />
</samlp:IDPList>
</samlp:Scoping>
Таким образом, единственное различие, которое я вижу, это дополнительная нагрузка платы в FEDLET генерируется запрос SAML.
Итак, видя это выше фрагмент кода в запросе SAML, МВА прокси знает, что конечный пункт назначение не является сам по себе (http://idpproxydev.devs1.int:8080/openam), но другому объекту, который в данном случае является http://idpdev.devs1.int:80/openam
Fedlet имеет дополнительный файл свойств для расширенных метаданных (sp-extended.xml), где мы можем добавить эти дополнительные вещи.
<Attribute name="enableIDPProxy">
<Value>true</Value>
</Attribute>
<Attribute name="idpProxyList">
<Value> http://idpdev.devs1.int:80/openam</Value> (the attribute name is little confusing as this is the IDP)
</Attribute>
<Attribute name="idpProxyCount">
<Value>1</Value>
</Attribute>
Однако весной библиотека безопасности SAML я не вижу какой-либо способ, где я могу добавить эти дополнительные атрибуты, так что запрос SAML может включать в себя эту информацию. Есть ли способ передать дополнительные атрибуты, перечисленные выше?
так, что пружина saml extension может читать, когда мое веб-приложение отправляет запрос?