gpt4 book ai didi

security - WSO2 ESB 在绑定(bind)层次结构中应用安全策略

转载 作者:行者123 更新时间:2023-12-04 18:24:06 26 4
gpt4 key购买 nike

我正在尝试将多个安全策略应用于 WSO2 ESB 4.0.3 中定义的代理服务。
我需要在操作级别应用一项策略,而在消息级别应用其他策略。

我正在使用源 View 直接定义代理服务,而不是使用 Web UI/策略编辑器。

我尝试按照此处所述定义每个策略:

http://docs.wso2.org/display/ESB403/Policies+for+Service

但生成的 WSDL 显示它在错误的层次结构中得到应用。

请告知 WSO2 ESB 是否支持此功能,或者我做错了!

我的代理

<proxy name="StockQuoteProxy" transports="https http" startOnLoad="true" trace="disable">
<target endpoint="SimpleStockQuoteService_noSuspendOnFailure_TCPMon">
<inSequence>
<header xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" name="wsse:Security" action="remove"/>
</inSequence>
<outSequence>
<send/>
</outSequence>
</target>
<publishWSDL uri="file:repository/samples/resources/proxy/sample_proxy_3.wsdl"/>
<policy key="sec_operation-Policy"/>
<policy key="sec_InOut-Policy"/>
<enableSec/>
</proxy>

我的消息级别政策
<wsp:PolicyAttachment wsu:Id="Service_message_policy_attachment" 
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
<wsp:AppliesTo>
<policy-subject identifier="binding:soap11/operation:getQuote/in"/>
<policy-subject identifier="binding:soap12/operation:getQuote/in"/>
</wsp:AppliesTo>
<wsp:Policy wsu:Id="Service_message_policy">
<wsp:ExactlyOne>
<wsp:All>
<sp:SignedParts>
<sp:Body />
<sp:Header Name="To"
Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="From"
Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="FaultTo"
Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="ReplyTo"
Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="MessageID"
Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="RelatesTo"
Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="Action"
Namespace="http://www.w3.org/2005/08/addressing" />
</sp:SignedParts>
<sp:EncryptedParts>
<sp:Body />
</sp:EncryptedParts>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>
</wsp:PolicyAttachment>

最佳答案

这由 WSO2 ESB 支持。

实际上,问题在于您尝试使用的消息级别策略。您正在尝试提供策略附件元素,而不是策略元素。如果您尝试通过其 services.xml 将多个策略与 Axis2 服务结合使用,则此方法有效。但如果您使用的是 Carbon 策略编辑器,它希望您提供有效的策略元素。

以下策略元素可以从您使用的策略附件元素中派生。

<wsp:Policy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="Service_message_policy">
<wsp:ExactlyOne>
<wsp:All>
<sp:SignedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
<sp:Body />
<sp:Header Name="To" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="From" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="FaultTo" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="ReplyTo" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="MessageID" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="RelatesTo" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="Action" Namespace="http://www.w3.org/2005/08/addressing" />
</sp:SignedParts>
<sp:EncryptedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
<sp:Body />
</sp:EncryptedParts>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>

希望这可以帮助 !

关于security - WSO2 ESB 在绑定(bind)层次结构中应用安全策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10070704/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com