KB Article #181759
API Gateway integration with Oracle Access Manager using 10g mode
Problem
Error trying to use Oracle Access Manager (OAM) integration with API Gateway using 10g protocol (10g compatibility mode in Policy Studio). This is supported by Oracle.
DEBUG 28/Jun/2021:11:26:09.381 [09c9:c1a3d9600600da3fa44ea9c7] run filter [HTTP Basic] { DEBUG 28/Jun/2021:11:26:09.382 [09c9:c1a3d9600600da3fa44ea9c7] Check user name via Oracle Access Manager ERROR 28/Jun/2021:11:26:09.400 [09c9:c1a3d9600600da3fa44ea9c7] java exception: oracle.security.am.asdk.AccessException: OAMAGENT-02010: Oracle Access SDK initialization failed. at oracle.security.am.asdk.AccessClient.initialize(AccessClient.java:1378) at oracle.security.am.asdk.AccessClient.<init>(AccessClient.java:931) at oracle.security.am.asdk.AccessClient.createDefaultInstance(AccessClient.java:352) at com.vordel.circuit.oracle.AccessManagerAuthNProcessor.checkCredentials(AccessManagerAuthNProcessor.java:79) at com.vordel.security.auth.repository.AuthenticationProcessorBase.checkCredentials(AuthenticationProcessorBase.java:18) at com.vordel.security.auth.HttpBasicAuthN.authenticate(HttpBasicAuthN.java:52) at com.vordel.circuit.authn.HttpProcessor.performAuthentication(HttpProcessor.java:84) at com.vordel.circuit.authn.HttpBasicProcessor.invoke(HttpBasicProcessor.java:41) at com.vordel.circuit.InvocationEngine.invokeFilter(InvocationEngine.java:149) at com.vordel.circuit.InvocationEngine.invokeCircuit(InvocationEngine.java:41) at com.vordel.circuit.InvocationEngine.recordCircuitInvocation(InvocationEngine.java:279) at com.vordel.circuit.InvocationEngine.processMessage(InvocationEngine.java:241) at com.vordel.circuit.SyntheticCircuitChainProcessor.invoke(SyntheticCircuitChainProcessor.java:65) at com.vordel.dwe.http.HTTPPlugin.processRequest(HTTPPlugin.java:412) at com.vordel.dwe.http.HTTPPlugin.invokeDispose(HTTPPlugin.java:438) at com.vordel.dwe.http.HTTPPlugin.invoke(HTTPPlugin.java:135) Caused by: oracle.security.am.asdk.AccessException: OAMAGENT-02072: Failed to perform encrypt password operation. at oracle.security.am.asdk.impl.Configuration.setEncryptedPassword(Configuration.java:448) at oracle.security.am.asdk.impl.ConfigXMLHandler.processConfig(ConfigXMLHandler.java:593) at oracle.security.am.asdk.impl.ConfigXMLHandler.readConfigurationFromFile(ConfigXMLHandler.java:139) at oracle.security.am.asdk.AccessClient.initialize(AccessClient.java:1355) ... 15 more Caused by: java.lang.NumberFormatException: For input string: "be" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:580) at java.lang.Integer.parseInt(Integer.java:615) at oracle.security.am.common.nap.util.ObCrypt.convert(ObCrypt.java:193) at oracle.security.am.common.nap.util.ObCrypt.decrypt(ObCrypt.java:114) at oracle.security.am.common.nap.util.ObCrypt.decrypt(ObCrypt.java:254) at oracle.security.am.asdk.impl.Configuration.decrypt(Configuration.java:1689) at oracle.security.am.asdk.impl.Configuration.setEncryptedPassword(Configuration.java:426) ... 18 more ERROR 28/Jun/2021:11:26:09.400 [09c9:c1a3d9600600da3fa44ea9c7] Failed to authenticate user [weblogic] DEBUG 28/Jun/2021:11:26:09.401 [09c9:c1a3d9600600da3fa44ea9c7] java exception: com.vordel.circuit.authn.VordelAuthNException: Original Message - type=oracle.security.am.asdk.AccessException msg=OAMAGENT-02010 at com.vordel.circuit.oracle.AccessManagerAuthNProcessor.checkCredentials(AccessManagerAuthNProcessor.java:106) at com.vordel.security.auth.repository.AuthenticationProcessorBase.checkCredentials(AuthenticationProcessorBase.java:18) at com.vordel.security.auth.HttpBasicAuthN.authenticate(HttpBasicAuthN.java:52) at com.vordel.circuit.authn.HttpProcessor.performAuthentication(HttpProcessor.java:84) at com.vordel.circuit.authn.HttpBasicProcessor.invoke(HttpBasicProcessor.java:41) at com.vordel.circuit.InvocationEngine.invokeFilter(InvocationEngine.java:149) at com.vordel.circuit.InvocationEngine.invokeCircuit(InvocationEngine.java:41) at com.vordel.circuit.InvocationEngine.recordCircuitInvocation(InvocationEngine.java:279) at com.vordel.circuit.InvocationEngine.processMessage(InvocationEngine.java:241) at com.vordel.circuit.SyntheticCircuitChainProcessor.invoke(SyntheticCircuitChainProcessor.java:65) at com.vordel.dwe.http.HTTPPlugin.processRequest(HTTPPlugin.java:412) at com.vordel.dwe.http.HTTPPlugin.invokeDispose(HTTPPlugin.java:438)
at com.vordel.dwe.http.HTTPPlugin.invoke(HTTPPlugin.java:135)
Resolution
The error occurs when this is attempted using the 10g ASDK in the Gateway (i.e. install as a third party jar in ext/lib)
The problem is resolved when using the 11g ASDK.