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.