Class GrouperDuoCommands
java.lang.Object
edu.internet2.middleware.grouperDuo.GrouperDuoCommands
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic booleanalreadyExisted(net.sf.json.JSONObject jsonObject) static net.sf.json.JSONObjectassignUserToGroup(String userId, String groupId, boolean isIncremental) static net.sf.json.JSONObjectassignUserToGroupIfNotInGroup(String userId, String groupId, boolean isIncremental) static net.sf.json.JSONObjectcreateDuoGroup(String groupName, String groupDescription, boolean isIncremental) create duo groupstatic GrouperDuoAdministratorcreateNewAdminAccount(String name, String emailAddress, String password, String phoneNumber, String role, boolean requirePasswordChange, boolean isActive) static voiddeleteAdminAccount(String adminId) static net.sf.json.JSONObjectdeleteDuoGroup(String groupId, boolean isIncremental) delete duo groupstatic voidexecuteAdminUpdateRequest(GrouperDuoAdministrator admin, com.duosecurity.client.Http request) static voidstatic net.sf.json.JSONObjectremoveUserFromGroup(String userId, String groupId, boolean isIncremental) static GrouperDuoAdministratorretrieveAdminAccount(String adminId) Retrieve a GrouperDuoAdministrator object from the API.static Map<String,GrouperDuoAdministrator> static net.sf.json.JSONObjectretrieveDuoUserByIdOrUsername(String theId, boolean isDuoUuid, Integer timeoutSeconds) retrieve duo userstatic StringretrieveGroupIdFromGroupName(String groupName) static Map<String,GrouperDuoGroup> get all groups, loop through pagesstatic Map<String,GrouperDuoGroup> retrieveGroupsForUser(String userId, boolean isIncremental) static StringretrieveUserIdFromUsername(String username) static Map<String,GrouperDuoUser> retrieveUsersForGroup(String groupId) static com.duosecurity.client.Httpstatic voidupdateAdminName(com.duosecurity.client.Http request, String name) static voidupdateAdminRole(com.duosecurity.client.Http request, String role) static voidupdateAdminStatus(com.duosecurity.client.Http request, boolean isActive) static net.sf.json.JSONObjectupdateDuoGroup(String groupId, String groupDescription, boolean isIncremental) static booleanuserInGroup(String userId, String groupId, boolean isIncremental)
-
Constructor Details
-
GrouperDuoCommands
public GrouperDuoCommands()
-
-
Method Details
-
main
- Parameters:
args-
-
retrieveGroupIdFromGroupName
- Parameters:
groupName-- Returns:
- the groupName
-
retrieveUserIdFromUsername
- 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 usernametimeoutSeconds- 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
- 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
- Parameters:
groupId-- Returns:
- the map from username to grouper user object
-
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
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
-
retrieveAdminAccount
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
-
updateAdminStatus
public static void updateAdminStatus(com.duosecurity.client.Http request, boolean isActive) -
updateAdminRole
-
updateAdminName
-
executeAdminUpdateRequest
public static void executeAdminUpdateRequest(GrouperDuoAdministrator admin, com.duosecurity.client.Http request) -
deleteAdminAccount
-