I created a mapper plugin as described by: Server Developer Guide
Loaded the jar via:
kind: Keycloak
extensions:
- http://xxx/yyy/myplugin.jar
I see a string saying its loading the module on the console.
But it doesn’t show up in the list of available mappers. Is there some other flag I need? if so, how do I specify it in the Keycloak object?
I managed to get it to work. it wouldn’t load when I added:
keycloakDeploymentSpec:
experimental:
command:
- /opt/jboss/tools/docker-entrypoint.sh
args:
- -b0.0.0.0
- -Dkeycloak.profile.feature.scripts=enabled
But did show up when I added an additional line:
- -Dkeycloak.profile.feature.upload_scripts=enabled
Feels like somethings broken in 15.0.2 that upload_scripts must be enabled to get script jars to work.
And to load it, in the KeycloakClient:
protocolMappers:
- name: custom
id: dd2cd59e-c34e-4450-9c4f-4afe4d249fc0
protocol: openid-connect
protocolMapper: "script-my-script-mapper.js"
consentRequired: false
config:
"id.token.claim": "true"
"access.token.claim": "true"
"userinfo.token.claim": "true"
"jsonType.label": String
"claim.name": wark