批量禁用OIM中的用户

时间:2017-09-12 19:19:31

标签: oim

我有一个在OIM 11g r2 PS2中过期的用户列表。我正在寻找一种方法来批量禁用这些用户,从而试图禁用他们的AD和Exchange帐户。有很多,我不想一个接一个地禁用它们。我需要一种方法来

  1. 调用一个任务,该任务将使用预期的结束日期和我指定的其他条件查找每个过期的用户,然后禁用它们
  2. OR

    1. 调用将使用usr_key或usr_login调用csv文件的任务,然后禁用帐户。我可以创建一个powershell ecript来处理AD部分,但我真的想要一个进程在oim中执行此操作而无需编写SQL查询来从后端执行此操作。
    2. 由于

2 个答案:

答案 0 :(得分:0)

据我所知,没有OOTB任务可以解决这个问题。您可以编写一个简短的应用程序来读取您的用户列表,使用OIM客户端库连接到OIM,并使用UserManager API对这些用户执行BulkDisable。

这是一个简短的代码段

final UserManager um = oimclient.getService(UserManager.class);

final ArrayList<String> lstUsers = 
    new ArrayList<>(Arrays.asList("LOGIN1", "LOGIN2", "LOGIN3"));
um.disable(lstUsers, true);    //true means the list contains logins, not user keys

答案 1 :(得分:0)

OIM中有一个调度程序“在结束日期后禁用/删除用户”,这应该照顾您禁用结束日期已过的用户的方案。 此计划任务将禁用在任务运行时结束日期已超过当前日期的用户帐户 一旦用户在OIM中被禁用,则自动禁用AD / Exchange。