在您的 Webex 上为 Cisco BroadWorks XSP|ADP 配置服务

我们要求 NPS 应用程序在不同的 XSP|ADP 上运行。该 XSP|ADP 的要求在 从您的网络配置呼叫通知中进行了描述。

您需要以下应用程序 / 您的 XSP|ADP 上的服务。

服务/应用程序

必须验证

服务/应用程序用途

Xsi-Events

TLS(服务器向客户端验证自身)

呼叫控制,服务通知

Xsi-Actions

TLS(服务器向客户端验证自身)

呼叫控制,操作

设备管理

TLS(服务器向客户端验证自身)

呼叫配置下载

验证服务

TLS(服务器向客户端验证自身)

用户身份验证

计算机电话集成

mTLS(客户端和服务器相互验证)

电话状态

呼叫设置网页视图应用程序

TLS(服务器向客户端验证自身)

在 Webex 应用程序内的自助门户中公开用户呼叫设置

本节介绍如何在这些接口上应用 TLS 和 mTLS 所需的配置,但您应该参考现有文档以在 XSP|ADP 上安装应用程序。

共驻要求

  • 身份验证服务必须与 Xsi 应用程序共驻,因为这些接口必须接受长效令牌才能进行服务授权。需要身份验证服务才能验证这些令牌。

  • 如有必要,身份验证服务和 Xsi 可以在同一端口上运行。

  • 你可以分开另一个 services/applications 根据您的规模需要(例如专用设备管理 XSP|ADP 场)。

  • 您可以将 Xsi、CTI、身份验证服务和 DMS 应用程序设在同地。

  • 请勿在用于将 BroadWorks 与 Webex 集成的 XSP|ADP 上安装其他应用程序或服务。

  • 请勿将 NPS 应用程序与其他任何应用程序设在同地。

Xsi 接口

按照“Cisco BroadWorks Xtended 服务接口配置指南”中的描述安装和配置 Xsi-Actions 和 Xsi-Events 应用程序。

在用于 CTI 接口的 XSP|ADP 上仅应部署一个 Xsi-Events 应用程序实例。

用于将 Broadworks 与 Webex 集成的所有 Xsi-Events 必须具有相同的 callControlApplicationName,定义如下 Applications/Xsi-Events/GeneralSettings. 例如:

ADP_CLI/Applications/Xsi-Events/GeneralSettings> get

callControlApplicationName = com.broadsoft.xsi-events

当用户加入 Webex 时,Webex 会在 AS 上为该用户创建一个订阅,以便接收在线状态和通话历史记录的电话事件。订阅与 callControlApplicationName 相关联,并且 AS 使用它来知道将电话事件发送到哪个 Xsi-Events。

更改 callControlApplicationName,或在所有 Xsi-Events webapps 上不使用相同的名称将影响订阅和电话事件功能。

配置身份验证服务(使用 CI 令牌验证)

下列步骤用于将身份验证服务配置为通过 TLS 使用 CI 令牌验证。如果您使用的是 R22 或更高版本,并且您的系统支持,建议采用此身份验证方法。

相互 TLS (mTLS) 可以作为身份验证服务的替代验证方法。如果您有多个 Webex 组织在同一个 XSP|ADP 服务器上运行,则必须使用 mTLS 身份验证,因为 CI 令牌验证不支持与同一个 XSP|ADP 身份验证服务的多个连接。

要针对身份验证服务配置 mTLS 身份验证而不是 CI 令牌验证,请参阅附录配置服务(为身份验证服务使用 mTLS)的附录)。

如果您当前将 mTLS 用于身份验证服务,则重新配置以通过 TLS 使用 CI 令牌验证并非强制性的。

  1. 为 Cisco BroadWorks 获取 Webex 的 OAuth 凭证

  2. 在每个 XSP|ADP 服务器上安装以下补丁。安装适合您发行版的补丁:

    任何对 XSP 的引用均包括 XSP 或 ADP。

  3. 在每个 XSP|ADP 服务上安装 AuthenticationService 应用程序。

    1. 运行以下命令激活 XSP 上的 AuthenticationService 应用程序|ADP 到 /authService 上下文路径。

      XSP|ADP_CLI/Maintenance/ManagedObjects> activate application AuthenticationService 22.0_1.1123/authService
    2. 运行此命令在 XSP|ADP 上部署 AuthenticationService:

      XSP|ADP_CLI/Maintenance/ManagedObjects> deploy application /authServiceBroadWorks SW Manager deploying /authService...
  4. 从 Broadworks build 2022.10 开始,切换到新版本的 Java 时,Java 附带的证书颁发机构不再自动包含在 BroadWorks 信任库中。AuthenticationService 打开与 Webex 的 TLS 连接以获取访问令牌,并且需要在其信任库中具有以下内容来验证 IDBroker 和 Webex URL:

    • IdenTrust Commercial Root CA 1

    • Go Daddy Root Certificate Authority - G2

    验证以下 CLI 下是否存在这些证书

    ADP_CLI/System/SSLCommonSettings/Trusts/Defaults> get

    如果不存在,请运行以下命令导入默认的 Java 信任:

    ADP_CLI/System/SSLCommonSettings/Trusts/Defaults> importJavaCATrust

    或者,您可以使用以下命令手动将这些证书添加为信任锚:

    ADP_CLI/System/SSLCommonSettings/Trusts/BroadWorks> updateTrust

    如果 ADP 从以前的版本升级,则旧版本的证书颁发机构将自动导入到新版本,并将继续导入,直到手动删除为止。

    AuthenticationService 应用程序不受 ADP_下的 validatePeerIdentity 设置的限制 CLI/System/SSLCommonSettings/GeneralSettings, 并始终验证对方身份。有关此设置的更多信息,请参阅 Cisco Broadworks X509 证书验证 FD

  5. 通过在每个 XSP|ADP 服务器上运行以下命令来配置身份提供者:

    XSP|ADP_CLI/Applications/AuthenticationService/IdentityProviders/Cisco> get

    • set clientId client-Id-From-Step1

    • set enabled true

    • set clientSecret client-Secret-From-Step1

    • set ciResponseBodyMaxSizeInBytes 65536

    • set issuerName — 对于 URL,输入适用于您的 CI 集群的 IssuerName URL。请参阅下表。

    • set issuerUrl — 对于 URL,输入适用于您的 CI 集群的 IssuerUrl。请参阅下表。

    • set tokenInfoUrl —输入应用于 Teams 集群的 IdP 代理 URL。请参阅下面的第二张表。

    表 1. 设置 issuerName 和 issuerURL
    如果 CI 集群是...将 issuerName 和 issuerURL 设置为...

    US-A

    https://idbroker.webex.com/idb

    欧盟

    https://idbroker-eu.webex.com/idb

    US-B

    https://idbroker-b-us.webex.com/idb

    如果您不知道您的 CI 集群,您可以从 Control Hub 的帮助台视图中的客户详细信息中获取信息。

    表 2. 设置 tokenInfoURL
    如果 Teams 集群是...将 tokenInfoURL 设置为...(IdP 代理 URL)

    ACHM

    https://broadworks-idp-proxy-a.wbx2.com/broadworks-idp-proxy/api/v1/idp/authenticate

    AFRA

    https://broadworks-idp-proxy-k.wbx2.com/broadworks-idp-proxy/api/v1/idp/authenticate

    AORE

    https://broadworks-idp-proxy-r.wbx2.com/broadworks-idp-proxy/api/v1/idp/authenticate

    • 如果您不知道您的 Teams Cluster,您可以从 Control Hub 的帮助台视图中的客户详细信息中获取信息。

    • 为了进行测试,您可以通过将 URL 的“idp/authenticate”部分替换为“ping”来验证 tokenInfoURL 是否有效。

  6. 通过运行以下命令指定 Webex 中用户档案中必须存在的 Webex 权限:

    XSP|ADP_CLI/Applications/AuthenticationService/IdentityProviders/Cisco/Scopes> set scope broadworks-connector:user

  7. 在每个 XSP|ADP 服务器上使用以下命令为 Cisco Federation 配置身份提供者:

    XSP|ADP_CLI/Applications/AuthenticationService/IdentityProviders/Cisco/Federation> get

    • set flsUrl https://cifls.webex.com/federation

    • set refreshPeriodInMinutes 60

    • set refreshToken refresh-Token-From-Step1

  8. 运行以下命令以验证您的 FLS 配置是否有效。该命令将返回身份提供程序列表:

    XSP|ADP_CLI/Applications/AuthService/IdentityProviders/Cisco/Federation/ClusterMap> Get

  9. 在每个 XSP|ADP 服务器上使用以下命令配置令牌管理:

    • XSP|ADP_CLI/Applications/AuthenticationService/TokenManagement>

    • set tokenIssuer BroadWorks

    • set tokenDurationInHours 720

  10. 生成并共享 RSA 密钥。您必须在一个 XSP|ADP 上生成密钥,然后将其复制到所有其他 XSP|ADP。这是由于以下因素:

    • 身份验证服务的所有实例必须使用相同的公钥/私钥对进行令牌加密/解密。

    • 首次收到颁发令牌要求时,身份验证服务会生成密钥对。

    如果您循环密钥或更改密钥长度,则需要重复以下配置并重新启动所有 XSP|ADP。

    1. 选择一个 XSP|ADP 用于生成密钥对。

    2. 使用客户端从该 XSP|ADP 请求加密令牌,方法是从客户端的浏览器请求以下 URL:

      https:///authService/token?key=BASE64URL(clientPublicKey)

      (这会产生一个私人 / XSP|ADP 上的公钥对(如果还没有)

    3. 密钥存储位置不可配置。导出密钥:

      XSP|ADP_CLI/Applications/authenticationService/KeyManagement> exportKeys

    4. 将导出的文件 /var/broadworks/tmp/authService.keys 复制到其他 XSP|ADP 上的相同位置,如有必要,覆盖较旧的 .keys 文件。

    5. 在其他每个 XSP|ADP 上导入密钥:

      XSP|ADP_CLI/Applications/authenticationService/KeyManagement> importKeys /var/broadworks/tmp/authService.keys

  11. 向 Web 容器提供 authService URL。XSP|ADP 的 Web 容器需要 authService URL 才能验证令牌。在每个 XSP|ADP 上:

    1. 添加身份验证服务 URL 作为 BroadWorks Communications Utility 的外部身份验证服务:

      XSP|ADP_CLI/System/CommunicationUtility/DefaultSettings/ExternalAuthentication/AuthService> set url http://127.0.0.1:80/authService

    2. 将身份验证服务 URL 添加到容器:

      XSP|ADP_CLI/Maintenance/ContainerOptions> add tomcat bw.authservice.authServiceUrl http://127.0.0.1:80/authService

      这样,Webex 即可使用身份验证服务来验证作为凭据提交的令牌。

    3. 使用 get检查参数。

    4. 重新启动 XSP|ADP。

删除身份验证服务的客户端验证要求(仅适用于 R24)

如果您在 R24 上配置了带 CI 令牌验证的身份验证服务,则还需要删除身份验证服务的客户端验证要求。运行以下 CLI 命令:

ADP_CLI/Interface/Http/SSLCommonSettings/ClientAuthentication/WebApps> set AuthenticationService clientAuthReq false

在 HTTP 接口上配置 TLS 和密码(用于 XSI 和身份验证服务)

身份验证服务、Xsi-Actions 和 Xsi-Events 应用程序使用 HTTP 服务器接口。这些应用程序的 TLS 配置级别如下:

最一般 = 系统 > 传输 > HTTP > HTTP 服务器接口 = 最特殊

您用于查看或修改不同 SSL 设置的 CLI 上下文包括:

特异性 CLI 上下文
系统(全局)

XSP|ADP_CLI/System/SSLCommonSettings/JSSE/Ciphers>

XSP|ADP_CLI/System/SSLCommonSettings/JSSE/Protocols>

此系统的传输协议

XSP|ADP_CLI/System/SSLCommonSettings/OpenSSL/Ciphers>

XSP|ADP_CLI/System/SSLCommonSettings/OpenSSL/Protocols>

此系统上的 HTTP

XSP|ADP_CLI/Interface/Http/SSLCommonSettings/Ciphers>

XSP|ADP_CLI/Interface/Http/SSLCommonSettings/Protocols>

此系统上的特定 HTTP 服务器接口

XSP|ADP_CLI/Interface/Http/HttpServer/SSLSettings/Ciphers>

XSP|ADP_CLI/Interface/Http/HttpServer/SSLSettings/Protocols>

读取 XSP 上的 HTTP 服务器 TLS 接口配置|ADP

  1. 登录 XSP|ADP 并导航至 XSP|ADP_CLI/Interface/Http/HttpServer>

  2. 输入 get 命令并读取结果。您应看到接口(IP 地址),并分别查看是否安全以及是否需要客户端身份验证。

Apache tomcat 要求每个安全接口都有证书;如果需要,系统会生成自签名证书。

XSP|ADP_CLI/Interface/Http/HttpServer> get

输入 get 命令后显示的结果,显示接口(IP 地址)以及每个接口是否安全以及是否需要客户端身份验证。

将 TLS 1.2 协议添加到 HTTP 服务器接口

必须将与 Webex 云交互的 HTTP 接口配置为用于 TLSv1.2。云不会协商早期版本的 TLS 协议。

要在 HTTP 服务器接口上配置 TLSv1.2 协议,请执行以下操作:

  1. 登录 XSP|ADP 并导航至 XSP|ADP_CLI/Interface/Http/HttpServer/SSLSettings/Protocols>

  2. 输入命令 get 443 查看此接口上已使用哪些协议。

  3. 输入命令 add 443 TLSv1.2 ,确保接口与云端通信时可以使用TLS 1.2。

在 HTTP 服务器接口上编辑 TLS 密码配置

要配置所需的密码,请执行以下操作:

  1. 登录 XSP|ADP 并导航至 XSP|ADP_CLI/Interface/Http/HttpServer/SSLSettings/Ciphers>

  2. 输入命令 get 443 查看此接口上已使用哪些密码。必须至少有一个来自 Cisco 推荐的套件(请参阅概述部分中的 XSP|ADP 身份和安全要求 )。

  3. 输入命令 add 443 向HTTP服务器接口添加密码。

    XSP|ADP CLI 需要 IANA 标准密码套件名称,而不是 openSSL 密码套件名称。例如,要将 openSSL 密码 ECDHE-ECDSA-CHACHA20-POLY1305 添加到 HTTP 服务器接口,您可以使用: XSP|ADP_CLI/Interface/Http/HttpServer/SSLSettings/Ciphers>add 192.0.2.7 443 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305

    请参阅 https://ciphersuite.info/,以便按任一名称查找此套件。

在 XSP|ADP、应用程序服务器和配置文件服务器上配置设备管理

配置文件服务器和 XSP|ADP 是设备管理所必需的。必须按照 BroadWorks 设备管理配置指南中的说明进行配置。