Author: cschneider
Date: Mon Feb 6 10:38:50 2012
New Revision: 1240967
URL: http://svn.apache.org/viewvc?rev=1240967&view=rev
Log:
CAMEL-4985 Adjusting the configuration to the new style like used in the
servlet tomcat example
Added:
camel/trunk/examples/camel-example-spring-security/src/main/resources/camel-context.xml
Removed:
camel/trunk/examples/camel-example-spring-security/src/main/resources/org/
camel/trunk/examples/camel-example-spring-security/src/main/webapp/WEB-INF/applicationContext-security.xml
Modified:
camel/trunk/examples/camel-example-spring-security/pom.xml
camel/trunk/examples/camel-example-spring-security/src/main/webapp/WEB-INF/web.xml
Modified: camel/trunk/examples/camel-example-spring-security/pom.xml
URL:
http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-spring-security/pom.xml?rev=1240967&r1=1240966&r2=1240967&view=diff
==============================================================================
--- camel/trunk/examples/camel-example-spring-security/pom.xml (original)
+++ camel/trunk/examples/camel-example-spring-security/pom.xml Mon Feb 6
10:38:50 2012
@@ -75,13 +75,6 @@
<build>
<plugins>
- <!-- Allows the routes to be run via 'mvn camel:run' -->
- <plugin>
- <groupId>org.apache.camel</groupId>
- <artifactId>camel-maven-plugin</artifactId>
- <version>${project.version}</version>
- </plugin>
-
<!-- so we can run mvn jetty:run -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
Added:
camel/trunk/examples/camel-example-spring-security/src/main/resources/camel-context.xml
URL:
http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-spring-security/src/main/resources/camel-context.xml?rev=1240967&view=auto
==============================================================================
---
camel/trunk/examples/camel-example-spring-security/src/main/resources/camel-context.xml
(added)
+++
camel/trunk/examples/camel-example-spring-security/src/main/resources/camel-context.xml
Mon Feb 6 10:38:50 2012
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<!-- START SNIPPET: example -->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:spring-security="http://www.springframework.org/schema/security"
+ xsi:schemaLocation="
+ http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd
+ http://camel.apache.org/schema/spring-security
http://camel.apache.org/schema/spring-security/camel-spring-security.xsd
+ http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security.xsd">
+
+ <spring-security:http realm="User Restrict Realm">
+ <spring-security:intercept-url pattern="/camel/**" access="ROLE_USER"/>
+ <spring-security:http-basic/>
+ <spring-security:remember-me/>
+ </spring-security:http>
+
+ <!-- set up the user configuration here -->
+ <spring-security:authentication-manager alias="authenticationManager">
+ <spring-security:authentication-provider
user-service-ref="userDetailsService"/>
+ </spring-security:authentication-manager>
+
+ <spring-security:user-service id="userDetailsService">
+ <spring-security:user name="jim" password="jimspassword"
authorities="ROLE_USER, ROLE_ADMIN"/>
+ <spring-security:user name="bob" password="bobspassword"
authorities="ROLE_USER"/>
+ </spring-security:user-service>
+
+ <bean id="accessDecisionManager"
class="org.springframework.security.access.vote.AffirmativeBased">
+ <property name="allowIfAllAbstainDecisions" value="true"/>
+ <property name="decisionVoters">
+ <list>
+ <bean class="org.springframework.security.access.vote.RoleVoter"/>
+ </list>
+ </property>
+ </bean>
+
+ <!-- The Policy for checking the authentication role of ADMIN -->
+ <authorizationPolicy id="admin" access="ROLE_ADMIN"
+ authenticationManager="authenticationManager"
+ accessDecisionManager="accessDecisionManager"
+ xmlns="http://camel.apache.org/schema/spring-security"/>
+
+ <!-- The Policy for checking the authentication role of USER -->
+ <authorizationPolicy id="user" access="ROLE_USER"
+ xmlns="http://camel.apache.org/schema/spring-security"/>
+
+ <camelContext id="myCamelContext"
xmlns="http://camel.apache.org/schema/spring">
+ <!-- Catch the authorization exception and set the Access Denied message
back -->
+ <onException>
+ <exception>org.apache.camel.CamelAuthorizationException</exception>
+ <handled>
+ <constant>true</constant>
+ </handled>
+ <transform>
+ <simple>Access Denied with the Policy of ${exception.policyId}
!</simple>
+ </transform>
+ </onException>
+
+ <route>
+ <from uri="servlet:///user"/>
+ <!-- wrap the route in the policy which enforces security check -->
+ <policy ref="user">
+ <transform>
+ <simple>Normal user can access this service</simple>
+ </transform>
+ </policy>
+ </route>
+
+ <route>
+ <from uri="servlet:///admin"/>
+ <!-- wrap the route in the policy which enforces security check -->
+ <policy ref="admin">
+ <transform>
+ <simple>Call the admin operation OK</simple>
+ </transform>
+ </policy>
+ </route>
+
+ </camelContext>
+
+</beans>
+ <!-- END SNIPPET: example -->
Modified:
camel/trunk/examples/camel-example-spring-security/src/main/webapp/WEB-INF/web.xml
URL:
http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-spring-security/src/main/webapp/WEB-INF/web.xml?rev=1240967&r1=1240966&r2=1240967&view=diff
==============================================================================
---
camel/trunk/examples/camel-example-spring-security/src/main/webapp/WEB-INF/web.xml
(original)
+++
camel/trunk/examples/camel-example-spring-security/src/main/webapp/WEB-INF/web.xml
Mon Feb 6 10:38:50 2012
@@ -25,7 +25,7 @@
<!-- location of spring xml files -->
<context-param>
<param-name>contextConfigLocation</param-name>
- <param-value>/WEB-INF/applicationContext-security.xml</param-value>
+ <param-value>classpath:camel-context.xml</param-value>
</context-param>
<!-- the listener that kick-starts Spring -->
@@ -46,15 +46,7 @@
<servlet>
<servlet-name>CamelServlet</servlet-name>
<servlet-class>org.apache.camel.component.servlet.CamelHttpTransportServlet</servlet-class>
- <init-param>
- <param-name>matchOnUriPrefix</param-name>
- <param-value>true</param-value>
- </init-param>
- <!-- set the camel context application file location here -->
- <init-param>
- <param-name>contextConfigLocation</param-name>
-
<param-value>/org/apache/camel/example/spring/security/camel-context.xml</param-value>
- </init-param>
+ <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>