Class GrouperDuoCommands

java.lang.Object
edu.internet2.middleware.grouperDuo.GrouperDuoCommands

public class GrouperDuoCommands extends Object
  • Constructor Details

    • GrouperDuoCommands

      public GrouperDuoCommands()
  • Method Details

    • main

      public static void main(String[] args)
      Parameters:
      args -
    • retrieveGroupIdFromGroupName

      public static String retrieveGroupIdFromGroupName(String groupName)
      Parameters:
      groupName -
      Returns:
      the groupName
    • retrieveUserIdFromUsername

      public static String retrieveUserIdFromUsername(String username)
      Parameters:
      username -
      Returns:
      the userId
    • retrieveDuoUserByIdOrUsername

      public static net.sf.json.JSONObject retrieveDuoUserByIdOrUsername(String theId, boolean isDuoUuid, Integer timeoutSeconds)
      retrieve duo user
      Parameters:
      theId -
      isDuoUuid - true if id, false if username
      timeoutSeconds - null if no timeout
      Returns:
      the json object
    • updateDuoGroup

      public static net.sf.json.JSONObject updateDuoGroup(String groupId, String groupDescription, boolean isIncremental)
      Parameters:
      groupId -
      groupDescription -
      isIncremental -
      Returns:
      the json object
    • assignUserToGroup

      public static net.sf.json.JSONObject assignUserToGroup(String userId, String groupId, boolean isIncremental)
      Parameters:
      userId -
      groupId -
      isIncremental -
      Returns:
      the json object
    • userInGroup

      public static boolean userInGroup(String userId, String groupId, boolean isIncremental)
      Parameters:
      userId -
      groupId -
      isIncremental -
      Returns:
      the json object
    • removeUserFromGroup

      public static net.sf.json.JSONObject removeUserFromGroup(String userId, String groupId, boolean isIncremental)
      Parameters:
      userId -
      groupId -
      isIncremental -
      Returns:
      the json object
    • retrieveUsersForGroup

      public static Map<String,GrouperDuoUser> retrieveUsersForGroup(String groupId)
      Parameters:
      groupId -
      Returns:
      the map from username to grouper user object
    • retrieveGroups

      public static Map<String,GrouperDuoGroup> retrieveGroups()
      get all groups, loop through pages
      Returns:
      the name of group mapped to group
    • createDuoGroup

      public static net.sf.json.JSONObject createDuoGroup(String groupName, String groupDescription, boolean isIncremental)
      create duo group
      Parameters:
      groupName -
      groupDescription -
      isIncremental - incremental or full (for logging)
      Returns:
      the json object
    • deleteDuoGroup

      public static net.sf.json.JSONObject deleteDuoGroup(String groupId, boolean isIncremental)
      delete duo group
      Parameters:
      groupId -
      isIncremental - incremental or full (for logging)
      Returns:
      the json object
    • alreadyExisted

      public static boolean alreadyExisted(net.sf.json.JSONObject jsonObject)
      Parameters:
      jsonObject -
      Returns:
      true if already exists
    • assignUserToGroupIfNotInGroup

      public static net.sf.json.JSONObject assignUserToGroupIfNotInGroup(String userId, String groupId, boolean isIncremental)
      Parameters:
      userId -
      groupId -
      isIncremental -
      Returns:
      the json object
    • retrieveGroupsForUser

      public static Map<String,GrouperDuoGroup> retrieveGroupsForUser(String userId, boolean isIncremental)
      Parameters:
      userId -
      isIncremental -
      Returns:
      the map of groups for the user
    • createNewAdminAccount

      public static GrouperDuoAdministrator createNewAdminAccount(String name, String emailAddress, String password, String phoneNumber, String role, boolean requirePasswordChange, boolean isActive)
      Parameters:
      name -
      emailAddress -
      password -
      phoneNumber -
      role -
      requirePasswordChange -
      isActive -
      Returns:
      Throws:
      RuntimeException
    • retrieveAdminAccounts

      public static Map<String,GrouperDuoAdministrator> retrieveAdminAccounts()
    • retrieveAdminAccount

      public static GrouperDuoAdministrator retrieveAdminAccount(String adminId)
      Retrieve a GrouperDuoAdministrator object from the API.
      Parameters:
      adminId -
      Returns:
      GrouperDuoAdministrator object, or null if no administrator was found
      Throws:
      RuntimeException - when an unexpected response is received.
    • startAdminUpdateRequest

      public static com.duosecurity.client.Http startAdminUpdateRequest(GrouperDuoAdministrator admin)
    • updateAdminStatus

      public static void updateAdminStatus(com.duosecurity.client.Http request, boolean isActive)
    • updateAdminRole

      public static void updateAdminRole(com.duosecurity.client.Http request, String role)
    • updateAdminName

      public static void updateAdminName(com.duosecurity.client.Http request, String name)
    • executeAdminUpdateRequest

      public static void executeAdminUpdateRequest(GrouperDuoAdministrator admin, com.duosecurity.client.Http request)
    • deleteAdminAccount

      public static void deleteAdminAccount(String adminId)