[Apiman-user] Property placeholder within policy does not resolve in the gateway (v1.2.0.Final / APIMAN-831)

Ton Swieb ton at finalist.nl
Tue Jan 19 05:25:11 EST 2016


Hi,

I tried to take the property placeholder functionality for a test drive,
which should be available as of v1.2.0.Final. See JIRA:
https://issues.jboss.org/browse/APIMAN-831

But for some reason I do not get it to work. Did I configure something
wrong or am I running into a bug?

I use the property placeholder in the keycloak plugin which is
preconfigured in a Docker image.
I defined the realm property of the Keycloak plugin as
${external_url}/auth/realms/apiman

I started my Docker image with the -e external_url=
https://192.168.99.100:8443 parameter to set the environment variable
within the Docker container.

When I try to access the API I get a failure in Keycloak Plugin saying:

{
  "type": "Authentication",
  "failureCode": 11004,
  "responseCode": 401,
  "message": "Token audience doesn't match domain. Token issuer is
https://192.168.99.100:8443/auth/realms/apiman, but URL from
configuration is ${external_url}/auth/realms/apiman",
  "headers": {}
}

It looks like the property placeholder did not get resolved correctly.

When I have a look in the Docker image using docker exec -ti <name>
/binbash and do a list of the environment variables. The environment
variable is correctly defined:
MacBook-Pro-van-Ton:~ ton$ docker exec -ti tiny_wilson /bin/bash
[jboss at 43c099aae441 ~]$ export
declare -x APIMAN_VERSION="1.2.0.Final"
....
declare -x external_url="https://192.168.99.100:8443"

I also tried setting the property to ${external_url} without the
'/auth/realms/apiman' suffix. I figured that it might perhaps will do a
full String comparison, but that did not work either.

Any ideas?

Regards, Ton
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/apiman-user/attachments/20160119/c893fa2d/attachment.html 


More information about the Apiman-user mailing list