生命周期工作流 API 概述
生命周期工作流是 Microsoft Entra ID 中的标识治理服务,使组织能够在三个级别为用户自动执行基本生命周期流程:
- Joiner:当个人进入需要访问权限的范围时;例如,加入公司或组织的新员工。
- Mover:当个人在组织内的边界之间移动时;例如,从事市场营销的用户现在是销售组织的成员。 此移动可能需要更多访问权限或授权,或者吊销其他特权。
- 离开者:当个人离开需要访问权限的范围时,可能需要撤销访问权限,并取消预配用户。 例如,即将退休或终止的员工。
因此,生命周期工作流可称为 Joiner-Mover-Leaver (JML) 工作流。
使用 Microsoft Graph 中的生命周期工作流 API,可以自动执行组织的生命周期工作流功能。 本文介绍了在 Entra ID Microsoft 中启用生命周期工作流服务的 API 集。
生命周期工作流 API 在 OData 子名称空间 microsoft.graph.identityGovernance 中定义。
注意
本文介绍如何从设备或服务导出个人数据。 这些步骤可用于支持一般数据保护条例 (GDPR) 下的义务。 授权租户管理员可以使用 Microsoft Graph 更正、更新或删除有关最终用户的可识别信息,包括客户和员工用户配置文件或个人数据,如用户名、工作职务、地址或电话号码,在 Microsoft Entra ID 环境中。
工作流
工作流是管理组织中用户生命周期所涉及的流程的容器。 其核心是任务和执行条件。
若要创建工作流,建议使用 预定义工作流模板之一。
工作流模板
Microsoft Entra ID 提供以下预定义工作流模板,这些模板定义任务和执行条件组合的模板,这些模板可以是工作流的一部分。 可以使用工作流模板以编程方式创建工作流。
工作流模板类型 | 生命周期类别 |
---|---|
加入预聘员工 | 木匠 |
加入新员工 | 木匠 |
入职后新员工 | 木匠 |
实时员工更改 | Mover |
实时员工解雇 | 离开器 |
员工预离职 | 离开器 |
员工下船 | 离开器 |
员工离职后 | 离开器 |
使用 workflowTemplate 资源类型 及其关联方法标识预配置模板及其支持的任务和执行条件,并复制并使用模板以编程方式 创建工作流 。
常规工作流信息
每个工作流都包含一般描述性信息,例如其标识符、名称、说明,以及它是启用按计划运行还是按需运行。
工作流任务
工作流任务是触发工作流时自动运行的特定操作。 生命周期工作流定义指定工作流类别允许的以下预配置和只读任务。 这些任务定义显示任务类型的设置,指导你为工作流创建任务。
生命周期工作流当前支持以下任务:
任务 | taskdefinitionID | 类别 |
---|---|---|
向新员工发送欢迎电子邮件 | 70b29d51-b59a-4773-9280-8841dfd3f2ea | 木匠 |
发送载入提醒电子邮件 | 3C860712-2D37-42A4-928F-5C93935D26A1 | 木匠 |
生成临时访问密码并通过电子邮件发送给用户的经理 | 1b555e50-7f65-41d5-b514-5894a026d10d | 木匠 |
请求用户访问权限包分配 | c1ec1e76-f374-4375-aaa6-0bb6bd4c60be | Joiner、Mover |
发送电子邮件以通知管理员用户移动 | aab41899-9972-422a-9d97-f626014578b7 | Mover |
将用户添加到组 | 22085229-5809-45e8-97fd-270d28d66910 | Joiner、Leaver、Mover |
将用户添加到团队 | e440ed8d-25a1-4618-84ce-091ed5be5594 | Joiner、Leaver、Mover |
启用用户帐户 | 6fc52c9d-398b-4305-9763-15f42c1676fc | Joiner、Leaver |
运行自定义任务扩展 | 4262b724-8dba-4fad-afc3-43fcbb497a0e | Joiner、Leaver、Mover |
禁用用户帐户 | 1dfdfcc7-52fa-4c2e-bf3a-e3919cc12950 | 离开器 |
从所选组中删除用户 | 1953a66c-751c-45e5-8bfe-01462c70da3c | Joiner、Leaver、Mover |
从所有组中删除用户 | b3a31406-2a15-4c9a-b25b-a658fa5f07fc | 离开器 |
从团队中删除用户 | 06aa7acb-01af-4824-8899-b14e5ed788d6 | Joiner、Leaver、Mover |
从所有团队中删除用户 | 81f7b200-2816-4b3b-8c5d-dc556f07b024 | 离开器 |
删除用户的所有许可证分配 | 8fa97d28-3e52-4985-b3a9-a1126f9b8b4e | 离开器 |
删除用户的访问包分配 | 4a0b64f2-c7ec-46ba-b117-18f262946c50 | Leaver、Mover |
删除用户的所有访问包分配 | 42ae2956-193d-4f39-be06-691b8ac4fa1d | 离开器 |
取消用户的所有挂起的访问包分配请求 | 498770d9-bab7-4e4c-b73d-5ded82a1d0b3 | 离开器 |
删除用户 | 8d18588d-9ad3-4c0f-99d0-ec215f0e3dff | 离开器 |
在用户最后一天之前向经理发送电子邮件 | 52853a3e-f4e5-4eb8-bb24-1ac09a1da935 | 离开器 |
在用户上一天发送电子邮件 | 9c0a1eaf-5bda-4392-9d9e-6e155bb57411 | 离开器 |
在用户最后一天之后向用户经理发送卸载电子邮件 | 6f22ddd4-b3a5-47a4-a846-0d7c201a49ce | 离开器 |
使用 taskDefinition 资源类型 及其关联方法发现可为工作流配置的所有预定义任务以及属性设置。 任务资源类型及其关联的 GET 方法可用于查看为工作流配置的任务。
执行条件
对于每个工作流任务,都有一个执行条件,用于定义工作流及其关联任务运行的“who” 范围 以及“何时” 触发器 。 例如,如果员工在 R&D 部门,则执行条件可以指定在离职员工就业结束日期前 7 天运行工作流。 工作流中的关联任务可以指定从 R&D 团队和组中删除用户。
⁄⁄Sample snippet for the executionConditions object
"executionConditions": {
"@odata.type": "#microsoft.graph.identityGovernance.triggerAndScopeBasedConditions",
"scope": {
"@odata.type": "#microsoft.graph.identityGovernance.ruleBasedSubjectSet",
"rule": "department eq 'R&D'"
},
"trigger": {
"@odata.type": "#microsoft.graph.identityGovernance.timeBasedAttributeTrigger",
"timeBasedAttribute": "employeeLeaveDateTime",
"offsetInDays": -7
}
}
创建或更新工作流时,请使用 workflowExecutionConditions 资源类型 来配置执行条件。 使用此对象还可以配置仅按需运行的工作流。
创建和管理工作流
确定要为工作流定义的任务和执行条件后,请使用 工作流资源类型及其关联的方法来创建和管理工作流。 一个租户中最多可以创建 100 个工作流。 任务的类别必须与工作流的类别匹配。 每个工作流最多可以有 25 个任务。 因此:
- 仅支持“leaver”工作流类别的任务不能在“joiner”或“mover”工作流方案中指定,反之亦然。
- 可以在“joiner”、“mover”或“leaver”工作流方案中指定支持“joiner”、“mover”和“leaver”工作流类别的任务。
可以根据 租户范围的计划 来计划工作流运行,也可以按需运行工作流。 租户计划可以处理计划的新员工和解雇,而你可以立即按需运行工作流,以在发生敏感事件时终止员工的访问权限。
工作流版本
使用工作流时,可能需要更新工作流的执行条件和任务。 但是,生命周期工作流不允许更新现有工作流的这些属性。
使用 workflowVersion 资源类型 及其关联方法基于现有工作流对象创建和管理新的工作流版本,而不是创建新的工作流。 工作流版本可以有一组类似或不同的任务和执行条件。
报表
生命周期工作流支持广泛的报告功能,用于跟踪工作流运行级别、任务级别和用户级别的工作流处理状态。
有关生命周期工作流的报告功能的详细信息,请参阅 生命周期工作流报告 API 概述。
扩展
有时,内置任务可能不足以满足所有业务方案。 为了扩展生命周期管理方案,生命周期工作流支持定义自定义任务,以便通过 Azure 逻辑应用与外部系统集成。 例如,对于“离开者”方案,你可能还希望向用户的经理授予对用户电子邮件帐户的访问权限。
使用 customTaskExtension 资源类型 及其关联方法定义 Azure 逻辑应用的设置。
设置
运行所有计划工作流时,每个租户定义租户范围的 计划 。 租户可以采用 Microsoft Entra ID 定义的默认计划,其中工作流每隔三小时运行一次,或者将计划修改为在 1 小时到 24 小时之间运行。
许可证检查
使用此功能需要Microsoft Entra ID 治理许可证。 若要查找符合要求的正确许可证,请参阅 比较 Microsoft Microsoft Entra ID 的正式版功能。