awips2/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-webservices.xml
Benjamin Phillippe cebfbebea6 Omaha #3350 Added user/role authentication. Added XACML authorization
Change-Id: Id307fdc04ba7a74c9e81650c7b4ba272405cf6df

Former-commit-id: 81d0249971d4004067b6aef672e00417ddb83b36
2014-07-16 10:49:24 -05:00

133 lines
5.6 KiB
XML

<beans xmlns="http://www.springframework.org/schema/beans"
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-3.1.xsd">
<bean id="credentialCache"
class="com.raytheon.uf.edex.registry.ebxml.web.security.CredentialCache"
factory-method="getInstance">
<property name="restServices" ref="registryRestClient" />
<property name="personDao" ref="personDao" />
<property name="txTemplate" ref="metadataTxTemplate" />
<property name="securityConfig" ref="securityConfiguration"/>
<property name="encryption" ref="encryption"/>
</bean>
<bean id="registryRestClient"
class="com.raytheon.uf.edex.registry.ebxml.services.RegistryRESTServices">
<property name="serviceConfig" ref="RegistryServiceConfig" />
<property name="securityConfig" ref="securityConfiguration" />
</bean>
<bean id="registryWebServiceClient"
class="com.raytheon.uf.edex.registry.ebxml.services.soap.RegistrySOAPServices">
<property name="securityInterceptor" ref="securityOutInterceptor" />
<property name="serviceConfig" ref="RegistryServiceConfig" />
<property name="securityConfig" ref="securityConfiguration" />
</bean>
<bean id="RegistryServiceConfig"
class="com.raytheon.uf.common.registry.services.RegistryServiceConfiguration" />
<bean id="webServiceInInterceptor"
class="com.raytheon.uf.edex.registry.ebxml.services.RegistryServiceInInterceptor" />
<bean id="xacmlInterceptor" class="com.raytheon.uf.edex.registry.acp.xacml.XACMLInterceptor">
<constructor-arg ref="XACMLPolicyAdministrator"/>
<constructor-arg ref="XACMLPolicyDecisionPoint"/>
</bean>
<bean id="authenticationInterceptor" class="org.apache.cxf.interceptor.security.JAASLoginInterceptor">
<property name="contextName" value="RegistryRealm"/>
</bean>
<bean id="securityOutInterceptor" class="org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor">
<constructor-arg>
<map>
<entry key="mustUnderstand" value="false" />
<entry key="enableNonceCache" value="false" />
<entry key="enableTimestampCache" value="false" />
<entry key="enableSamlOneTimeUseCache" value="false" />
<entry key="action" value="UsernameToken Signature" />
<entry key="user" value="${edex.security.keystore.alias}" />
<entry key="signaturePropRefId" value="propRef"/>
<entry key="propRef" value-ref="encryptedPropertyLoader"/>
<entry key="passwordCallbackClass"
value="com.raytheon.uf.edex.registry.ebxml.acp.PasswordCallback" />
<entry key="signatureParts"
value="{Element}{http://schemas.xmlsoap.org/soap/envelope/}Body" />
<entry key="signatureAlgorithm" value="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
</map>
</constructor-arg>
</bean>
<!-- QUERY -->
<bean id="queryServiceImpl"
class="com.raytheon.uf.edex.registry.ebxml.services.query.QueryManagerImpl">
<property name="federationDao" ref="federationDao" />
<property name="referenceResolver" ref="objectReferenceResolver" />
<property name="queryDefinitionDao" ref="queryDefinitionDao" />
<property name="classificationNodeDao" ref="classificationNodeDao" />
<property name="registryObjectDao" ref="registryObjectDao" />
<property name="sessionFactory" ref="metadataSessionFactory" />
<property name="registrySoapClient" ref="registryWebServiceClient" />
</bean>
<!-- NOTIFICATION LISTENER -->
<bean id="notificationServiceImpl"
class="com.raytheon.uf.edex.registry.ebxml.services.notification.NotificationListenerImpl">
<property name="lcm" ref="lcmServiceImpl" />
<property name="registryObjectDao" ref="registryObjectDao" />
<property name="registryDao" ref="registryDao" />
<property name="registrySoapClient" ref="registryWebServiceClient" />
</bean>
<!-- LIFE CYCLE MANAGER -->
<bean id="lcmServiceImpl"
class="com.raytheon.uf.edex.registry.ebxml.services.lifecycle.LifecycleManagerImpl">
<property name="queryManager" ref="queryServiceImpl" />
<property name="validator" ref="validatorServiceImpl" />
<property name="registryObjectDao" ref="registryObjectDao" />
<property name="cataloger" ref="catalogerServiceImpl" />
<property name="referenceResolver" ref="objectReferenceResolver" />
<property name="xpathProcessor" ref="registryXpathProcessor" />
</bean>
<!-- VALIDATOR -->
<bean id="validatorServiceImpl"
class="com.raytheon.uf.edex.registry.ebxml.services.validator.ValidatorImpl">
<property name="queryManager" ref="queryServiceImpl" />
<property name="registryObjectDao" ref="registryObjectDao" />
<property name="registryObjectTypeValidator" ref="registryObjectTypeValidator" />
</bean>
<!-- CATALOGER -->
<bean id="catalogerServiceImpl"
class="com.raytheon.uf.edex.registry.ebxml.services.cataloger.CatalogerImpl">
<property name="registryObjectDao" ref="registryObjectDao" />
</bean>
<!-- REST Service Beans -->
<bean id="registryObjectsRestService"
class="com.raytheon.uf.edex.registry.ebxml.services.rest.RegistryObjectsRestService">
<property name="registryObjectDao" ref="registryObjectDao" />
</bean>
<bean id="repositoryObjectsRestService"
class="com.raytheon.uf.edex.registry.ebxml.services.rest.RepositoryItemsRestService">
<property name="extrinsicObjectDao" ref="extrinsicObjectDao" />
</bean>
<bean id="queryProtocolRestService"
class="com.raytheon.uf.edex.registry.ebxml.services.rest.QueryProtocolRestService">
<property name="queryManager" ref="queryServiceImpl" />
<property name="queryDefinitionDao" ref="queryDefinitionDao" />
</bean>
<bean id="AuditableEventService"
class="com.raytheon.uf.edex.registry.ebxml.services.AuditableEventService">
<constructor-arg ref="AuditableEventTypeDao" />
</bean>
</beans>