[java-oidc-common] branch main updated: JOIDC-106 - SAML Metadata for OIDC does not support space delimiter in response_types

Henri Mikkonen henri.mikkonen at iki.fi
Thu May 26 07:08:03 UTC 2022


This is an automated email from the git hooks/post-receive script.

hjmikkon pushed a commit to branch main
in repository java-oidc-common.

View the commit online:
http://git.shibboleth.net/view/?p=java-oidc-common.git;a=commit;h=0e220daca309c0d8069d9055faec5b87438bb4a3

The following commit(s) were added to refs/heads/main by this push:
     new 0e220da  JOIDC-106 - SAML Metadata for OIDC does not support space delimiter in response_types
0e220da is described below

commit 0e220daca309c0d8069d9055faec5b87438bb4a3
Author: Henri Mikkonen <henri.mikkonen at iki.fi>
AuthorDate: Thu May 26 10:05:37 2022 +0300

    JOIDC-106 - SAML Metadata for OIDC does not support space delimiter in response_types
    
    https://shibboleth.atlassian.net/browse/JOIDC-106
---
 .../shibboleth/oidc/metadata/impl/ClientInformationNodeProcessor.java | 2 +-
 .../oidc/metadata/impl/ClientInformationNodeProcessorTest.java        | 4 +++-
 .../oidc/metadata/impl/EntitiesDescriptor-with-oidcmd-jwkdata.xml     | 2 +-
 .../shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd.xml  | 2 +-
 4 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/oidc-common-metadata-impl/src/main/java/net/shibboleth/oidc/metadata/impl/ClientInformationNodeProcessor.java b/oidc-common-metadata-impl/src/main/java/net/shibboleth/oidc/metadata/impl/ClientInformationNodeProcessor.java
index 6b09b0e..9a55c2d 100644
--- a/oidc-common-metadata-impl/src/main/java/net/shibboleth/oidc/metadata/impl/ClientInformationNodeProcessor.java
+++ b/oidc-common-metadata-impl/src/main/java/net/shibboleth/oidc/metadata/impl/ClientInformationNodeProcessor.java
@@ -431,7 +431,7 @@ public class ClientInformationNodeProcessor implements MetadataNodeProcessor {
         final Set<ResponseType> responseTypes = new HashSet<>();
         final Collection<String> values = getListValues(extensions.getResponseTypes());
         for (final String value : values) {
-            responseTypes.add(new ResponseType(value));
+            responseTypes.add(new ResponseType(value.split("\\+")));
         }
         return responseTypes;
     }
diff --git a/oidc-common-metadata-impl/src/test/java/net/shibboleth/oidc/metadata/impl/ClientInformationNodeProcessorTest.java b/oidc-common-metadata-impl/src/test/java/net/shibboleth/oidc/metadata/impl/ClientInformationNodeProcessorTest.java
index a612d0b..bdd0a51 100644
--- a/oidc-common-metadata-impl/src/test/java/net/shibboleth/oidc/metadata/impl/ClientInformationNodeProcessorTest.java
+++ b/oidc-common-metadata-impl/src/test/java/net/shibboleth/oidc/metadata/impl/ClientInformationNodeProcessorTest.java
@@ -185,8 +185,10 @@ public class ClientInformationNodeProcessorTest extends XMLObjectBaseTestCase {
         Assert.assertEquals(requestUris.iterator().next(), new URI("https://example.org/request"));
         
         final Set<ResponseType> responseTypes = metadata.getResponseTypes();
-        Assert.assertEquals(responseTypes.size(), 2);
+        Assert.assertEquals(responseTypes.size(), 4);
         Assert.assertTrue(responseTypes.contains(ResponseType.parse("code")));
+        Assert.assertTrue(responseTypes.contains(ResponseType.parse("code id_token")));
+        Assert.assertTrue(responseTypes.contains(ResponseType.parse("id_token token")));
         Assert.assertTrue(responseTypes.contains(ResponseType.parse("id_token")));
         
         final Scope scope = metadata.getScope();
diff --git a/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd-jwkdata.xml b/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd-jwkdata.xml
index 8a27032..9de80f1 100644
--- a/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd-jwkdata.xml
+++ b/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd-jwkdata.xml
@@ -9,7 +9,7 @@
                     application_type="web"
                     client_uri="https://example.org/clientUri"
                     grant_types="authorization_code"
-                    response_types="code id_token"
+                    response_types="code code+id_token id_token+token id_token"
                     scopes="openid profile"
                     initiate_login_uri="https://example.org/initiateLogin"
                     software_id="mockSoftwareId"
diff --git a/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd.xml b/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd.xml
index 8856606..458b9a8 100644
--- a/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd.xml
+++ b/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/EntitiesDescriptor-with-oidcmd.xml
@@ -9,7 +9,7 @@
                     application_type="web"
                     client_uri="https://example.org/clientUri"
                     grant_types="authorization_code"
-                    response_types="code id_token"
+                    response_types="code code+id_token id_token+token id_token"
                     scopes="openid profile"
                     initiate_login_uri="https://example.org/initiateLogin"
                     software_id="mockSoftwareId"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list