[CONF] Apache Camel Spring Security Example

2013-12-16 Thread Colm O hEigeartaigh (Confluence)














  


Colm O hEigeartaigh edited the page:
 


Spring Security Example   






Spring Security Example
 This example shows you how to leverage the Spring Security already provides authentication mechanism and authoriationPolicy which is provided in The camel-spring-security module provides authentication and authorization capabilities via Spring Security. This example shows you how to use this functionality to implement a role based authorization application.
This example consumes messages from a servlet endpoint which is secured by Spring Security with http basic authentication, there are two serviceservices:



 Code Block




 
 http://localhost:8080/camel/user is for the authenticated user whose role is ROLE_USER
 http://localhost:8080/camel/admin is for the authenticated user whose role is ROLE_ADMIN
 



You will need to compile this example first:



 Code Block




 
 cd $CAMEL_HOME/examples/camel-example-spring-security
  mvn clean install
 



To run the example, you need to start up the server by typing



 Code Block




 
 mvn jetty:run
 



To stop the server hit ctrl + c
...






 View Online   Like   View Changes  
 Stop 

[CONF] Apache Camel Spring Security Example

2013-05-15 Thread confluence







Spring Security Example
Page edited by Babak Vahdat


 Changes (1)
 




...
{code}  http://localhost:8080/camel/user is for the authenticated user whose role is ROLE_USER 
http://localhost:8080/camel/admimn is for the authenticated user whose role is ROLE_ADMIN 
{code}  
...


Full Content

Spring Security Example

This example shows you how to leverage the Spring Security already provides authentication mechanism and authoriationPolicy which is provided in camel-spring-security module to implement a role based authorization application. 

This example consumes messages from a servlet endpoint which is secured by Spring Security with http basic authentication, there are two service:


 "http://localhost:8080/camel/user" is for the authenticated user whose role is ROLE_USER
 "http://localhost:8080/camel/admin" is for the authenticated user whose role is ROLE_ADMIN



You will need to compile this example first:


  cd $CAMEL_HOME/examples/camel-example-spring-security
  mvn clean install



To run the example, you need to start up the server by typing


  mvn jetty:run


To stop the server hit ctrl + c

Then you can use the script in the client directory to send the request and check the response, or use browser to access upper service with the user/password ("jim/jimspassword" with the admin and user role  or "rob/robspassword" with user role).

Here is the camel route configuration:


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
  exceptionorg.apache.camel.CamelAuthorizationException/exception
  handled
constanttrue/constant
  /handled
  transform
simpleAccess 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
  simpleNormal 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
  simpleCall the admin operation OK/simple
/transform
  /policy
/route

  /camelContext

/beans



You can find how to configure the camel-servlet with http basic 

[CONF] Apache Camel Spring Security Example

2012-11-07 Thread confluence







Spring Security Example
Page edited by willem jiang


Comment:
updated the camel route configuration link


 Changes (1)
 




...
Here is the camel route configuration:  
{snippet:id=example|lang=xml|url=""> {snippet:id=example|lang=xml|url=""> 
 You can find how to configure the camel-servlet with http basic authentication by check the files in [WEB-INF|https://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-spring-security/src/main/webapp/WEB-INF]  


Full Content

Spring Security Example

This example shows you how to leverage the Spring Security already provides authentication mechanism and authoriationPolicy which is provided in camel-spring-security module to implement a role based authorization application. 

This example consumes messages from a servlet endpoint which is secured by Spring Security with http basic authentication, there are two service:


 "http://localhost:8080/camel/user" is for the authenticated user whose role is ROLE_USER
 "http://localhost:8080/camel/admim" is for the authenticated user whose role is ROLE_ADMIN



You will need to compile this example first:


  cd $CAMEL_HOME/examples/camel-example-spring-security
  mvn clean install



To run the example, you need to start up the server by typing


  mvn jetty:run


To stop the server hit ctrl + c

Then you can use the script in the client directory to send the request and check the response, or use browser to access upper service with the user/password ("jim/jimspassword" with the admin and user role  or "rob/robspassword" with user role).

Here is the camel route configuration:


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
  exceptionorg.apache.camel.CamelAuthorizationException/exception
  handled
constanttrue/constant
  /handled
  transform
simpleAccess 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
  simpleNormal 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"
   

[CONF] Apache Camel Spring Security Example

2010-04-15 Thread confluence







Spring Security Example
Page  added by willem jiang

 

 Spring Security Example

This example shows you how to leverage the Spring Security already provides authentication mechanism and authoriationPolicy which is provided in camel-spring-security module to implement a role based authorization application. 

This example consumes messages from a servlet endpoint which is secured by Spring Security with http basic authentication, there are two service:




You will need to compile this example first:




To run the example, you need to start up the server by typing



To stop the server hit ctrl + c

Then you can use the script in the client directory to send the request and check the response.

Here is the camel route configuration
Error formatting macro: snippet: java.lang.IndexOutOfBoundsException: Index: 20, Size: 20 

You can find how to configure the camel-servlet with http basic authentication by check the files in WEB-INF 


   
Change Notification Preferences
   
   View Online
  |
   Add Comment
   








[CONF] Apache Camel Spring Security Example

2010-04-15 Thread confluence







 Spring Security Example
 Page edited by willem jiang

 
  
 
 Spring Security Example

This example shows you how to leverage the Spring Security already provides authentication mechanism and authoriationPolicy which is provided in camel-spring-security module to implement a role based authorization application. 

This example consumes messages from a servlet endpoint which is secured by Spring Security with http basic authentication, there are two service:




You will need to compile this example first:




To run the example, you need to start up the server by typing



To stop the server hit ctrl + c

Then you can use the script in the client directory to send the request and check the response, or use browser to access upper service with the user/password ("jim/jimspassword" with the admin and user role  or "rob/robspassword" with user role).

Here is the camel route configuration:





You can find how to configure the camel-servlet with http basic authentication by check the files in WEB-INF 
 
 
   
Change Notification Preferences
   

   View Online
   |
   View Change
  |
   Add Comment