管理实体
学习目标
管理实体。
管理目标系统中实体(用户或组)在其从源系统删除后的删除操作。
场景与解决方案
场景 |
解决方案 |
|---|---|
场景 1实体同时存在于源系统和目标系统中。您首次运行预配作业。结果是,Identity Provisioning 从源系统读取该实体并在目标系统上更新它。您从源系统删除相关实体。您运行另一个预配作业,该作业成功完成。然而,该服务将相关实体识别为"先前已存在"的实体,因此不会将其从目标系统删除。 |
对于在源系统和目标系统之间同步实体的删除操作(如场景 1、2 和 3 中所述),建议采用以下步骤序列:您已在系统之间运行成功的预配作业(Read 或 Resync)。从源系统删除一个实体。在目标系统的 Properties 选项卡上,添加 ips.delete.existedbefore.entities 属性并将其值设置为 true。运行一个预配作业。验证相关实体已从目标系统删除。如果该属性是事后设置的,那么被识别为"先前已存在"的实体将无法再从目标系统删除。在这种情况下,您必须从目标系统中删除它们(例如手动或通过脚本)。ips.delete.existedbefore.entities 是一个可选属性,可以在每个目标系统上设置。您可以用它来控制是否应从目标系统删除被识别为"先前已存在"的实体。当用户(例如员工)在源系统中不再处于活动状态,并且其可用性和权限必须从相关目标系统中移除时,出于安全和法律原因,这一点很重要。 |
场景 2实体在两个系统中都不存在(源系统和目标系统均无)。您在系统之间运行预配作业(Read 或 Resync)。您将该实体添加到源系统。同一实体被添加(手动或通过脚本)到目标系统。您运行一个新的预配作业。结果是,Identity Provisioning 从源系统读取该实体并在目标系统中更新它。您从源系统删除相关实体。您运行另一个预配作业,该作业成功完成。然而,该服务将相关实体识别为"先前已存在"的实体,并且不会将其从目标系统删除。 |
|
场景 3实体仅存在于源系统中。您至少运行一个预配作业。结果是,Identity Provisioning 读取该实体并在目标系统中创建它。您重置了其中一个系统。您运行一个新的预配作业。结果是,Identity Provisioning 从源系统读取该实体(但对其"无感知",也就是说,它的行为就像首次读取该实体一样),并在目标系统中对其进行完整更新。您从源系统删除相关实体。您运行另一个预配作业,该作业成功完成。然而,该服务将相关实体识别为"先前已存在"的实体,并且不会将其从目标系统删除。 |
|
场景 4实体同时存在于源系统和目标系统中。(它并非由 Identity Provisioning 服务在目标系统上创建。)目标转换中未设置诸如(ignore 或 skipOperations)之类的条件或表达式。您运行一个成功的 Read 作业。结果是,Identity Provisioning 更新目标系统上现有的实体。您从源系统删除该实体。您运行一个预配作业,该作业以错误结束。结果是,相关实体尚未从目标系统删除。在作业日志中,您会看到源系统上存在失败的实体(用户或组)。这意味着该作业在尝试从源系统读取它们时失败了。 |
解决源系统中失败的实体。在目标系统的 Properties 选项卡上,添加 ips.delete.existedbefore.entities 属性并将其值设置为 true。在系统之间运行一个成功的 Read 作业。验证相关实体已从目标系统删除。注意即使作业因目标系统上的错误而失败,只要从源系统的读取成功,该服务仍会从目标系统删除该实体。 |
场景 5实体存在于源系统中,并已由 Identity Provisioning 服务预配到目标系统。目标转换中未设置诸如(ignore 或 skipOperations)之类的条件或表达式。您从源系统删除该实体。您运行一个预配作业,该作业以错误结束。结果是,相关实体尚未从目标系统删除。在作业日志中,您会看到源系统上存在失败的实体(用户或组)。这意味着该作业在尝试从源系统读取它们时失败了。 |
解决源系统中失败的实体。在系统之间运行一个成功的 Read 作业。验证相关实体已从目标系统删除。注意即使作业因目标系统上的错误而失败,只要从源系统的读取成功,该服务仍会从目标系统删除该实体。 |
场景 6实体存在于源系统中,并已由 Identity Provisioning 服务预配到目标系统。目标转换中未设置诸如(ignore 或 skipOperations)之类的条件或表达式。您从源系统删除一个实体。您运行一个 delta read 作业,该作业成功完成。然而,相关条目尚未从目标系统删除。这是因为 delta read 作业不会考虑已删除的用户。)。 |
在源系统的 Properties 选项卡上,将 ips.delta.read 属性设置为 false。或者,根据您为属性 ips.full.read.force.count 设置的数字,您可以等待下一个计划的 full job 启动(如果它即将到来)。运行一个新的预配作业(或等待其自动运行)。它将是一个 full read 作业。验证相关实体已从目标系统删除。(可选)如果您希望继续运行 delta read 作业,请转到 ips.delta.read 属性并将其重新设置为 true。 |