WSO2 ESB和REST服务安全性

时间:2012-09-10 10:58:26

标签: rest wso2 wso2esb esb

我有几个后端REST服务,我必须通过WSO2 ESB使用它。我为后端使用基本授权标头。我在ESB中创建了服务,当我通过firefox RESTClient插件调用它时它工作正常。这是配置:

<proxy name="ADocumentLibraryAuth" transports="https http" startOnLoad="true" trace="disable">
    <target>
        <inSequence>
            <property name="Authorization" expression="fn:concat('Basic ', base64Encode('xxx:xxx'))" scope="transport"/>
            <send>
                <endpoint name="test">
                    <address uri="http://xxxxxx:8080/alfresco/s/slingshot/datalists/lists/xx/xx/xx"/>
                </endpoint>
            </send>
        </inSequence>
        <outSequence>
            <send/>
        </outSequence>
    </target>
</proxy>

现在我想通过ESB保护此服务(例如使用usernameToken安全性)。我可以轻松启用此功能,但我不知道如何调用/使用此服务。我应该为此生成wsdl客户端并调用它吗?

2 个答案:

答案 0 :(得分:1)

默认情况下,您创建的代理服务是SOAP服务,因此当您添加任何类型的WS-Security时,可以通过使用WSDL生成客户端来调用它。 WSDL附加了应用的sec策略。

此致 / Nuwan

答案 1 :(得分:1)

你几乎没有选择,   就像使用代理作为REST适配器,但它具有最小特性init,但您可以轻松地将REST EP与REST API元素集成,这使您可以集成安全方案ref [1],如果您需要查找有关REST API功能的更多信息,请参阅[2]

[1] http://malalanayake.wordpress.com/2013/04/05/apply-oauth2-0-base-security-for-rest-endpoint-with-wso2esb-4-6-0-and-wso2is-4-1-1-alpha/

[2] http://docs.wso2.org/wiki/display/ESB460/REST+Support