Purge ILM CM Approved Request
Hi all is there a way to purge CLM requests which are in a Approved state but not executable ? My Workflow is simple : I've 1 approver on my Enroll Policy, and I'm not the initiator of the request. So it looks like only the target user can Abort such kind of request !! Is it really true ? Regards Anthony
July 27th, 2010 3:41pm

You should be able to call RequestOperations.Abandon method: http://msdn.microsoft.com/en-us/library/microsoft.clm.provision.requestoperations.abandon.aspx
Free Windows Admin Tool Kit Click here and download it now
July 28th, 2010 1:44am

Hi Anton I already know this... but it's not working due to right problems...but my user is domain admin and I've given him all the ILM rights. It looks like there's a real issue in CM.. My scenario is the following : 1) Domain Admin is the initiator of the request and there's 1 approver 2) Domain Admin is the "Approve Enroll Request" list 3) Then the target user receives an OTP to finish the workflow Now, If I want to abort this request after Approval, it's impossible if I'm not connected as the target user. I need a solution please Regards Anthony
July 28th, 2010 11:35am

Hi Anthony, Unfortunately, once a request has been approved, only users with Execute permissions on that request can perform an Abandon. This can be verified by making a call to the PermissionOperations.AccessCheck function, i.e. PermissionOperations.AccessCheck(request, RequestPermission.Execute). You may want to try making the Abandon call in the context for the CM Service account; it may have permission to execute an Abandon on the request. If that doesn't work, short of hacking the CM database, you will not be able to abandon those requests. Note, if the policy is set up to allow an Enrollment Agent to execute the request, you would be able to Abandon the request as the target user or the enrollment agent. However, once a request has been issued, its security/permissions policy is set on the request according to the policy definition at the time of the request, so modifying a profile template policy to allow an enrollment agent after the request has been issued will not work. Cheers, MarcMarc Mac Donell, ILM MVP, VP Identity and Access Solutions, Avaleris Inc.
Free Windows Admin Tool Kit Click here and download it now
July 30th, 2010 3:33pm

This is a very interesting topic, especially when you compare the CM workflow engine to the FIM workflow engine. As a side note: This is the benefit of the ClmUtils class if you're using the CM MA. It will try to prevent dead requests before allowing a new one to get provisioned.CraigMartin Edgile, Inc. http://identitytrench.com
July 30th, 2010 8:51pm

Hi Craig, It would be very nice to see a Windows Workflow Foundation engine, like the one in the FIM Service, built into the CM component. Unfortunately, that's not the case at the moment, so we're limited to CM's internal workflows. Hopefully, we'll see more flexibility in the future. In terms of ClmUtils class, I know the Create* request calls look for an existing Pending request and blocks if it finds one; in your experience, does the same behaviour occur with if a existing request is an Approved state? Cheers, Marc Marc Mac Donell, ILM MVP, VP Identity and Access Solutions, Avaleris Inc.
Free Windows Admin Tool Kit Click here and download it now
July 30th, 2010 9:28pm

Hi Marc, your're right on the pending request check. Regarding an existing request in the Approved state, I think this would be handled when ClmUtils checks the state of the Profile. There might be a window between Request.Approved and Profile.Status getting updated, but Sync running on a regular basis would arrive at the right Request (or no Request) as soon as the Profile.Status was updated.CraigMartin Edgile, Inc. http://identitytrench.com
July 30th, 2010 10:23pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics