亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

RAD - 如何在 websphere 應用程序服務器管理控制臺中為 JAX-WS 添加用戶名令牌

RAD - 如何在 websphere 應用程序服務器管理控制臺中為 JAX-WS 添加用戶名令牌

森林海 2022-07-20 10:49:36
我已經使用 JAX-WS 創建了一個 Web 服務,并嘗試將 Simple UsernameToken 安全性添加到 Web 服務中。該應用程序部署在 Websphere 8.5 上。我發現以下鏈接有助于為基于 JAX-RPC 的 Web 服務添加來自RAD -> 服務選項卡的 usernameToken,但相同的功能不適用于JAX-WS類型的 Web 服務。RAD - 如何在 websphere 應用程序服務器管理控制臺中為 JAX RPC 添加用戶名令牌任何人都可以幫助提供一些類似的步驟或其他可能的簡單解決方案來為 JAX-WS Web 服務實現相同的目標嗎?    <Soapenv:Header>    <wsse:Security soapenv: mustUnderstand="1"        xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wsswssecurity-secext-1.0.xsd">        <wsse:UsernameToken>            <wsse:Username>user</wsse: Username>            <wsse:Password                Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wssusername-token-profile-1.0#PasswordText">paas</wsse: Password>        </wsse:UsernameToken>    </wsse:Security></soapenv:Header>
查看完整描述

1 回答

?
烙印99

TA貢獻1829條經驗 獲得超13個贊

最后,我設法找到了解決上述問題的方法。它如下:


在谷歌上搜索了很多之后,我發現了一個Web 服務處理程序的概念,可以分別為從 Web 服務提供者接收或發送的每個請求和響應調用它。


如何配置: 1. 創建一個 Java File SecurityHandler 并在其中粘貼以下代碼:


public class SecurityHandler implements SOAPHandler<SOAPMessageContext>

{

    @Override

    public boolean handleMessage(SOAPMessageContext context)

    {

        boolean outbound = (Boolean)context.get(SOAPMessageContext.MESSAGE_OUTBOUND_PROPERTY);

        if(outbound) {

            //logic to handle a response

        }


        if (!outbound) {

            //logic to handle a request

        }


        return true;

    }


    @Override

    public boolean handleFault(SOAPMessageContext context) {

        return true;

    }


    @Override

    public void close(MessageContext context) {}


    @Override

    public Set<QName> getHeaders() {

        return Collections.emptySet();

    }


}

使用以下代碼示例創建一個 XML 文件:


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

<javaee:handler-chains 

     xmlns:javaee="http://java.sun.com/xml/ns/javaee" 

     xmlns:xsd="http://www.w3.org/2001/XMLSchema">

  <javaee:handler-chain>

    <javaee:handler>

      <javaee:handler-class>your.package.path.SecurityHandler</javaee:handler-class>

    </javaee:handler>

  </javaee:handler-chain>

</javaee:handler-chains>


要激活對您公開的 Web 服務的每個請求或響應的處理程序,請在 Web 服務類中添加注釋,如下所示:



    @HandlerChain(file="/your/package/path/handler-chain.xml")

    公開課我的網絡服務{

        //要公開的方法或網絡服務。

    }


查看完整回答
反對 回復 2022-07-20
  • 1 回答
  • 0 關注
  • 132 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號