Which IIQ version are you inquiring about?
Currently running 8.4p1 version
Please share any images or screenshots, if relevant.
Please share any other relevant files that may be required (for example, logs).
[Please insert files here, otherwise delete this section]
Share all details about your problem, including any error messages you may have received.
Basically we are getting an intermittent issue on IIQService machine that fails to execute a powershell script with the following error:
"11/27/2024 21:35:24 : ADConnectorServices [ Thread-24 ] ERROR : "Caught exception in Modify for identity [email protected],OU=Users,OU=Accounts,DC=asiapacific,DC=XXXX,DC=net. System.Exception: Failed to connect to the server for [email protected],OU=Users,OU=Accounts,DC=asiapacific,DC=XXXX,DC=net:The server is not operational. The server is not operational. . HRESULT:[0x8007203A]
at sailpoint.services.ADConnectorServices.bind(String distinguishedName, Boolean isCrossForest, Boolean isCrossDomain, String serverToBind, Boolean isCrossDomainMove, Boolean bindForShadow)
at sailpoint.services.ADConnectorServices.Modify(Boolean processExchangeAttributeUpdate, Boolean& atleastOneAttrReqFulfilled)".
We are currently authenticating into AD using a load balancer, our iiqservice machine is inside the domain Americas. When the acc request does not have a powershell script envolved, this error on trace does show up, but the retry mechanism on connector makes it work on the second attempt, i believe this is because we use a load balancer, so the second attempt falls into a different DC. This only becomes an issue when the error pops up during a powershell execution. I noticed that this happens more frequently for Asiapacific domain and at the same time this error pops up on the trace logs on the iiqservice machine, we see the image attached error inside the identityiq interface. The rule procedural execution stops at the error of the screenshoot and the lines where the code breaks is marked in yellow on picture.
try{
ruleObj = context.getObjectByName(Rule.class, ruleName);
applicationObj = context.getObjectByName(Application.class, appName);
if(ruleObj != null @and applicationObj != null){
data.put("postScript", ruleObj);
data.put("Request", modifyAccReq);
data.put("Application", applicationObj.getAttributes());
List iqServiceDetails = applicationObj.getAttributeValue("IQServiceConfiguration");
for(Map details : iqServiceDetails){
IQServiceServer = details.get("IQServiceHost");
IQServicePort = Util.atoi(details.get("IQServicePort"));
TLSIQService = details.get("useTLSForIQService");
}
log.error("3 " + idenName);
RPCService service = new RPCService(IQServiceServer, IQServicePort, false, TLSIQService);
service.setConnectorServices(new sailpoint.connector.DefaultConnectorServices());
RpcRequest request = new RpcRequest("ScriptExecutor", "runAfterScript", data);
//ERROR HAPPENS ON LINES BELOW
RpcResponse response = service.execute(request);
rpcResponseMap = response.getResultAttributes();
//return rpcResponseMap
log.error(rpcResponseMap);
//return rpcResponseMap.getMap("requestProcessedOn");
//log.error("4 " + idenName);
}
Let me know if you guys have any ideas to fix or workaround on this. Thanks.