0
我試圖將xml字符串發佈到使用Mule 3.5.0 CE的CAS後面的REST服務。我在出站終端上配置了mule安全管理器和http安全篩選器,但沒有取得多大成功。騾文件沒有太多的幫助,我已經遇到了一些關於如何保護入站端點的帖子,但沒有對驗證出站請求進行驗證。有沒有人以前做過這件事,甚至有可能嗎?提前致謝。HTTP POST到由CAS使用Mule保護的REST服務
<!-- CONNECTORS -->
<https:connector name="HttpsConnector">
<service-overrides sessionHandler="org.mule.session.NullSessionHandler"/>
<https:tls-server path="${truststore}" storePassword="password"/>
</https:connector>
<!-- ENDPOINTS -->
<https:endpoint name="PublishEndpoint" connector-ref="HttpsConnector"
address="${my.url}"
method="POST" contentType="application/xml" exchange-pattern="request-response"
keepAlive="true" />
<mule-ss:security-manager>
<mule-ss:delegate-security-provider name="memory-provider" delegate-ref="authenticationManager" />
</mule-ss:security-manager>
<spring:beans>
<ss:authentication-manager alias="authenticationManager">
<ss:authentication-provider>
<ss:user-service id="userService">
<ss:user name="${user}" password="${pwd}" authorities="ROLE_USER" />
</ss:user-service>
</ss:authentication-provider>
</ss:authentication-manager>
</spring:beans>
<!-- publish xml string to service -->
<flow name="PublishFlow">
<vm:inbound-endpoint ref="ReportEndpoint" />
<https:outbound-endpoint ref="PublishEndpoint">
<mule-ss:http-security-filter realm="mule-realm" securityProviders="memory-provider"/>
</https:outbound-endpoint>
</flow>
'http-security-filter'用於入站端點,而不是出站端點。 CAS預期什麼樣的憑證?只有基本身份驗證授權標頭中的用戶名和密碼?還有別的嗎? –
@DavidDossot CAS首先需要用戶名/密碼才能啓動身份驗證過程。然後有一些票證交換完成驗證。 – user1932673
您可以通過使用其中的同名屬性在「https:outbound-endpoint」中傳遞用戶名/密碼。但這不會做「少量交換機票」。 –