对于集成项目,我计划使用Apache Camel
。
由于Apache Karaf似乎是Camel最初打算使用的平台,所以我选择了这种方式。
我正在将Eclipse
与JBoss Tools
插件一起使用来创建蓝图XML
文件。应用服务器为Karaf 4.1.7
,使用的骆驼版本为2.21.5
,spring 4.3.18
,spring security 4.2.4
。
基于example from Camel in Action(2018年),我试图将以下代码添加到我的blueprint.xml
文件中,以便通过Spring Security设置身份验证和授权。我还向POM.xml
文件中添加了camel-spring-security。
我的目标是使用JAAS
登录模块,以便Karaf可以处理LDAP
配置。
<bean
class="org.springframework.security.access.vote.AffirmativeBased" id="accessDecisionManager">
<argument>
<list>
<bean class="org.springframework.security.access.vote.RoleVoter"/>
</list>
</argument>
</bean>
<bean
class="org.springframework.security.provisioning.InMemoryUserDetailsManager" id="userDetailsService">
<argument>
<list>
<bean class="org.springframework.security.core.userdetails.User">
<argument index="0" value="jon"/>
<argument index="1" value="secret"/>
<argument index="2">
<list>
<bean class="org.springframework.security.core.authority.SimpleGrantedAuthority">
<argument value="ROLE_USER"/>
</bean>
</list>
</argument>
</bean>
</list>
</argument>
</bean>
<bean
class="org.springframework.security.authentication.ProviderManager" id="authenticationManager">
<argument>
<list>
<bean class="org.springframework.security.authentication.dao.DaoAuthenticationProvider">
<property name="userDetailsService" ref="userDetailsService"/>
</bean>
</list>
</argument>
</bean>
<authorizationPolicy access="ROLE_USER"
accessDecisionManager="accessDecisionManager"
authenticationManager="authenticationManager" id="user" xmlns="http://camel.apache.org/schema/spring-security"/>
我的问题:
将上述代码添加到blueprint.xml文件中后,我尝试确保安全的世界REST DSL服务停止工作。而不是“ hello”,我现在得到以下消息:“ HTTP错误:404访问/ rest2 / say / hello时出错。原因:未找到... Jetty 9.3.24 ...”
有人可以帮我调试这个吗?我是新手,我还找不到任何有关如何使用Spring Security的蓝图示例。