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.