Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-28033

[GSS](8.0.z) ELY-2813 - OIDC Adapter doesn't encode URL-parameters correctly

XMLWordPrintable

      Issue Description
      =================
      From EAP8.0.3 it's possible (again) to user query params for secured resources bei OIDC-adapter (see https://issues.redhat.com/browse/ELY-2340 , to enable with system-property wildfly.elytron.oidc.allow.query.params=true).
      Unfortunately the oidc-apater doesn't encode the query-parameter from the requested source. With keycloak-adapter in EAP7 it worked correctly.

      Environment:
      ===========
      JBoss EAP Version 8.0.3

       

      Notes:
      ===========

       Calling the deployed wars with following URL (first parameter is an encoded URL and second simple parameter abc):
      http://localhost:8180/oidc/index.html?url=http%3A%2F%2Flocalhost%3A8080%2Ftest%3Fa%3Da%26b%3Db&abc=false

      After redirecting to OIDC-provider we get two different results:
      EAP7 (correct):
      http://localhost:8080/auth/realms/ci-test/protocol/openid-connect/auth?response_type=code&client_id=oidc&redirect_uri=http%3A%2F%2Flocalhost%3A8180%2Foidc%2Findex.html?url%3Dhttp%253A%252F%252Flocalhost%253A8080%252Ftest%253Fa%253Da%2526b%253Db%26abc%3Dfalse&state=04b27983-9e40-454f-9386-437bd57ff546&login=true&scope=openid

      EAP8:
      http://localhost:8080/auth/realms/ci-test/protocol/openid-connect/auth?response_type=code&client_id=oidc&redirect_uri=http%3A%2F%2Flocalhost%3A8180%2Foidc%2Findex.html%3Furl%3Dhttp%3A%2F%2Flocalhost%3A8080%2Ftest%3Fa%3Da%26b%3Db%26abc%3Dfalse&state=aff8ae16-5981-4af0-9d02-2b9b87f570fd&scope=openid

      This leads to the following result URLs after redirecting back on OIDC provider after successful login:

      EAP7 (correct):
      http://localhost:8180/oidc/index.html?url=http%3A%2F%2Flocalhost%3A8080%2Ftest%3Fa%3Da%26b%3Db&abc=false

      EAP8:
      http://localhost:8180/oidc/index.html?url=http://localhost:8080/test?a=a&b=b&abc=false

      EAP8 result isn't correct and leads to problems on processing query parameters.

              mpetrov@redhat.com Michal Petrov
              rhn-support-oidehen Osarobo Idehen
              Peter Mackay Peter Mackay
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: