[java-identity-provider] branch main updated: IDP-1652 - Support easier integration into configuration by plugins

Scott Cantor cantor.2 at osu.edu
Mon Nov 9 21:10:10 UTC 2020


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch main
in repository java-identity-provider.

View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=17a198a7ba7612bc6d750725e88d02f4e1ccc80e

The following commit(s) were added to refs/heads/main by this push:
       new  17a198a7b IDP-1652 - Support easier integration into configuration by plugins
17a198a7b is described below

commit 17a198a7ba7612bc6d750725e88d02f4e1ccc80e
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Mon Nov 9 16:10:07 2020 -0500

    IDP-1652 - Support easier integration into configuration by plugins
    
    https://issues.shibboleth.net/jira/browse/IDP-1652
    
    Add wildcard import to attribute filter and resolver services.
---
 .../idp/conf/attribute-filter-system.xml           | 18 ++++++++++++++++++
 .../idp/conf/attribute-resolver-system.xml         | 18 ++++++++++++++++++
 .../net/shibboleth/idp/conf/services-system.xml    | 22 ++++++++++++++++++++--
 3 files changed, 56 insertions(+), 2 deletions(-)

diff --git a/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/attribute-filter-system.xml b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/attribute-filter-system.xml
new file mode 100644
index 000000000..616653c7c
--- /dev/null
+++ b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/attribute-filter-system.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:context="http://www.springframework.org/schema/context"
+       xmlns:util="http://www.springframework.org/schema/util"
+       xmlns:p="http://www.springframework.org/schema/p"
+       xmlns:c="http://www.springframework.org/schema/c"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+                           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
+                           http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"
+                           
+       default-init-method="initialize"
+       default-destroy-method="destroy">
+
+    <!-- Wildcard import hook for plugins. -->
+    <import resource="classpath*:/META-INF/net/shibboleth/idp/service/attribute/filter/postconfig.xml" />
+    
+</beans>
diff --git a/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/attribute-resolver-system.xml b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/attribute-resolver-system.xml
new file mode 100644
index 000000000..880817870
--- /dev/null
+++ b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/attribute-resolver-system.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:context="http://www.springframework.org/schema/context"
+       xmlns:util="http://www.springframework.org/schema/util"
+       xmlns:p="http://www.springframework.org/schema/p"
+       xmlns:c="http://www.springframework.org/schema/c"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+                           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
+                           http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"
+                           
+       default-init-method="initialize"
+       default-destroy-method="destroy">
+
+    <!-- Wildcard import hook for plugins. -->
+    <import resource="classpath*:/META-INF/net/shibboleth/idp/service/attribute/resolver/postconfig.xml" />
+    
+</beans>
diff --git a/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/services-system.xml b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/services-system.xml
index ecbdabbe2..2c37febe0 100644
--- a/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/services-system.xml
+++ b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/services-system.xml
@@ -27,7 +27,7 @@
     
     <bean id="shibboleth.AttributeFilterService" class="net.shibboleth.ext.spring.service.ReloadableSpringService"
             depends-on="shibboleth.VelocityEngine"
-            p:serviceConfigurations-ref="#{'%{idp.service.attribute.filter.resources:shibboleth.AttributeFilterResources}'.trim()}"
+            p:serviceConfigurations-ref="ExtendedAttributeFilterResources"
             p:failFast="%{idp.service.attribute.filter.failFast:%{idp.service.failFast:false}}"
             p:reloadCheckDelay="%{idp.service.attribute.filter.checkInterval:PT0S}"
             p:beanPostProcessors-ref="shibboleth.IdentifiableBeanPostProcessor"
@@ -38,10 +38,19 @@
                 id="ShibbolethAttributeFilter"/>
         </constructor-arg>
     </bean>
+    <!-- Auto-append system config file to resource set. -->
+    <bean id ="ExtendedAttributeFilterResources" class="net.shibboleth.ext.spring.factory.CombiningListFactoryBean"
+          p:firstList="#{getObject('%{idp.service.attribute.filter.resources:shibboleth.AttributeFilterResources}'.trim())}" >
+        <property name="secondList">
+            <util:list >
+                <value>classpath:/net/shibboleth/idp/conf/attribute-filter-system.xml</value>
+            </util:list>
+        </property>
+    </bean>
 
     <bean id="shibboleth.AttributeResolverService" class="net.shibboleth.ext.spring.service.ReloadableSpringService" 
             depends-on="shibboleth.VelocityEngine"
-            p:serviceConfigurations-ref="#{'%{idp.service.attribute.resolver.resources:shibboleth.AttributeResolverResources}'.trim()}"
+            p:serviceConfigurations-ref="ExtendedAttributeResolverResources"
             p:failFast="%{idp.service.attribute.resolver.failFast:%{idp.service.failFast:false}}"
             p:reloadCheckDelay="%{idp.service.attribute.resolver.checkInterval:PT0S}"
             p:beanPostProcessors-ref="shibboleth.IdentifiableBeanPostProcessor"
@@ -53,6 +62,15 @@
                 id="ShibbolethAttributeResolver"/>
         </constructor-arg>
     </bean>
+    <!-- Auto-append system config file to resource set. -->
+    <bean id ="ExtendedAttributeResolverResources" class="net.shibboleth.ext.spring.factory.CombiningListFactoryBean"
+          p:firstList="#{getObject('%{idp.service.attribute.resolver.resources:shibboleth.AttributeResolverResources}'.trim())}" >
+        <property name="secondList">
+            <util:list >
+                <value>classpath:/net/shibboleth/idp/conf/attribute-resolver-system.xml</value>
+            </util:list>
+        </property>
+    </bean>
 
     <bean id="shibboleth.AttributeRegistryService" class="net.shibboleth.ext.spring.service.ReloadableSpringService" 
             p:serviceConfigurations-ref="ExtendedAttributeRegistryResources"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list