我使用的API管理器2.0,我設計了一個新的API和生產網址是Web服務的終點。在API中,我添加了「消息中介策略」將json轉換爲請求中的soap,並在請求中將soap轉換回json。這在沒有認證的情況下工作正常。如何從WS02 Api Manager將基本auth頭傳遞給SOAP端點?
當我試圖連接到使用basic am進行身份驗證的端點無法發送auth頭時。是否有可能通過,如果有的話如何實現呢?
我已經嘗試過端點安全架構,但沒有成功。
我使用的API管理器2.0,我設計了一個新的API和生產網址是Web服務的終點。在API中,我添加了「消息中介策略」將json轉換爲請求中的soap,並在請求中將soap轉換回json。這在沒有認證的情況下工作正常。如何從WS02 Api Manager將基本auth頭傳遞給SOAP端點?
當我試圖連接到使用basic am進行身份驗證的端點無法發送auth頭時。是否有可能通過,如果有的話如何實現呢?
我已經嘗試過端點安全架構,但沒有成功。
如果您正確配置Endpoint Security Scheme
,則應該在您的api文件的repository/deployment/server/synapse-configs/default/api/
目錄中看到Authorization
屬性,如下所示。仔細檢查它是否存在。
<resource methods="GET" url-mapping="/menu" faultSequence="fault">
<inSequence>
<property name="api.ut.backendRequestTime"
expression="get-property('SYSTEM_TIME')"/>
<filter source="$ctx:AM_KEY_TYPE" regex="PRODUCTION">
<then>
<property name="Authorization"
expression="fn:concat('Basic ', 'YmhhdGhpeWE6cGFzc3dvcmQ=')"
scope="transport"/>
<send>
<endpoint name="admin--PizzaShackAPI_APIproductionEndpoint_1">
<http uri-template="https://localhost:9443/am/sample/pizzashack/v1/api/"/>
<property name="ENDPOINT_ADDRESS"
value="https://localhost:9443/am/sample/pizzashack/v1/api/"/>
</endpoint>
</send>
</then>
<else>
<property name="Authorization"
expression="fn:concat('Basic ', 'YmhhdGhpeWE6cGFzc3dvcmQ=')"
scope="transport"/>
<send>
<endpoint name="admin--PizzaShackAPI_APIsandboxEndpoint_1">
<http uri-template="https://localhost:9443/am/sample/pizzashack/v1/api/"/>
<property name="ENDPOINT_ADDRESS"
value="https://localhost:9443/am/sample/pizzashack/v1/api/"/>
</endpoint>
</send>
</else>
</filter>
</inSequence>
<outSequence>
<class name="org.wso2.carbon.apimgt.usage.publisher.APIMgtResponseHandler"/>
<send/>
</outSequence>
</resource>
您可以通過實現可爲特定API配置的介體來執行此操作。在進行ESB調用之前,該類將被調用,您可以檢查請求並使用基本身份驗證詳細信息設置標頭。 步驟。 1.創建一個調停項目 2.實現日誌內的介質類(的handleRequest方法) 3.導出這個類作爲一個jar文件 4.複製它在Carbon_home /存儲庫/組件/ lib目錄 5.配置調解(C:\ WSO2 \ wso2am- 2.0.0 \ repository \ deployment \ server \ synapse-configs \ default \ api) 6.在處理程序部分添加配置示例
您試過這個嗎? https://docs.wso2.com/display/AM200/Basic+Auth – Bee
@Bhathiya:是的,沒有成功與..現在我正在使用ESB來克服這個問題。 – Nirosan