]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.security.dao.cli/META-INF/spring/security-cli.xml
[maven-release-plugin] prepare release argeo-commons-2.1.12
[lgpl/argeo-commons.git] / org.argeo.security.dao.cli / META-INF / spring / security-cli.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <beans xmlns="http://www.springframework.org/schema/beans"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
5
6 <bean
7 class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
8 <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
9 <property name="locations">
10 <value>osgibundle:security.properties</value>
11 </property>
12 </bean>
13
14 <bean id="argeoDataModel" class="org.argeo.jackrabbit.JackrabbitWrapper"
15 init-method="init" destroy-method="destroy">
16 <description><![CDATA[Make sure that Argeo base data model is registered]]></description>
17 <property name="cndFiles">
18 <list>
19 <value>/org/argeo/jcr/argeo.cnd</value>
20 </list>
21 </property>
22 <property name="repository" ref="nodeRepository" />
23 <property name="bundleContext" ref="bundleContext" />
24 </bean>
25
26 <bean id="authenticationManager"
27 class="org.springframework.security.authentication.ProviderManager">
28 <property name="providers">
29 <list>
30 <ref bean="authByAdapterProvider" />
31 <ref bean="osJcrAuthenticationProvider" />
32 </list>
33 </property>
34 </bean>
35
36 <!-- Authentication providers -->
37 <bean id="osJcrAuthenticationProvider" class="org.argeo.security.jcr.OsJcrAuthenticationProvider"
38 init-method="init" destroy-method="destroy" depends-on="argeoDataModel">
39 <property name="repository" ref="nodeRepository" />
40 <property name="jcrSecurityModel" ref="jcrSecurityModel" />
41 </bean>
42
43 <bean name="jcrSecurityModel" class="org.argeo.security.jackrabbit.JackrabbitSecurityModel" />
44
45 <bean id="authByAdapterProvider" class="org.argeo.security.core.InternalAuthenticationProvider">
46 <description><![CDATA[System authentication]]></description>
47 <property name="key" value="${argeo.security.systemKey}" />
48 </bean>
49
50 <!-- Internal authentication, used by the general authentication process
51 himself, in order to prevent the following dependency cycle: Repository.login()
52 <= AuthenticationManager <= osJcrAuthenticationProvider <= Repository.login()
53 in init() -->
54 <bean id="internalAuthenticationManager"
55 class="org.springframework.security.authentication.ProviderManager">
56 <property name="providers">
57 <list>
58 <ref bean="authByAdapterProvider" />
59 </list>
60 </property>
61 </bean>
62
63 <bean
64 class="org.argeo.security.core.AuthenticatedApplicationContextInitialization">
65 <description><![CDATA[Executes initialization with a system authentication]]></description>
66 <property name="authenticationManager" ref="internalAuthenticationManager" />
67 </bean>
68
69 <!-- Dummy user manager -->
70 <bean id="userDetailsManager" class="org.argeo.security.jcr.OsJcrUserAdminService"
71 init-method="init" destroy-method="destroy">
72 <property name="repository" ref="nodeRepository" />
73 </bean>
74
75 <!-- Default callback handler and keyring -->
76 <bean id="defaultCallbackHandler" class="org.argeo.security.core.ConsoleCallbackHandler" />
77
78 <bean id="nodeSession" class="org.argeo.jcr.spring.ThreadBoundSession">
79 <property name="repository" ref="nodeRepository" />
80 </bean>
81
82 <bean id="keyring" class="org.argeo.security.jcr.JcrKeyring">
83 <property name="session" ref="nodeSession" />
84 <property name="defaultCallbackHandler" ref="defaultCallbackHandler" />
85 <property name="secreteKeyLength" value="${argeo.keyring.secreteKeyLength}" />
86 </bean>
87 </beans>