Web 服务身份验证

Silk Central 数据受到针对非授权访问的保护。在授权数据访问权限之前,必须先提供登录凭据。这不仅适用于使用 HTML 前端的情况,也适用于通过 SOAP 或 REST API 调用与 Silk Central 进行通信。

查询数据或应用 Silk Central 配置更改的第一步是身份验证。身份验证成功时,将创建用户会话,以允许在用户登录的上下文中执行后续操作。

通过 Web 浏览器访问 Silk Central 时,用户看不到会话信息。浏览器使用 cookie 处理会话信息。与通过 HTML 使用 Silk Central 相比,SOAP 调用必须手动处理会话信息。

Micro Focus 建议通过 Web 服务令牌进行身份验证。您可以在 Silk Central UI 的用户设置页面中生成这样的 Web 服务令牌。要访问此页面,请将鼠标光标悬停在 Silk Central 菜单中的用户名上,然后选择用户设置

您还可以使用 logonUser SOAP 调用或 login REST API 调用进行身份验证。方法调用返回的会话标识符引用服务器上创建的会话,同时用作会话上下文中访问 Silk Central 的密匙。

需要身份验证的每个后续 API 调用都将这样的 Web 服务令牌或会话标识符作为其参数之一,检查其有效性,并在相应会话的上下文中执行。

通过 Web 服务创建的 Silk Central 会话无法显式结束。相反,会话在一段时间不使用时自动结束。服务器上的会话一旦超时,尝试使用会话的后续 SOAP 调用将抛出异常。

通过 Silk Central帮助 > 工具 > Web 服务演示客户端可以找到可供下载的演示客户端。此演示项目使用 Silk Centraltests Web 服务,以帮助您熟悉 Web 服务接口。

示例

如果您已在 Silk Central UI 中生成 Web 服务令牌,以下 Java 代码示例将演示如何通过 Web 服务和使用 Web 服务令牌访问 Silk Central
string webServiceToken = "e39a0b5b-45db-42db-84b2-b85028d954d5";
Project[] projects = sccentities.getProjects(webServiceToken);
以下 Java 代码示例演示了如何通过 Web 服务和使用会话标识符同样访问 Silk Central
long sessionID = systemService.logonUser("admin", "admin");
Project[] projects = sccentities.getProjects(sessionID);