什么是wss认证?wss全称是WebService Security。对于wss认证详细参考以下链接:
https://www.oasis-open.org/committees/download.php/16782/wss-v1.1-spec-os-UsernameTokenProfile.pdf
https://www.oasis-open.org/committees/download.php/16782/wss-v1.1-spec-os-UsernameTokenProfile.pdf
接下来进入正题,如何使用soapUI发送包含wss认证请求,其实是往请求报文中填入红框部分:
在请求前需要server提供信息:①帐号密码②密码类型(passwordDigest和passwordText)
1.使用soapUI创建soap项目,并填入基础报文:
2.点击Reuqest 1,填入Username和Password,一般由server端提供
3.添加ws timestamp内容,因为server会校验当前时间是否在时间范围,测试间隔时间超过60s,则需要删掉security节点并重新添加。
右键空白处点击Add WS-Timestamp选项
设置过期时间,单位秒:
点击确定后出现Security部分:
4.添加wss username token模块
在空白处右键,点击Add WSS Username Token
此处会让你选择PasswordDigest(加密密码)还是PasswordText(明文密码),取决于server方如何校验:
点击确定后会出现UsernameToken部分:
到此已经完成所有步骤,可以愉快的请求server了~
Troubleshooting:
-
请求server时出现错误:A security error was encountered when verifying the message
server出现的错误信息:Caused by: org.apache.wss4j.common.ext.WSSecurityException: Invalid timestamp: The message timestamp has expired
原因和解决方式:
ws timestamp时间过期,需删除security节点重新添加ws timestamp和wss usernametoken
-
请求server时出现错误:A security error was encountered when verifying the message
server出现的错误信息:Caused by: org.apache.wss4j.common.ext.WSSecurityException: An error happened processing a Username Token: "A replay attack has been detected"
原因和解决方式:
ws UsernameToken中的Nonce中加密内容有当前时间,需删除security节点重新添加ws timestamp和wss usernametoken
使用
Http
Client发起普通的
Web
Service
还是非常方便的,为了测试代码能够正常运行,最好是先准备以下的JAR包:
commons-codec-1.3.jar
commons-
http
client-3.1.jar
commons-logging-1.1.1.jar
not-yet-commons-ssl-0.3.11.jar
saxon-9.1.0.8j.jar
打开
web
service
的wsdl地址:
http
://127.0.0.1:89/
service
s/Workflow
Service
?这是配置了CXF的目录,否则生成代码时报错:cxf diretory must be set in global。下载CXF:
http
://cxf.apache.org/download.html。这个参数是为了解决java类冲突。
在本系列的第一篇文章中,我们创建了一个基本的身份验证服务,以
使用
SoapUI
进行调用。 因此,在第二篇文章中,我们将逐步演示如何
使用
此工具成功调用这种服务。
使用
SoapUI
的1-Basic WCF SOAP –创建新的SOAP项目
首先,我们需要创建一个
SoapUI
项目,并在“初始WSDL”中添加在第一篇文章中创建的WSDL服务的URL。 另外,添加所需的项目名称。 将生成一个新项目,...
CXF框架实现
web
service
是在设置身份验证时,
1.首先在server端的密码设置验证的配置
public class WsAuthHandler implements CallbackHandler {
public void handle(Callback[] callbacks) throws IOException,
Sorry for this question, it can appear recurrent by I'm completely blocked.I'm trying to implement a
Web
Service
Server on top of CXF framework. Jax-ws is very helpful to handle a
web
service
, it's ea...
以往都是
请求
http
协议的url,现在
请求
变成了
wss
的,用以前那种ajax的方式不可以
发送
和接受。然后查阅相关资料解决了这个问题,在这记录一下解决办法,
使用
的是
web
socket。
<!DOCTYPE html>
<meta charset="UTF-8">
<title></title>
</head>
这是6月在客户机子上部署一个项目时遇到的问题,C和S死活连接不上,假如装到一台机子上就可以。最后发现是两台机子时钟不同步,差了几个小时,改正时间后就OK了。这个问题耗费了一天的时间来解决。
转载于:
http
s://www.cnblogs.com/Gildor/archive/2009/09/05/1560825.html...
在CDATA内部的所有内容都会被解析器忽略。一个 CDATA 部件以""标记结束。但是要记住,CDATA是不能够嵌套的。
但如果你想把一段未知的文本输出到XML中,就一定会遇到因为CDATA嵌套导致的XML解析错误的问题,解决这个问题其实很简单,只需要将"]]>"替换成"]]]]>",然后将替换后的文本作为CDATA的参数传入,这样一来,读XML的程序会将原CDATA识别为多个CDATA,
Web
Service
是一种跨编程语言和跨操作系统平台的远程调用技术。
使用
web
service
技术的接口就可以被调用。
wsdl就是描述
web
service
接口的xml格式文件,描述服务里有些啥怎么用。
SOAP协议 =
HTTP
协议 + XML数据格式。
二、
soapui
发起POST
请求
参考
SoapUI
简介和入门实例解析
新建项目file>new soap project,填写项目名称以及wsdl地址,w
在这个由三部分组成的传奇中,我将演示如何
使用
SoapUI
API工具来调用
安全
的SOAP服务。 首先,我将专注于创建服务,在接下来的文章中它将充当被测系统。
使用
基本身份验证传输
安全
性机制维护对该服务中资源的访问。 Windows Communication Foundation 提供的众多功能之一。 这种机制与
HTTP
S结合
使用
以提供机密性。
WCF基本身份验证服务
要实现的服务包...
cmdbuild的部署可以查看文章:
http
://20988902.blog.51cto.com/805922/1541289
部署成功后,访问
http
://192.168.1.1:8080/cmdbuild/
service
s/soap/ 就能看到所有的
web
service
方法,证明server这边已经ready了
cmdbuild
web
service
官方说明文档:
http
://downlo...