Web Service 场景

相关项: API 测试

默认 Web Service 场景基于 WS-安全性规范。此场景允许您将安全凭据放入实际 SOAP 消息中。

当 SOAP 消息发送方发送一个请求时,安全凭据(称作令牌)会被放入 SOAP 消息。当 Web 服务器接收到 SOAP 请求时,它不需要通过发送额外的请求来验证发送方的诚信度。服务器会先验证凭据是否可信,之后再让 Web Service 执行应用程序。由于不必退回到凭据的来源处,因此应用程序的性能显著提高。

为了进一步保护 Web Service,通常会对 SOAP 消息使用数字签名或加密。对 SOAP 消息进行数字签名可以验证消息在传输过程中未被改变。加密 SOAP 消息使预期接收方以外的任何其他人都难以读取消息内容,从而帮助保护 Web Service。

传输级别安全性

传输层安全性包括身份验证和代理服务器信息。您还可以指定保持连接首选项和连接超时。

返回页首

消息级别安全性

WS-安全性选项卡允许您通过令牌、签名和加密来设置消息级别安全性。

为了支持 WS-安全性,UFT One 允许您为脚本创建安全令牌。您可以创建多个令牌并设置它们的属性。创建一个令牌之后,可以使用它对 SOAP 消息进行签名或加密。

Web Service 安全机制将安全令牌与消息相关联。这种机制支持几种安全令牌格式,以适应各种身份验证要求。例如,某个客户端可能需要提供身份标识证明或安全证书。

可以使用以下令牌:

令牌 描述
UserName

“用户名”令牌包含用于身份验证的用户标识信息: 用户名密码

您还可以指定密码选项,指示如何向服务器发送密码来进行身份验证: 文本哈希。并指示是否包含时间戳。

X509 证书

此令牌基于 X.509 证书。

要获取证书,可以从证书颁发机构(例如 VeriSign, Inc.)购买它,也可以设置自己的证书服务来颁发证书。

大多数 Windows 服务器都支持公钥基础结构 (PKI),它使您能够创建证书。然后,您可以通过证书颁发机构对它进行签名,或使用未签名的证书。

Kerberos/Kerberos 2

Kerberos 协议用于在开放的非安全网络上进行用户和服务的相互身份验证。

它使用共享密钥对用户凭据进行加密和签名。第三方(称为 KDC(Kerberos 密钥分发中心))对凭据进行身份验证。

进行身份验证之后,用户可以通过请求服务票证来访问网络上的一个或多个服务。票证包含经过加密和身份验证的用户身份标识。票证使用当前用户的凭据获取。

Kerberos 和 Kerberos2 令牌之间的主要差别在于,Kerberos2 使用安全支持提供程序接口 (SSPI),所以它不需要使用提升的权限来模拟客户端的身份标识。

此外,Kerberos2 安全令牌还可以用于保护发送到运行于 Web 场中的 Web Service 的 SOAP 消息。

SAML 令牌

SAML 是一种 XML 标准,用于通过 Internet 在业务合作伙伴之间交换安全相关信息 (称为断言)。断言可以包含属性语句、身份验证、决定语句和授权决定语句。

SAML 使用由 STS(安全令牌服务)发出的安全令牌来实现代理身份验证。客户端和 Web Service 都信任 STS,由 STS 提供可互操作的安全令牌。

SAML 令牌对于 Web Service 安全性非常重要,因为它们提供了跨平台的互操作性,以及在不处于单个安全域内的客户端和服务之间交换信息的方法。

JKS 证书

通过 JKS (Java 密钥库) 证书,可以访问和使用保存在文件中的 Java 密钥库 Web Service 证书。从该文件中,指定 Web Service 的别名和密码。

向 SOAP 消息中添加安全令牌时,它将以 XML 元素的形式添加到 SOAP 消息中(在 WS-安全性 SOAP 标头中)。但此消息是公开的,因而需要额外的安全性。对于基于角色的安全性,以明文发送凭据(包括密码)时尤其如此。

有两种方法可用于确保数据安全,它们是消息签名和消息加密:

  • 消息签名。接收方使用消息签名来验证自签名以来消息未被更改。签名以 XML 的形式添加到 SOAP 消息内。接收方需要检查签名,以确保它是有效的。

  • 消息加密。虽然 XML 消息签名提供了一种验证消息自签名以来未被更改的机制,但它不会加密 SOAP 消息 —— 消息仍然是 XML 格式的明文。为了保护消息使之不被公开,可以对它进行加密,使入侵者无法查看和获取用户密码。

返回页首