如何在SailPoint IIQ中批量终止/移除用户身份?
SailPoint IIQ 批量终止/移除身份操作说明
SailPoint IIQ 原生支持千级规模的服务身份、共享身份、特权身份批量终止/移除操作,你手头近1K待清理身份的处理需求完全可以覆盖,不需要逐个人工操作,生产环境常用的批量处理方式有三种:
- 控制台原生批量操作
进入身份列表页,通过身份类型、自定义标签、属性筛选规则定位到所有待清理的三类身份,支持直接选中全量筛选结果,在顶部批量操作菜单选择「Terminate Identity(终止身份)」或「Remove Identity(移除身份)」即可。提交后任务会进入后台异步队列执行,操作前可触发预校验,自动提示存在关联待办、绑定特权账号依赖的异常身份,避免误操作。1K量级的任务执行时长通常在10分钟以内,不会阻塞控制台正常使用。 - 自定义规则批量执行
如果你已经整理好了固定的待清理身份ID/唯一标识清单,可以在IIQ调试页面运行BeanShell规则,直接调用原生身份接口完成批量处理,核心逻辑参考:
执行规则前必须先在测试环境用小批量样本验证逻辑,生产环境执行前做好全量数据备份,不要随意跳过关联资源的校验逻辑。import sailpoint.object.Identity; import sailpoint.api.IdentityService; import java.util.Arrays; import java.util.List; // 替换为你整理的待清理身份唯一ID列表 List<String> targetIdentityIds = Arrays.asList("identityId_001","identityId_002"/* 补全剩余ID */); IdentityService idService = new IdentityService(context); for (String id : targetIdentityIds) { Identity targetId = context.getObject(Identity.class, id); if (targetId != null) { // 二选一:terminateIdentity 为保留全量审计轨迹的逻辑终止,会自动触发关联权限/账号回收 // deleteIdentity 为不可恢复的物理删除,无特殊审计要求不建议使用 idService.terminateIdentity(targetId, null); } } context.commitTransaction(); - 生命周期流程批量触发
如果这三类待清理身份有统一的属性标记(比如已打上「待下线」标签、归属于特定的业务Owner),可以配置一条生命周期状态流转规则,批量匹配目标身份后自动触发状态变更为「已终止」,系统会自动走完权限回收、关联账号注销、审计留痕全流程,这种方式更适合后续常态化的冗余身份清理场景。
注意事项:1K量级属于IIQ常规支持的批量处理规模,不需要额外做性能调优,但不要在前台页面同步触发删除操作,优先走后台异步任务或规则执行通道,避免前端请求超时。如果待清理身份绑定了PAM特权账号,建议先在特权管理模块完成账号核验再触发身份终止,避免残留未回收的幽灵权限。
内容的提问来源于stack exchange,提问作者Helme A
相关产品推荐
相关产品推荐

