As an administrator, you can leverage EmpowerID to automate the process of deactivating and retiring stale Active Directory user accounts based on your organization’s security policies. Rather than relying on time-consuming and potentially risky manual methods or scripts to mark accounts as inactive, disabling and deleting them based on policy, you can configure a few simple settings in EmpowerID. Not only does this remove the burden and risks associated with other methods, it provides a safety net to mitigate against accidental deletion of any user account by first marking the accounts for deactivation and notifying the managers of those users, as well as other administrators, that the accounts have been identified for cleanup. The managers and administrators must give approval before EmpowerID does anything further with them. If approved, EmpowerID moves those accounts into a designated OU within your Active Directory, where they remain until their deletion undergoes a multi-step approval process. Accounts not approved for deletion are moved back to their originating OU. Additionally, EmpowerID provides “mock run” capabilities that allow you to generate reports of what would occur in your environment using this feature.
The process involves a number of account store and resource system settings, EmpowerID system settings and permanent workflows. Each of these can be enabled and configured to run based on your own particular security needs. These settings and permanent workflows, and their function within the cleanup process include the following.
Process Flow
SubmitAccountTerminations workflow
The workflow claims account stores where CleanUpEnabled is set to true and gets the following SetGroup GUIDS from Resource System Config Settings in order to process those groups:
TerminationNotProcessedSetGroupGUID — To Move and Disable
TerminationBeforeProcessingSetGroupGUID — To notify before Move and Disable
TerminationProcessedSetGroupGUID — To Terminate. Processes one account store at a time, claiming all accounts in an account store that is in the SetGroup
The workflow checks if CleanUpReportModeOnly is turned off and whether CleanUpStaleAccountOU has a valid External OrgZone.
If the CleanUpStaleAccountOU setting on the account store is not valid, the account store is ignored. No accounts will be disabled and moved.
If number of accounts of the account store is under the ThresholdOnAccounts Resource System Config Setting value, EmpowerID moves the accounts to the OU specified by the CleanUpStaleAccountOU setting.
When an account is moved, the AccountOrganizationStatusID is set to 5 (Transfer) and the TransferDate is set to current date and time on the account.
If the DisabledAccountOnMove setting on the Workflow parameters is set to true, the accounts are disabled when moved.
Emails are sent to manager and admin after the account is moved. EmailTemplateManagerMoveNotification and EmailTemplateAdminMoveNotification are used as templates to send emails.
The AdminManagementRoleGuids workflow parameter determines which admin users should receive the email notification.
When number of accounts in the account store reaches the specified threshold, the workflow creates a task for all people belonging to the Management Role specified by ApprovalApproverManagementRoleGUID setting to select and approve each account to be terminated. This is done by Invoking SubmitAccTerminationsApproval workflow.
Once a task is created for a AccountStore, “TaskApprovalPendingStatus” ResourceSystemConfigSetting is set to true. This prevents from creating task again and again.
If the task is approved, all the accounts selected from the Task Approval Form are disabled, moved and “TaskApprovalPendingStatus” setting is set to false.
Accounts that needs to be notified before moving will be processed one by one to send email notifications to Admin and Manager. “EmailTemplateManagerPreMoveNotification”, “EmailTemplateAdminPreMoveNotification” are used as templates to send emails.
Once the emails are sent, an AssigneeNotification is inserted for that Account and will not be claimed again to send notifications before moving accounts.
The Accounts that we claimed earlier to Terminate will be processed by Invoking TerminateAccountAdvanced Workflow for each Account to Terminate.
If CleanUpReportModeOnly is set to true, all the above steps are ignored and the account’s AccountOrganizationStatusID is set to 3 (TerminationPending). This logs everything that the workflow would do if Report Only Mode was turned off.
SubmitAccountTerminations workflow
This workflow claims the account, terminates it and sets the AccountOrganizationStatusID = 2.
Once the account is terminated, it checks the NotifyManager and NotifyAdminManagementRole settings in order to send emails to all specified admins and managers.
The workflow gets the template from the EmailTemplateManagerDeletionNotification setting in order to send emails to managers.
The workflow gets the template from the EmailTemplateAdminDeletionNotification to send emails to admin users.
The workflow send emails to each person in the SetGroup specified by the AdminManagementRoleGuids setting.