2

私のテストにアクセスするには、http://hostDesired.com/service?WSDLMule に直接実行される通常のサービス プロキシを使用します。

を使用してアクセスできるように変更するにはどうすればよいhttps://hostDesired.com/service?WSDLですか? 私が試してうまくいかなかったのは:

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:ssl="http://www.mulesoft.org/schema/mule/ssl" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
    xmlns:mulexml="http://www.mulesoft.org/schema/mule/xml" xmlns:https="http://www.mulesoft.org/schema/mule/https"
    xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:spring="http://www.springframework.org/schema/beans" xmlns:http="http://www.mulesoft.org/schema/mule/http"
    xmlns:pattern="http://www.mulesoft.org/schema/mule/pattern"
    xmlns:mule-ss="http://www.mulesoft.org/schema/mule/spring-security"
    xmlns:ss="http://www.springframework.org/schema/security"
    xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/xml http://www.mulesoft.org/schema/mule/xml/current/mule-xml.xsd
http://www.mulesoft.org/schema/mule/https http://www.mulesoft.org/schema/mule/https/current/mule-https.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/3.4/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/3.4/mule-http.xsd
http://www.mulesoft.org/schema/mule/pattern http://www.mulesoft.org/schema/mule/pattern/3.4/mule-pattern.xsd
http://www.mulesoft.org/schema/mule/spring-security http://www.mulesoft.org/schema/mule/spring-security/3.4/mule-spring-security.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd
http://www.mulesoft.org/schema/mule/ssl http://www.mulesoft.org/schema/mule/ssl/current/mule-ssl.xsd" version="EE-3.4.0">

    <mule-ss:security-manager>
        <mule-ss:delegate-security-provider
            name="memory-dao" 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="asd" password="asd" authorities="ROLE_ADMIN" />
                </ss:user-service>
            </ss:authentication-provider>
        </ss:authentication-manager>
    </spring:beans>

    <https:connector name="httpsConnector">
    <https:tls-key-store path="keystore.jks"
        keyPassword="${jks.password}" storePassword="${jks.password}" />
    </https:connector>

    <pattern:web-service-proxy name="ProxyService"
          inboundAddress="https://desiredHost/services/Services/Service"
          outboundAddress="http://remoteHost/services/Service.svc"
          wsdlLocation="http://remoteHost/services/Service.svc?singleWSDL"/>

</mule>

うまくいきませんでした... Mule に変更するにはどうすればよいですか?

基本的な考え方は、クライアントからプロキシ サーバーに暗号化を追加することです。

4

1 に答える 1

3

HTTPS インバウンドエンドポイントを使用する場合、要求を処理するときに使用する証明書を Mule が認識できるように、HTTPS コネクタを設定する必要があります。

HTTPS コネクタの設定ページを参照してください: http://www.mulesoft.org/documentation/display/current/HTTPS+Transport+Reference

https:tls-key-storeドキュメントでは非常に紛らわしいので、必要なのは次のように で正しく構成された要素だけであることを追加させてくださいhttps:connector

<https:connector name="httpsConnector">
    <https:tls-key-store path="keystore.jks"
        keyPassword="${jks.password}" storePassword="${jks.password}" />
</https:connector>

keystore.jksこのサンプルでは、​​キーストア ファイルに名前が付けられており、クラスパスで使用できることを前提としています。jks.passwordまた、プロパティを宣言しており、キーストアとキーの両方に同じパスワードを使用していると想定しています。自分の状況に合わせてください

于 2013-06-07T18:21:47.010 に答える