任务管理

“流程设计器 ”部分提供了一系列任务,这些任务既可以单独使用,也可以与其他任务结合使用,从而构建出合适的流程。

通过任务和决策点,管理员用户可以构建一个明确的流程来满足业务需求。

在流程设计器中,列出了以下用于创建流程的任务:
核准
用户与身份
代码
应用程序和页面
注意: 使用 “发起访问请求审批 ”和 “完成审批 ”节点创建的工作流,不得直接在浏览器中启动。 基于审批的工作流必须通过访问请求 API 或 USC(添加应用工作流)进行发布和触发

核准

发起访问请求审批
注意: “启动访问请求审批任务”是一项需申请的功能, CI-49772 (通过高级工作流请求访问权限)。 如需申请此功能,请联系您的 IBM 销售代表或 IBM 联系人,并表明您希望启用此功能的意愿。 如果您有相应权限,也可以使用该功能编号提交支持工单。
用途 ——该任务可用于启动针对特定应用程序的访问请求审批流程。
以下是 “发起访问请求审批 ”任务的参数:
表 1. 输出参数
名称 描述
requestId requestId 功能用于跟踪审批流程。requestId 该属性可在流程中以...的形式@context.requestId@检索。
申请批准
注意: “请求批准 ”任务是一项可申请的功能, CI-49772 (通过高级工作流请求访问权限)。 如需申请此功能,请联系您的 IBM 销售代表或 IBM 联系人,并表明您希望启用此功能的意愿。 如果您有相应权限,也可以使用该功能编号提交支持工单。

requestId用途 ——该任务可用于就针对...提交的请求,向已配置的审批人列表寻求批准。 requestId 通常包含“发起访问请求审批”之类的任务。

以下是 “请求批准 ”任务的参数:
表 2. 输入参数
名称 描述
审批人来源 选择审批人来源:
基于角色的审批人
您可以为基于角色的审批人选择多个角色。
  • 应用程序所有者
  • 用户管理程序
用户
您可以在本节中选择多个用户。
您可以在本节中选择一个组。
“基本” 视图中,您可以选择审批人。 在 “高级” 视图中,您可以输入表达式来指定一个或多个审批人
超时(天) 审批人可对该请求采取行动的时间范围。 时长可以输入为数字或表达式。 该时限同样适用于审批人和升级审批人(如有)。
注意: 可修改“请求电子邮件审批人权限”页面,以添加请求审批超时设置。 使用 @TIMEOUT.VALUE@ 该宏在运行时渲染这些数据。 更多详情请参阅 “修改电子邮件审批人访问权限”页面
升级审批人来源(可选) 选择升级审批人来源:
基于角色的审批人
您可以为基于角色的审批人选择多个角色。
  • 应用程序所有者
  • 用户管理程序
用户
您可以在本节中选择多个用户。
您可以在本节中选择一个组。
“基本” 视图中,您可以选择审批人。 在 “高级” 视图中,您可以输入表达式来指定一个或多个审批人
操作超时 如果审批人在配置的时间内未采取行动,则应采取以下措施。 该操作可从下拉菜单中选择,或通过输入表达式来指定。
表 3. 输出参数
名称 描述
approvalStatus 任何被选定的审批人对该请求采取的行动。
注意: 当审批人和升级审批人的审批均超时,超时错误的详细信息将保存在上下文中的错误对象中,流程将继续执行,而非显示错误页面。
完全批准
注意: 完整审批任务是一项可申请的功能, CI-49772 (通过高级工作流申请访问权限)。 如需申请此功能,请联系您的 IBM 销售代表或 IBM 联系人,并表明您希望启用此功能的意愿。 如果您有相应权限,也可以使用该功能编号提交支持工单。
requestId目的 ——该任务可用于处理针对...生成的审批请求。 requestId 通常包含“发起访问请求审批”之类的任务。
以下是 “完成审批任务”的参数:
表4。 输出参数
名称 描述
completionStatus 请求完成后收到的响应。

用户与身份

身份证明
注: 身份验证任务是一项可请求的功能, VDEV-33143 (向流程设计器提交身份验证任务)。 如需申请此功能,请联系您的 IBM 销售代表或 IBM 联系人,并表明您希望启用此功能的意愿。 如果您有相应权限,也可以使用该功能编号提交支持工单。 IBM® Verify 试用订阅用户无法创建支持工单。

目的 ——身份验证任务提供了一组已配置的工作流,用于在安全环境中捕获和管理身份验证数据。 系统将用户重定向至预先配置的外部服务商,以便用户验证身份。

以下是身份验证任务的参数:
表5。 输入参数
名称 描述
流程 TheFlow”下拉字段列出了所有已配置的身份验证流程。 有关创建新的身份验证流程的更多详细信息,请参阅“管理身份验证”。
操作为必选项 此参数复选框的目的是用于指示现有流程是否可以返回并继续执行其任务。
表6。 输出参数
名称 示例
identityProofingData
{
   "af0a20e3-d6ac-444f-b1cc-68667f59ed31":{
      "vendorId":"bf0a20e3-d6ac-444f-b1cc-68667f59ed31",
      "decision":"approve",
      "processedAttributeMapping":{
         "1":"Joe",
         "2":"Smith",
         "3":"1234 Yellow Lane"
      }
   }
} 
  • af0a20e3-d6ac-444f-b1cc-68667f59ed31 - 身份验证流程的ID。
  • vendorId - 负责校对的供应商的ID(例如,ID Data Web)。
  • decision - 用户是否已通过验证。 取值可以是 approvedeny
  • processedAttributeMapping - 经过处理并验证的用户属性。
idpStatus 用于存储“或”运算结果denyapprove 变量。 identityProofingData这遵循了其中decision 所规定的。
创建用户
以下是 “创建用户 ”任务的参数:
表7。 输入参数
名称 描述 示例
userFormData 用户提交的表单详情。
{
    "userData": {
        "1": "google-oauth2|1033116550041553242@jke.samlfed.com",
        "3": "jessica@jke.com",
        "6": "Jessica",
        "7": "Hill"
    },
    "userAgreements": [],
    "externalData": {},
    "usernameAttribute": ""
}
 
注:userFormData 包含给定属性的 id 属性。 id 的属性名称可在 GET Attributes API 的响应中找到。
表8。 输出参数
名称 描述 示例
用户 系统中创建的用户。 <表示用户详细信息的Scim对象>。
注意: 当任务执行失败时,其详细信息会保存在上下文中的错误对象中,流程将继续执行,而不会显示错误页面。
获取用户
以下是 “获取用户 ”任务的参数:
表9。 输入参数
名称 描述 示例
用户名 要搜索的用户名。
google-oauth2|1033116550041553242@jke.samlfed.com
或任何在流实例运行时可用的属性。
表10。 输出参数
名称 描述 示例
用户 与所提供用户名对应的用户详细信息。 <表示用户详细信息的Scim对象>。
注意: 当任务执行失败时,其详细信息会保存在上下文中的错误对象中,流程将继续执行,而不会显示错误页面。
用户表格

用途 - “用户表单 ”任务提供了一份已配置的用户表单列表,这些表单可用于收集用户数据和获取用户同意。

以下是 “用户表单 ”任务的参数:
表 11。 输入参数
名称 描述
表单 “表单 ”下拉字段列出了所有已配置的用户表单。
操作为必选项 此参数复选框的目的是用于指示现有流程是否可以返回并继续执行其任务。
表12。 输出参数
名称 描述 示例
userFormData 所有用户属性及同意信息均以 JSON 格式存储。
{
    "userData": {
        "1": "google-oauth2|1033116550041553242@jke.samlfed.com",
        "3": "jessica@jke.com",
        "6": "Jessica",
        "7": "Hill"
    },
    "userAgreements": [],
    "externalData": {},
    "usernameAttribute": ""
}
 
注:userFormData 包含给定属性的 id 属性。 id 的属性名称可在 GET Attributes API 的响应中找到。

代码

函数
用途 ——“函数 ”任务用于评估单行或多行表达式并获取结果。 该表达式可用于更新实例变量,以便根据需要应用函数和条件。
先决条件:
  • 该函数使用一组域对象进行评估,包括云目录用户、身份源凭据和属性上下文。 为了使用云目录用户,流程实例运行时应包含 user 通过 “获取用户 ”任务添加的属性, idsuser 该属性用于标识源凭据。 现有的流实例属性是属性上下文的一部分。
  • 必须配置包含规则的策略,以检查 IP 地址或地理位置。

流程设计器支持 requestContextctxidsuseruser 对象来编写自定义函数。

以下是 “函数” 任务的参数:

表13。 输入参数
名称 描述 示例
规则表达式 单行或多行表达式。
  jsonToString({
    "ctx": ctx,
    "idsuser": idsuser,
    "user": user,
    "requestContext": requestContext
  })
 
表14。 输出参数
名称 描述 示例
JSON 所有属性均应以 JSON 格式返回,并可按以下方式@context.propertyName@获取:
{"familyName": "Hill","givenName": "Jessica"}
注意: familyName 该属性可在流程中通过以下方式获取: @context.familyName@
注意: 当任务执行失败时,其详细信息会保存在上下文中的错误对象中,流程将继续执行,而不会显示错误页面。

应用程序和页面

用途

- 当需要在浏览器中渲染页面表单以显示任何用户界面内容时,可以使用“页面”任务。 该任务在下拉菜单中列出了所有已配置的模板。

先决条件: 必须在 “用户体验 ”> “品牌 ”部分自定义主题,否则将恢复为默认设置。

以下是 “页面 ”任务的参数:
表15。 输入参数
名称 描述
主题 主题为用户提供了由“页面”任务显示的页面所呈现的个性化外观和风格。 主题”下拉菜单中列出了所有可用的主题。 可以选择首选主题来打造页面品牌形象。
模板 “模板 ”下拉字段列出了所有已配置的模板。
操作为必选项 此参数复选框的目的是用于指示现有流程是否可以返回并继续执行其任务。
重定向
用途 ——在流程中实现某些节点后,可使用 “重定向 ”任务跳转至任意 URL 页面。
以下是 “重定向” 任务的参数:
表16。 输入参数
名称 描述 示例
URL 必须重定向到的 URL。 https://api.jke.com/resources/ 或任何在流实例运行时可用的属性。
操作为必选项 此参数复选框的目的是用于指示现有流程是否可以返回并继续执行其任务。
注意:
  • 用户可以通过构建表达式,将流程实例的属性作为任务参数进行访问。 要构建表达式,请参阅 “Flow 中的表达式支持 ”。
  • 请参阅 “管理流程实例” 以了解使用执行 URL 触发已发布流程后,任务和决策点之间数据交换的详细信息。