⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 validateusertokenhandler.java

📁 Xfire文件 用于开发web service 的一个开源工具 很好用的
💻 JAVA
字号:
package org.codehaus.xfire.demo;import java.security.cert.X509Certificate;import java.util.Vector;import org.apache.ws.security.WSConstants;import org.apache.ws.security.WSSecurityEngineResult;import org.apache.ws.security.WSUsernameTokenPrincipal;import org.apache.ws.security.handler.WSHandlerConstants;import org.apache.ws.security.handler.WSHandlerResult;import org.codehaus.xfire.MessageContext;import org.codehaus.xfire.handler.AbstractHandler;import sun.security.x509.X500Name;/** * <a href="mailto:tsztelak@gmail.com">Tomasz Sztelak</a> *  *///START SNIPPET: secresultpublic class ValidateUserTokenHandler    extends AbstractHandler{   public void invoke(MessageContext context)        throws Exception    {        Vector result = (Vector) context.getProperty(WSHandlerConstants.RECV_RESULTS);        for (int i = 0; i < result.size(); i++)        {            WSHandlerResult res = (WSHandlerResult) result.get(i);            for (int j = 0; j < res.getResults().size(); j++)            {                WSSecurityEngineResult secRes = (WSSecurityEngineResult) res.getResults().get(j);                int action  = secRes.getAction();                // USER TOKEN                if( (action &  WSConstants.UT )>0   ){                WSUsernameTokenPrincipal principal = (WSUsernameTokenPrincipal) secRes                        .getPrincipal();                // Set user property to user from UT to allow response encryption                context.setProperty(WSHandlerConstants.ENCRYPTION_USER,principal.getName());                System.out.print("User : " + principal.getName() + " password : "                        + principal.getPassword() + "\n");                }                // SIGNATURE                if( ( action & WSConstants.SIGN ) > 0 ){                    X509Certificate cert = secRes.getCertificate();                    X500Name principal = (X500Name) secRes.getPrincipal();                    // Do something whith cert                    System.out.print("Signature for : "  + principal.getCommonName());                }            }        }    }}//  END SNIPPET: secresult

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -