b4aabd3a721deb6d56b2169ca3df0826580dd663
[java-idp.git] / resources / conf / internal.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4     xmlns:util="http://www.springframework.org/schema/util"
5     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
6                            http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd">
7
8     <!-- Spring configuration file that boostraps OpenSAML -->
9     <bean id="shibboleth.OpensamlConfig" class="edu.internet2.middleware.shibboleth.common.config.OpensamlConfigBean"
10         lazy-init="false">
11         <constructor-arg>
12             <list>
13                 <bean id="shibMetadataExtensions" class="org.opensaml.util.resource.ClasspathResource">
14                     <constructor-arg value="/shibboleth-saml-ext-config.xml" />
15                 </bean>
16             </list>
17         </constructor-arg>
18     </bean>
19
20     <bean id="shibboleth.IdGenerator" class="org.opensaml.common.impl.SecureRandomIdentifierGenerator">
21         <constructor-arg value="SHA1PRNG" />
22     </bean>
23
24     <bean id="shibboleth.VelocityEngine" class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
25         <property name="velocityProperties">
26             <props>
27                 <prop key="resource.loader">classpath, string</prop>
28                 <prop key="classpath.resource.loader.class">
29                     org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
30                 </prop>
31                 <prop key="string.resource.loader.class">
32                     org.apache.velocity.runtime.resource.loader.StringResourceLoader
33                 </prop>
34             </props>
35         </property>
36     </bean>
37
38     <bean id="shibboleth.TemplateEngine"
39         class="edu.internet2.middleware.shibboleth.common.attribute.resolver.provider.dataConnector.TemplateEngine">
40         <constructor-arg ref="shibboleth.VelocityEngine" />
41     </bean>
42
43     <bean id="shibboleth.ParserPool" class="org.opensaml.xml.parse.BasicParserPool">
44         <property name="maxPoolSize" value="50" />
45         <property name="createBuildersAtPoolLimit" value="true" />
46         <property name="coalescing" value="true" />
47         <property name="ignoreComments" value="true" />
48         <property name="ignoreElementContentWhitespace" value="true" />
49         <property name="namespaceAware" value="true" />
50     </bean>
51
52     <bean id="shibboleth.TaskTimer" class="java.util.Timer" destroy-method="cancel">
53         <constructor-arg value="true" type="boolean" />
54     </bean>
55
56     <bean id="shibboleth.StorageService" class="org.opensaml.util.storage.MapBasedStorageService" />
57
58     <bean id="shibboleth.StorageServiceSweeper" class="org.opensaml.util.storage.ExpiringObjectStorageServiceSweeper">
59         <constructor-arg ref="shibboleth.TaskTimer" />
60         <constructor-arg ref="shibboleth.StorageService" />
61         <constructor-arg value="600000" type="long" />
62     </bean>
63
64     <bean id="shibboleth.SessionManager"
65         class="edu.internet2.middleware.shibboleth.idp.session.impl.SessionManagerImpl">
66         <constructor-arg ref="shibboleth.StorageService" />
67         <constructor-arg value="1800000" type="long" />
68     </bean>
69
70     <bean id="shibboleth.ArtifactMap" class="org.opensaml.common.binding.artifact.BasicSAMLArtifactMap">
71         <constructor-arg ref="shibboleth.StorageService" />
72         <constructor-arg type="long" value="300000" />
73     </bean>
74     
75     <bean id="shibboleth.ReplayCache" class="org.opensaml.util.storage.ReplayCache">
76         <constructor-arg ref="shibboleth.StorageService" />
77         <constructor-arg type="long" value="300000" />
78     </bean>
79
80     <util:map id="shibboleth.MessageDecoders">
81         <entry>
82             <key>
83                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST</value>
84             </key>
85             <bean id="shibboleth.SAML2HttpPostDecoder" class="org.opensaml.saml2.binding.decoding.HTTPPostDecoder">
86                 <constructor-arg ref="shibboleth.ParserPool" />
87             </bean>
88         </entry>
89         <entry>
90             <key>
91                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect</value>
92             </key>
93             <bean id="shibboleth.SAML2HttpRedirectDecoder"
94                 class="org.opensaml.saml2.binding.decoding.HTTPRedirectDeflateDecoder">
95                 <constructor-arg ref="shibboleth.ParserPool" />
96             </bean>
97         </entry>
98         <entry>
99             <key>
100                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact</value>
101             </key>
102             <bean id="shibboleth.SAML2HTTPArtifactDecoder"
103                 class="org.opensaml.saml2.binding.decoding.HTTPArtifactDecoder">
104                 <constructor-arg ref="shibboleth.ParserPool" />
105             </bean>
106         </entry>
107         <entry>
108             <key>
109                 <value>urn:oasis:names:tc:SAML:2.0:bindings:SOAP</value>
110             </key>
111             <bean id="shibboleth.SAML2HttpSoap11Decoder"
112                 class="org.opensaml.saml2.binding.decoding.HTTPSOAP11Decoder">
113                 <constructor-arg ref="shibboleth.ParserPool" />
114             </bean>
115         </entry>
116         <entry>
117             <key>
118                 <value>urn:oasis:names:tc:SAML:1.0:profiles:browser-post</value>
119             </key>
120             <bean id="shibboleth.SAML1HttpPostDecoder" class="org.opensaml.saml1.binding.decoding.HTTPPostDecoder">
121                 <constructor-arg ref="shibboleth.ParserPool" />
122             </bean>
123         </entry>
124         <entry>
125             <key>
126                 <value>urn:oasis:names:tc:SAML:1.0:profiles:artifact-01</value>
127             </key>
128             <bean id="shibboleth.SAML1HttpArtifactDecoder"
129                 class="org.opensaml.saml1.binding.decoding.HTTPArtifactDecoder">
130             </bean>
131         </entry>
132         <entry>
133             <key>
134                 <value>urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding</value>
135             </key>
136             <bean id="shibboleth.SAML1HttpSoap11Decoder"
137                 class="org.opensaml.saml1.binding.decoding.HTTPSOAP11Decoder">
138                 <constructor-arg ref="shibboleth.ParserPool" />
139             </bean>
140         </entry>
141         <entry>
142             <key>
143                 <value>urn:mace:shibboleth:1.0:profiles:AuthnRequest</value>
144             </key>
145             <bean id="shibboleth.ShibbolethSSODecoder"
146                 class="edu.internet2.middleware.shibboleth.idp.profile.saml1.ShibbolethSSODecoder">
147             </bean>
148         </entry>
149     </util:map>
150
151     <util:map id="shibboleth.MessageEncoders">
152         <entry>
153             <key>
154                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST</value>
155             </key>
156             <bean id="shibboleth.SAML2HttpPostEncoder" class="org.opensaml.saml2.binding.encoding.HTTPPostEncoder">
157                 <constructor-arg ref="shibboleth.VelocityEngine" />
158                 <constructor-arg value="/templates/saml2-post-binding.vm" />
159             </bean>
160         </entry>
161         <entry>
162             <key>
163                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect</value>
164             </key>
165             <bean id="shibboleth.SAML2HttpRedirectEncoder"
166                 class="org.opensaml.saml2.binding.encoding.HTTPRedirectDeflateEncoder" />
167         </entry>
168         <entry>
169             <key>
170                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact</value>
171             </key>
172             <bean id="shibboleth.SAML2HTTPArtifactEncoder"
173                 class="org.opensaml.saml2.binding.encoding.HTTPArtifactEncoder">
174                 <constructor-arg ref="shibboleth.ArtifactMap" />
175                 <constructor-arg ref="shibboleth.VelocityEngine" />
176                 <constructor-arg value="/templates/saml2-post-artifact-binding.vm" />
177             </bean>
178         </entry>
179         <entry>
180             <key>
181                 <value>urn:oasis:names:tc:SAML:2.0:bindings:SOAP</value>
182             </key>
183             <bean id="shibboleth.SAML2HttpSoap11Encoder" class="org.opensaml.saml2.binding.encoding.HTTPSOAP11Encoder" />
184         </entry>
185         <entry>
186             <key>
187                 <value>urn:oasis:names:tc:SAML:1.0:profiles:browser-post</value>
188             </key>
189             <bean id="shibboleth.SAML1HttpPostEncoder" class="org.opensaml.saml1.binding.encoding.HTTPPostEncoder">
190                 <constructor-arg ref="shibboleth.VelocityEngine" />
191                 <constructor-arg value="/templates/saml1-post-binding.vm" />
192             </bean>
193         </entry>
194         <entry>
195             <key>
196                 <value>urn:oasis:names:tc:SAML:1.0:profiles:artifact-01</value>
197             </key>
198             <bean id="shibboleth.SAML1HttpArtifactEncoder"
199                 class="org.opensaml.saml1.binding.encoding.HTTPArtifactEncoder">
200                 <constructor-arg ref="shibboleth.ArtifactMap" />
201             </bean>
202         </entry>
203         <entry>
204             <key>
205                 <value>urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding</value>
206             </key>
207             <bean id="shibboleth.SAML1HttpSoap11EncoderBuilder"
208                 class="org.opensaml.saml1.binding.encoding.HTTPSOAP11Encoder" />
209         </entry>
210     </util:map>
211
212     <bean id="shibboleth.SAML1AttributeAuthority"
213         class="edu.internet2.middleware.shibboleth.common.attribute.provider.ShibbolethSAML1AttributeAuthority">
214         <constructor-arg ref="shibboleth.AttributeResolver" />
215         <property name="filteringEngine" ref="shibboleth.AttributeFilterEngine" />
216     </bean>
217
218     <bean id="shibboleth.SAML2AttributeAuthority"
219         class="edu.internet2.middleware.shibboleth.common.attribute.provider.ShibbolethSAML2AttributeAuthority">
220         <constructor-arg ref="shibboleth.AttributeResolver" />
221         <property name="filteringEngine" ref="shibboleth.AttributeFilterEngine" />
222     </bean>
223
224     <bean id="shibboleth.ServletAttributeExporter"
225         class="org.springframework.web.context.support.ServletContextAttributeExporter">
226         <property name="attributes">
227             <map>
228                 <entry>
229                     <key>
230                         <value>handlerManager</value>
231                     </key>
232                     <ref bean="shibboleth.HandlerManager" />
233                 </entry>
234                 <entry>
235                     <key>
236                         <value>sessionManager</value>
237                     </key>
238                     <ref bean="shibboleth.SessionManager" />
239                 </entry>
240             </map>
241         </property>
242     </bean>
243
244 </beans>