Project

General

Profile

Actions

Defect #1250

closed

End of contract didn't remove roles from the system

Added by Alena Peterová over 6 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Vít Švanda
Category:
Provisioning
Target version:
-
Start date:
09/12/2018
Due date:
% Done:

0%

Estimated time:
Affected versions:
Owner:

Description

Version 8.1.6, AD connector 1.3.4.25 (newest)

This problem occurred only in 2 out of 5 attempts to simulate it, but the result is a security problem.
Sorry about the complicated use-case :-(

Starting situation:
  • System "AD user" has the multivalued attribute "ldapGroups" with the strategy "Merge"
  • System "AD user" has the attribute "__ENABLED__", which is filled by a script, which returns false, if the identity is disabled or if the account is in protection.
  • One role "AD uživatel" which grants account on the system "AD user"
  • Second role "AD group" which adds one group in the system "AD users" = it fills the attribute "ldapGroups" with its value
  • These two roles are automatic by organization structure for a position P
  • A user has an active contract on the position P (so he has an active AD account with 1 group)
  • The password for the AD account was changed by IdM
The problem:
  • The contract of the user is ended in HR and set to excluded
  • The synchronization of the contracts sets the contract "valid till"="31.12.2016", "state"="EXCLUDED" and automatically sets the validity of both roles to the past (see contracted_position.png, assigned_roles.png)
  • IdM disables the AD account (it correctly sends "__ENABLED__" = false), but it doesn't clear the groups (even though the provisioning operation contains empty ldapGroups in the left table - see provisioning_log.png)
  • After some minutes, HrEndContractProcess (started at the end of sync) removes both roles from the identity, but sends no other AD operation (because it's in protection)

I attached also audit_log.png and entity_events.png which correspond to my use case.

I set the category to provisioning, because it looks like a problem in computing the attributes (IdM knew that ldapGroups should be empty, but didn't send them, even though they were not empty on the system).

Please note that if the user has some manually assigned roles, everything worked well (I tried it several times). These roles were removed as late as HrEndContractProcess.


Files

assigned_roles.png (37.3 KB) assigned_roles.png Alena Peterová, 09/12/2018 04:32 PM
audit_log.png (73.6 KB) audit_log.png Alena Peterová, 09/12/2018 04:32 PM
entity_events.png (48.4 KB) entity_events.png Alena Peterová, 09/12/2018 04:32 PM
provisioning_log.png (44.4 KB) provisioning_log.png Alena Peterová, 09/12/2018 04:32 PM
contracted_position.png (24.7 KB) contracted_position.png Alena Peterová, 09/12/2018 04:32 PM

Related issues

Related to IdStory Identity Manager - Task #1298: Merge strategy does not support change of value for system ClosedVít Švanda10/08/2018

Actions
Actions

Also available in: Atom PDF