Hello!
I am trying to implement user lifecycle with script connector, and I see attributes missing at delete user time (i.e. deleting user via openiam gui: administrative action: delete β perform now).
Below example of user connector attribute at add user time (via csv synchronization):
{
"identityName" : "userName",
"identityValue" : "CRISTHIAN.TEST",
"originalIdentityValue" : "CRISTHIAN.TEST",
"attributes" : [ {
"name" : "startDateTime",
"values" : [ {
"value" : "1759755070150",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "lastName",
"values" : [ {
"value" : "TEST",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "status",
"values" : [ {
"value" : "ACTIVE",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "displayName",
"values" : [ {
"value" : "CRISTHIAN TEST",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "userId",
"values" : [ {
"value" : "8a8081d0997861570199a645311a00da",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "jobTitle",
"values" : [ {
"value" : "ASESOR DE TIENDAS",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "firstName",
"values" : [ {
"value" : "CRISTHIAN",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "groups",
"values" : [ {
"value" : "EJECUTIVOTEL38,TG Invoice Reception,TG N Gestion de Reclamos,TG N V360 - View Paraguay",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "email",
"values" : [ {
"value" : "CRISTHIAN2@OPENIAM.COM",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "eventUUID",
"values" : [ {
"value" : "c212e655-24e7-510b-89bb-7dde32d6eca7",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "id",
"values" : [ {
"value" : "11114",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "role.name",
"values" : [ {
"value" : "ASESOR DE TIENDAS",
"operation" : "REPLACE"
} ],
"primaryKey" : false
} ],
"operation" : "REPLACE",
"type" : "USER",
"metaData" : {
"requestID" : "79f13f85107f453683862e2c585a9aaa",
"executionMode" : null,
"managedSystemId" : "8a808178953d149801956809b4d243e8",
"url" : "http://openiam-catcher.dev-k8s.telecel.net.py",
"port" : 80,
"communicationProtocol" : "CLEAR",
"login" : "test",
"password" : "test",
"attributes" : [ {
"name" : "managedSystemName",
"values" : [ {
"value" : "Siebel",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "managedSystemType",
"values" : [ {
"value" : "CRM",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "DELETE_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/SiebelUserDelete.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "ADD_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/SiebelUserAdd.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "MODIFY_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/SiebelUserAdd.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "SEARCH_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/SearchUser.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "SEARCH_SCOPE",
"values" : [ {
"value" : "SUBTREE_SCOPE",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "TEST_CONNECTION_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/TestConnection.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "SUSPEND_HANDLER",
"values" : [ {
"value" : "/connector/groovy/example/user/SuspendScriptConnector.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "RESUME_HANDLER",
"values" : [ {
"value" : "/connector/groovy/example/user/ResumeScriptConnector.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
} ]
},
"userPassword" : null,
"changePrimaryKey" : false
}
Below, example of user connector object at delete time:
{
"identityName" : "userName",
"identityValue" : "CRISTHIAN.TEST",
"originalIdentityValue" : null,
"attributes" : [ {
"name" : "displayName",
"values" : [ {
"value" : "CRISTHIAN TEST",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "id",
"values" : [ {
"value" : "11114",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "startDateTime",
"values" : [ {
"value" : "1759755070150",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "lastName",
"values" : [ {
"value" : "TEST",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "eventUUID",
"values" : [ {
"value" : "c212e655-24e7-510b-89bb-7dde32d6eca7",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "role.name",
"values" : [ {
"value" : "ASESOR DE TIENDAS",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "userId",
"values" : [ {
"value" : "8a8081d0997861570199a645311a00da",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "firstName",
"values" : [ {
"value" : "CRISTHIAN",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "status",
"values" : [ {
"value" : "REMOVE",
"operation" : "REPLACE"
} ],
"primaryKey" : false
}, {
"name" : "jobTitle",
"values" : [ {
"value" : "ASESOR DE TIENDAS",
"operation" : "REPLACE"
} ],
"primaryKey" : false
} ],
"operation" : "REPLACE",
"type" : "USER",
"metaData" : {
"requestID" : "fcb45554942543d29e6e3ea28d85b9fe",
"executionMode" : null,
"managedSystemId" : "8a808178953d149801956809b4d243e8",
"url" : "http://openiam-catcher.dev-k8s.telecel.net.py",
"port" : 80,
"communicationProtocol" : "CLEAR",
"login" : "test",
"password" : "test",
"attributes" : [ {
"name" : "managedSystemName",
"values" : [ {
"value" : "Siebel",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "managedSystemType",
"values" : [ {
"value" : "CRM",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "DELETE_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/SiebelUserDelete.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "ADD_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/SiebelUserAdd.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "MODIFY_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/SiebelUserAdd.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "SEARCH_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/SearchUser.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "SEARCH_SCOPE",
"values" : [ {
"value" : "SUBTREE_SCOPE",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "TEST_CONNECTION_HANDLER",
"values" : [ {
"value" : "/connector/groovy/siebel/user/TestConnection.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "SUSPEND_HANDLER",
"values" : [ {
"value" : "/connector/groovy/example/user/SuspendScriptConnector.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
}, {
"name" : "RESUME_HANDLER",
"values" : [ {
"value" : "/connector/groovy/example/user/ResumeScriptConnector.groovy",
"operation" : "NO_CHANGE"
} ],
"primaryKey" : false
} ]
},
"userPassword" : null,
"changePrimaryKey" : true
}
The missing attributes in the delete object are groups and email, both are present as items in the policy map
![]()
![]()
Also, I have another question, why in both cases, for the attributes, the operation is REPLACE?
Tested with OpenIAM 4.2.1.11
Thanks in advance!