Dear Community,
Introduction
This is about adding a Feature to make enablement/disablement of accounts requestable in IdentitySecurityCloud after the necessary approvals.
Background
Firstly, let us understand the need of such feature to have users to request disablement/enablement of accounts for other users when they are automatically managed by Lifecycle state process.
Is it risky?
Well, I don’t think so when we safeguard these requests with right approvals and right segmentation controls in place.
Is it necessary?
Here are few reasons what I think can be legit for such a feature:
- Emergency Termination
We can have an Emergency lifecycle state, which could disable all the accounts of the Identity. But, if application admin team needs to disable only particular source account of the user, the current option is to have a ticket raised to respective IAM Operations team who can manually disable the account on Identity.
It may cause delays in servicing the ticket/request from the operations. Providing an approach to request for disablement/enablement of account to a source admin team speeds up the process.
- License Management
Application teams often need to keep an eye on licenses of the accounts and balance them accordingly. Team could use a feature to manually place disablement of account which can save licenses based on the usage
- Inactivity Management
Last logged Date is a key information which is not mandatorily available for all the connectors. When there is a need for admin team of application to inactivate the accounts based on the information at the target system, requesting them in IdentitySecurityCloud can be a good option.
These are some cases that I could think of as a start, there could be many other. We do not have an out-of-the-box way in ISC to make this happen by any request process.
Solution Design
I utilized the Role and Workflow feature to achieve what is needed.
Workflow Design:
- Roles
Defined Two Roles(I call them as Source Activity Roles) for the source for enabling and disabling the account respectively as below. We can either define segmentation to have these roles requested by an application admin/owner team. Or can be safeguarded by approvals. Please note that the level of approvals can vary and can be defined based on the requirements for each source role.
-Disable Account
-Enable Account
Note:
Strict naming convention is followed for this requirement to achieve the needed scenario and make it as generic as possible.
- Workflow
Developed workflow to handle the access requests with below high level module requirements:
Trigger(Access Request Decision):
- To detect the access requests requested for the defined Source Activity Roles
- To verify if the request is completed and approved
Action:
- Identify the Source and action type(disable/enable) requested. Defined variables to capture the source name and action type based on the role requested
- Get the current accounts of the user and perform a loop operation on the identified source accounts
- Perform the respective action(disable/enable) on the account based on the role requested
- Revoke the source activity role for the user as it is needed to be cleared to have it requested again for another day
Thank you!
Uday Kilambi