9c1cab3e6abacf6d6069fd8ea8a8c42bbbfc9e58
[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:bindings:SOAP-binding</value>
127             </key>
128             <bean id="shibboleth.SAML1HttpSoap11Decoder"
129                 class="org.opensaml.saml1.binding.decoding.HTTPSOAP11Decoder">
130                 <constructor-arg ref="shibboleth.ParserPool" />
131             </bean>
132         </entry>
133         <entry>
134             <key>
135                 <value>urn:mace:shibboleth:1.0:profiles:AuthnRequest</value>
136             </key>
137             <bean id="shibboleth.ShibbolethSSODecoder"
138                 class="edu.internet2.middleware.shibboleth.idp.profile.saml1.ShibbolethSSODecoder">
139             </bean>
140         </entry>
141     </util:map>
142
143     <util:map id="shibboleth.MessageEncoders">
144         <entry>
145             <key>
146                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST</value>
147             </key>
148             <bean id="shibboleth.SAML2HttpPostEncoder" class="org.opensaml.saml2.binding.encoding.HTTPPostEncoder">
149                 <constructor-arg ref="shibboleth.VelocityEngine" />
150                 <constructor-arg value="/templates/saml2-post-binding.vm" />
151             </bean>
152         </entry>
153         <entry>
154             <key>
155                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect</value>
156             </key>
157             <bean id="shibboleth.SAML2HttpRedirectEncoder"
158                 class="org.opensaml.saml2.binding.encoding.HTTPRedirectDeflateEncoder" />
159         </entry>
160         <entry>
161             <key>
162                 <value>urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact</value>
163             </key>
164             <bean id="shibboleth.SAML2HTTPArtifactEncoder"
165                 class="org.opensaml.saml2.binding.encoding.HTTPArtifactEncoder">
166                 <constructor-arg ref="shibboleth.ArtifactMap" />
167                 <constructor-arg ref="shibboleth.VelocityEngine" />
168                 <constructor-arg value="/templates/saml2-post-artifact-binding.vm" />
169             </bean>
170         </entry>
171         <entry>
172             <key>
173                 <value>urn:oasis:names:tc:SAML:2.0:bindings:SOAP</value>
174             </key>
175             <bean id="shibboleth.SAML2HttpSoap11Encoder" class="org.opensaml.saml2.binding.encoding.HTTPSOAP11Encoder" />
176         </entry>
177         <entry>
178             <key>
179                 <value>urn:oasis:names:tc:SAML:1.0:profiles:browser-post</value>
180             </key>
181             <bean id="shibboleth.SAML1HttpPostEncoder" class="org.opensaml.saml1.binding.encoding.HTTPPostEncoder">
182                 <constructor-arg ref="shibboleth.VelocityEngine" />
183                 <constructor-arg value="/templates/saml1-post-binding.vm" />
184             </bean>
185         </entry>
186         <entry>
187             <key>
188                 <value>urn:oasis:names:tc:SAML:1.0:profiles:artifact-01</value>
189             </key>
190             <bean id="shibboleth.SAML1HttpArtifactEncoder"
191                 class="org.opensaml.saml1.binding.encoding.HTTPArtifactEncoder">
192                 <constructor-arg ref="shibboleth.ArtifactMap" />
193             </bean>
194         </entry>
195         <entry>
196             <key>
197                 <value>urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding</value>
198             </key>
199             <bean id="shibboleth.SAML1HttpSoap11EncoderBuilder"
200                 class="org.opensaml.saml1.binding.encoding.HTTPSOAP11Encoder" />
201         </entry>
202     </util:map>
203
204     <bean id="shibboleth.SAML1AttributeAuthority"
205         class="edu.internet2.middleware.shibboleth.common.attribute.provider.ShibbolethSAML1AttributeAuthority">
206         <constructor-arg ref="shibboleth.AttributeResolver" />
207         <property name="filteringEngine" ref="shibboleth.AttributeFilterEngine" />
208     </bean>
209
210     <bean id="shibboleth.SAML2AttributeAuthority"
211         class="edu.internet2.middleware.shibboleth.common.attribute.provider.ShibbolethSAML2AttributeAuthority">
212         <constructor-arg ref="shibboleth.AttributeResolver" />
213         <property name="filteringEngine" ref="shibboleth.AttributeFilterEngine" />
214     </bean>
215
216     <bean id="shibboleth.ServletAttributeExporter"
217         class="org.springframework.web.context.support.ServletContextAttributeExporter">
218         <property name="attributes">
219             <map>
220                 <entry>
221                     <key>
222                         <value>handlerManager</value>
223                     </key>
224                     <ref bean="shibboleth.HandlerManager" />
225                 </entry>
226                 <entry>
227                     <key>
228                         <value>sessionManager</value>
229                     </key>
230                     <ref bean="shibboleth.SessionManager" />
231                 </entry>
232             </map>
233         </property>
234     </bean>
235
236 </beans>