Oracle Identity Manager (OIM) can be integrated Oracle Identity Analytics (OIA) or Oracle/SAP GRC (Governance, Risk, and Compliance) for SoD (Segregation of Duties).
We recently implemented OIM integration with Oracle GRC (OAACG – Oracle Application Access Control Governor) for Oracle E-Business Suite (EBS R12) for SoD.
EBS Responsibility Provisioning from OIM to EBS were failing with error “String index out of range: -7 SODCheck Completed with Error“
Error in OIM logs reported was
____
<Apr 24, 2014 7:25:20 PM BST> <Error> <XELLERATE.JAVACLIENT> <BEA-000000> <oracle.iam.grc.sod.scomp.impl.oaacg.analysis. SoDAnalysisExecutionOperOAACG80/ startPreventiveSynConflictSimulation: String index out of range: -7>
<Apr 24, 2014 7:25:20 PM BST> <Error> <XELLERATE.JAVACLIENT> <BEA-000000> <SILServiceImpl. executeSynchronousSoDSimulation SILServiceComponentException : String index out of range: -7>
<Apr 24, 2014 7:25:20 PM BST> <Error> <XELLERATE.JAVACLIENT> <BEA-000000> <Class/Method: InitiateSODCheck/makeSODCall encounter some problems: String index out of range: -7java.lang.StringIndexOutOfBoundsException: String index out of range: -7>
<Apr 24, 2014 7:25:20 PM BST> <Error> <XELLERATE.JAVACLIENT> <BEA-000000> <SOD Check Result is null>
____________
Fix: If you are hitting error like above then ensure that Datasource defined in OIM IT Resource “OAACG-ITRes” should match with data source defined in GRC.