是否可以在Mule Flow中添加安全URL,如Spring Security?

时间:2015-08-12 12:42:41

标签: java spring-security mule mule-studio

例如,在Spring中我使用以下代码:

<http pattern="/users(?!\/emails).*" request-matcher="regex" create-session="stateless" entry-point-ref="authenticationEntryPoint" use-expressions="true"
    xmlns="http://www.springframework.org/schema/security">

    <anonymous enabled="false" />

    <intercept-url method="GET" pattern="/user(?:([^/](?s).*)?)" />

因此,在Mule上我想在Flow的开头或(如果可能的话)添加安全性,以配置&lt; intercept-url&gt;标签

如果可能,我可以在Community Edition上执行此操作吗?

1 个答案:

答案 0 :(得分:2)

以分数回答你的问题: -

  1. 是的, Mule社区版可以使用安全性添加安全性,因为它支持基本身份验证
    对于您的上述要求,您需要在Mule中实施 Spring security 可以使用 Spring安全性配置Mule,以使用用户名密码提供基本身份验证。

  2. 每当您点击该服务时,它都会要求该服务的用户名密码
    因此,这回答了您在流程的开头实施安全性的问题。

  3. 一个简单的例子是: -

    <spring:beans>
        <ss:authentication-manager alias="authenticationManager">
          <ss:authentication-provider>
            <ss:user-service id="userService">
              <ss:user name="john" password="abc123" authorities="ROLE_ADMIN" />
              <ss:user name="anon" password="anon" authorities="ROLE_ANON" />
            </ss:user-service>
          </ss:authentication-provider>
        </ss:authentication-manager> 
      </spring:beans>
    
      <mule-ss:security-manager>
          <mule-ss:delegate-security-provider name="memory-provider" delegate-ref="authenticationManager" />
      </mule-ss:security-manager>
    
      <http:listener-config name="HTTP_Listener_Configuration" host="localhost" port="8081" doc:name="HTTP Listener Configuration" />
    
      <flow name="SpringExampleFlow">
        <http:listener config-ref="HTTP_Listener_Configuration" path="/" doc:name="HTTP"/>
        <http:basic-security-filter realm="mule-realm"/>      
        <logger level="INFO" message="passed security successfully !!! " doc:name="Logger"/>
      </flow>
    </mule>
    

    Spring安全性还可以配置为提供基于角色的支持,其中多个用户参与<mule-ss:authorization-filter/>
    因此,您可以根据用户角色过滤用户。

    您可以在此处参考一些示例,以获取有关它及其实施的更多想法: - http://confluex.com/blog/http-inbound-endpoint-basic-authentication/

    https://developer.mulesoft.com/docs/display/current/Configuring+the+Spring+Security+Manager