自定义活动、操作和表格
ITSM Adapter 服务通过 Citrix ITSM Connector 插件提供一组自定义活动、操作和表格。借助它们,开发人员可以创建最适合您需求的 Citrix ITSM 工作流:
-
借助这些活动,开发人员可以使用 ServiceNow 工作流编辑器为 Citrix 应用程序和桌面创建工作流。
活动是 ServiceNow 工作流程的构建块。Citrix ITSM Connector 插件为 Citrix 应用程序和桌面提供自定义活动。以“获取会话”活动为例。它根据变量值检索有关 Citrix 应用程序和桌面会话的信息。
-
使用这些表,您可以从 Citrix 环境中检索数据。
有关更多信息,请参阅 Citrix ITSM 开发人员文档。
活动:在计算机上运行 PowerShell 脚本
使用在计算机上运行 PowerShell 脚本自定义活动,可以在目标计算机上远程运行 PowerShell 脚本。
概述
下图说明了此自定义活动的处理流程。
详细流程如下:
- 1 和 2:Citrix ITSM 连接器插件从活动中收集数据并将其发送到 Citrix ITSM Adapter 服务。
- 3:Citrix ITSM Adapter 服务解析接收到的数据并将其发送到目标 Cloud Connector。
- 4:Cloud Connector 解析接收到的数据并将脚本传送到目标计算机执行。
- 5、6 和 7:目标计算机运行脚本并将结果返回给 ServiceNow。在此过程中,使用 HTTPS、WebSocket 和 WinRM 协议。
此活动包含以下数据:
- 客户 ID 和资源位置 ID。确定用于脚本交付的云连接器。
- 计算机名称。标识运行脚本的目标计算机。
- 用户名和密码。识别在计算机上运行 PowerShell 的凭据。
- 脚本。标识 PowerShell 脚本。
有关更多信息,请参阅 Citrix ITSM 开发人员文档中的在 计算机上运行 PowerShell 脚本 。
必备条件
在使用此活动之前,您必须:
- 在 Citrix ITSM Connector 中启用远程 PowerShell。有关更多信息,请参阅 启用远程 PowerShell。
- 使 VDA 计算机能够接收远程命令。有关更多信息,请参阅 这篇微软文章。
开始使用示例工作流程
ServiceNow 服务管理门户提供了一个示例工作流程,可帮助您了解如何使用此自定义活动。
要以用户身份体验此示例工作流程,请执行以下步骤:
- 在 ServiceNow 服务管理门户中,前往 Citrix IT Service Management Connector > 服务 > Citrix Virtual Apps and Desktops。
- 单击“在 计算机上运行 PowerShell 脚本”(示例工作流程)。
- 使用用户名、交付组或计算机目录(任意或全部)搜索目标计算机,然后从搜索结果中选择一台计算机。
- 在“用户名”和“密码”字段中,输入在计算机上运行 PowerShell 脚本的凭据。
- 在“脚本内容”字段中,输入要在计算机上运行的 PowerShell 脚本。从 ITSM 适配器服务版本 23.7.0 开始,可以在脚本中使用参数。参数表示为 。
${ScriptParameters.<key>}
每个密钥名称对应不同的参数,例如 和 。${ScriptParameters.ExampleParam1}
${ScriptParameters.ExampleParam2}
- 如果您在脚本中使用参数,请在 “ 脚本参数 ” 字段中使用 JSON 格式输入键值对,为脚本中的密钥分配值。**示例,
{"ExampleParam1":"Value1","ExampleParam2":"Value2"}
- 单击 Submit(提交)。
示例
脚本内容:
$processes = Get-Process -Name “${ScriptParameters.appname}”
foreach ($process in $processes){
Stop-Process -id $process.Id
}
<!--NeedCopy-->
脚本参数:
{"appname":"chrome"}
最终脚本:
$processes = Get-Process -Name “chrome”
foreach ($process in $processes){
Stop-Process -id $process.Id
}
<!--NeedCopy-->
要查看此工作流程的设计细节,请执行以下步骤:
- 在 ServiceNow 服务管理门户上,在左侧导航菜单中选择 工作流编辑器 。
- 在“工作流”选项卡上,选择 CTX 远程 PowerShell 工作流程。它的设计细节出现了。