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>