0

I have configured audiences in deployment.toml following this article WSO2-IS JWT Bearer Grant and now I'm facing an error when I try to start the WSO2-IS server.

deployment.toml:

[oauth.oidc]
id_token.issuer = "apim-idp"

[oauth.oidc.id_token]
audiences = ["${carbon.protocol}://${carbon.host}:${carbon.management.port}/oauth2/token"]

WSO2-IS log:

[2021-04-09 22:15:47,106]  WARN {org.wso2.config.mapper.ConfigParser} - Overriding files in configuration directory /home/wso2carbon/wso2is-5.10.0
is-as-km_1                | java.lang.reflect.InvocationTargetException
is-as-km_1                |     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
is-as-km_1                |     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
is-as-km_1                |     at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
is-as-km_1                |     at java.base/java.lang.reflect.Method.invoke(Method.java:566)
is-as-km_1                |     at org.wso2.carbon.bootstrap.Bootstrap.loadClass(Bootstrap.java:70)
is-as-km_1                |     at org.wso2.carbon.bootstrap.Bootstrap.main(Bootstrap.java:51)
is-as-km_1                | Caused by: java.lang.StackOverflowError
is-as-km_1                |     at java.base/java.util.stream.ReduceOps$Box.<init>(ReduceOps.java:872)
is-as-km_1                |     at java.base/java.util.stream.ReduceOps$3ReducingSink.<init>(ReduceOps.java:160)
is-as-km_1                |     at java.base/java.util.stream.ReduceOps$3.makeSink(ReduceOps.java:180)
is-as-km_1                |     at java.base/java.util.stream.ReduceOps$3.makeSink(ReduceOps.java:177)
is-as-km_1                |     at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
is-as-km_1                |     at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
is-as-km_1                |     at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
is-as-km_1                |     at net.consensys.cava.toml.MutableTomlTable.keyPathSet(MutableTomlTable.java:92)
is-as-km_1                |     at net.consensys.cava.toml.MutableTomlTable.lambda$keyPathSet$1(MutableTomlTable.java:80)

PS: If I remove "audiences" everything works.

Community
  • 1
  • 1
Aldo Inácio da Silva
  • 824
  • 2
  • 14
  • 38

1 Answers1

0

In the deployment.toml file, you can't duplicate the same header tag. Use the following config.

[oauth.oidc.id_token]
audiences = ["${carbon.protocol}://${carbon.host}:${carbon.management.port}/oauth2/token"]
issuer = "apim-idp"
Anuradha Karunarathna
  • 2,717
  • 2
  • 9
  • 17