如何在轴Web服务中启用ws安全性

时间:2014-04-27 15:37:19

标签: java web-services wsdl axis

我是Web服务的新手,我需要在轴Web服务中实现ws安全性。我不确定是否可以在不创建新WSDL的情况下向现有Web服务添加ws安全性?

我们正在使用spring和axis并公开CSR管理员通过Web浏览器使用的一些管理方法,这里是server-config.wsdd文件

<?xml version="1.0" encoding="UTF-8"?>
<deployment name="administration" xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">

    <globalConfiguration>
        <parameter name="adminPassword" value="admin"/>
        <parameter name="enableNamespacePrefixOptimization" value="true"/>
        <parameter name="attachments.Directory" value="C:\temp"/>
        <parameter name="disablePrettyXML" value="true"/>
        <parameter name="sendMultiRefs" value="true"/>
        <parameter name="sendXsiTypes" value="true"/>
        <parameter name="attachments.implementation" value="org.apache.axis.attachments.AttachmentsImpl"/>
        <parameter name="sendXMLDeclaration" value="true"/>
        <parameter name="axis.disableServiceList" value="true"/>
    </globalConfiguration>

    <handler name="LocalResponder" type="java:org.apache.axis.transport.local.LocalResponder"/>
    <handler name="URLMapper" type="java:org.apache.axis.handlers.http.URLMapper"/>
    <handler name="Authenticate" type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>

    <service name="AdministrationRemoteServiceV490" provider="java:RPC" style="wrapped" use="literal" >
      <parameter name="allowedMethods" value="register, updateAccountUser, updateChannel, deleteAccountUser, addChannel" />
      <parameter name="className" value="com.abc.administration.soap.AdministrationRemoteServiceV490"/>
      <namespace>urn:reg:ele:administration:soap:4.9.0</namespace>

      <beanMapping type="java:com.abc.administration.data.impl.v470.EnquiryAccountUser" qname="admin:EnquiryAccountUser" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v460.EnquiryBankCard" qname="admin:EnquiryBankCard" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v490.EnquiryChannel" qname="admin:EnquiryChannel" xmlns:admin="urn:reg:ele:administration:soap:4.9.0"/>     
      <beanMapping type="java:com.abc.administration.data.impl.v490.EnquiryInformationImpl" qname="admin:EnquiryInformationImpl" xmlns:admin="urn:reg:ele:administration:soap:4.9.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v490.EnquiryInformationListImpl" qname="admin:EnquiryInformationListImpl" xmlns:admin="urn:reg:ele:administration:soap:4.9.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v490.SendSMSResponseImpl" qname="admin:SendSMSResponseImp" xmlns:admin="urn:reg:ele:administration:soap:4.9.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.EnquiryAccountUser" qname="admin:MessageHistoryAccountUser" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.EnquiryMessage" qname="admin:EnquiryMessage" xmlns:admin="urn:reg:ele:administration:soap:4.6.5"/>
      <beanMapping type="java:com.abc.administration.data.impl.EnquiryMessageParameter" qname="admin:EnquiryMessageParameter" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.EnquiryeleIdentifier" qname="admin:EnquiryeleIdentifier" xmlns:admin="urn:reg:ele:administration:soap:4.6.5"/>
      <beanMapping type="java:com.abc.administration.data.impl.v465.MessageHistoryListImpl" qname="admin:MessageHistoryListImpl" xmlns:admin="urn:reg:ele:administration:soap:4.6.5"/>
      <beanMapping type="java:com.abc.administration.data.impl.MessageHistoryImpl" qname="admin:MessageHistoryData" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v470.RegisterResponseImpl" qname="admin:RegisterResponseData" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v470.DeleteAccountResponseImpl" qname="admin:DeleteAccountResponseData" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v470.UpdateAccountUserResponseImpl" qname="admin:UpdateAccountUserResponseData" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v460.SupportedBrandingGroupsImpl" qname="admin:SupportedBrandingGroupsForSMS" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.data.impl.v460.MinimalBrandingGroup" qname="admin:BrandingGroup" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>

      <beanMapping type="java:com.abc.administration.service.exception.AccountUserException" qname="admin:AccountUserException" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.service.exception.BankCardException" qname="admin:BankCardException" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.service.exception.ChannelException" qname="admin:ChannelException" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.administration.service.exception.DateException" qname="admin:DateException" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>
      <beanMapping type="java:com.abc.framework.exception.ServiceException" qname="admin:ServiceException" xmlns:admin="urn:reg:ele:administration:soap:4.7.0"/>

      <beanMapping type="java:com.abc.framework.exception.SystemException" qname="admin:SystemException" xmlns:admin="urn:reg:ele:administration:soap:4.7.0" />
      <beanMapping type="java:com.abc.administration.service.exception.BrandingGroupException" qname="admin:BrandingGroupException" xmlns:admin="urn:reg:ele:administration:soap:4.7.0" />
   </service>  


    <service name="AdminService" provider="java:MSG">
        <parameter name="allowedMethods" value="AdminService"/>
        <parameter name="enableRemoteAdmin" value="false"/>
        <parameter name="className" value="org.apache.axis.utils.Admin"/>
        <namespace>http://xml.apache.org/axis/wsdd/</namespace>
        <namespace>http://xml.apache.org/axis/wsdd/</namespace>
    </service>

    <service name="Version" provider="java:RPC">
        <parameter name="allowedMethods" value="getVersion"/>
        <parameter name="className" value="org.apache.axis.Version"/>
    </service>

    <transport name="http">
        <requestFlow>
            <handler type="URLMapper"/>
            <handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>
        </requestFlow>

        <parameter name="qs:list" value="org.apache.axis.transport.http.QSListHandler"/>
        <parameter name="qs:wsdl" value="org.apache.axis.transport.http.QSWSDLHandler"/>
        <parameter name="qs.list" value="org.apache.axis.transport.http.QSListHandler"/>
        <parameter name="qs.method" value="org.apache.axis.transport.http.QSMethodHandler"/>
        <parameter name="qs:method" value="org.apache.axis.transport.http.QSMethodHandler"/>
        <parameter name="qs.wsdl" value="org.apache.axis.transport.http.QSWSDLHandler"/>
    </transport>

    <transport name="local">
        <responseFlow>
        <handler type="LocalResponder"/>
        </responseFlow>
    </transport>

</deployment>

有人可以帮助我如何为这个Web服务添加ws安全性,似乎这个文件创建了wsdl文件但不确定但是检查了模块中的其他类但是找不到Web服务的引用所有其他类都是java类。

0 个答案:

没有答案