[java-idp-oidc] branch main updated: JOIDC-133 - Allow customization for mappedErrors of OP flows

Henri Mikkonen henri.mikkonen at iki.fi
Fri Nov 11 07:57:29 UTC 2022


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

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

View the commit online:
http://git.shibboleth.net/view/?p=java-idp-oidc.git;a=commit;h=3410d4162ce0d0c3e7dcdb91995f2999d048960c

The following commit(s) were added to refs/heads/main by this push:
     new 3410d416 JOIDC-133 - Allow customization for mappedErrors of OP flows
3410d416 is described below

commit 3410d4162ce0d0c3e7dcdb91995f2999d048960c
Author: Henri Mikkonen <henri.mikkonen at iki.fi>
AuthorDate: Fri Nov 11 09:55:23 2022 +0200

    JOIDC-133 - Allow customization for mappedErrors of OP flows
    
    https://shibboleth.atlassian.net/browse/JOIDC-133
    
    Refactoring: provide means to customize mapped errors for each OP flow.
---
 .../META-INF/net.shibboleth.idp/postconfig.xml     | 89 ++++++++++++++++++++++
 .../oauth2/introspection/introspection-beans.xml   |  4 +-
 .../flows/oauth2/revocation/revocation-beans.xml   |  8 +-
 .../oidc/abstract-api/oidc-abstract-api-beans.xml  | 43 -----------
 .../idp/flows/oidc/authorize/authorize-beans.xml   | 21 +----
 .../idp/flows/oidc/register/register-beans.xml     | 22 +-----
 .../idp/flows/oidc/token/token-beans.xml           |  6 +-
 .../idp/flows/oidc/userinfo/userinfo-beans.xml     |  2 +-
 8 files changed, 103 insertions(+), 92 deletions(-)

diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net.shibboleth.idp/postconfig.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net.shibboleth.idp/postconfig.xml
index da6825b3..bafc64dd 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net.shibboleth.idp/postconfig.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net.shibboleth.idp/postconfig.xml
@@ -589,4 +589,93 @@
     <bean id="shibboleth.oidc.discovery.FunctionMetadataValueResolver"
         class="net.shibboleth.idp.plugin.oidc.op.metadata.impl.FunctionMetadataValueResolver" abstract="true" />
 
+    <bean id="shibboleth.oidc.authorize.DefaultMappedErrors"
+            class="org.springframework.beans.factory.config.MapFactoryBean">
+        <property name="sourceMap">
+            <map value-type="com.nimbusds.oauth2.sdk.ErrorObject">
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_REDIRECT_URI}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_REQUEST}" />
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_REQUEST_OBJECT}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_REQUEST_OBJECT}" />
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_RESPONSE_TYPE}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).UNSUPPORTED_RESPONSE_TYPE}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).NO_PASSIVE}"
+                    value="#{T(com.nimbusds.openid.connect.sdk.OIDCError).LOGIN_REQUIRED}" />
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).MISSING_PKCE_CODE_CHALLENGE}"
+                    value="#{T(net.shibboleth.oidc.profile.core.OidcError).MISSING_PKCE_CODE_CHALLENGE}" />
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_PKCE_TRANSFORMATION_METHOD}"
+                    value="#{T(net.shibboleth.oidc.profile.core.OidcError).INVALID_PKCE_TRANSFORMATION_METHOD}" />
+                <entry key="#{'InvalidScope'}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_SCOPE}" />
+            </map>
+        </property>
+    </bean>
+
+    <bean id="shibboleth.oidc.register.DefaultMappedErrors"
+            class="org.springframework.beans.factory.config.MapFactoryBean">
+        <property name="sourceMap">
+            <map value-type="com.nimbusds.oauth2.sdk.ErrorObject">
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).MISSING_REDIRECT_URIS}"
+                    value="#{T(com.nimbusds.oauth2.sdk.client.RegistrationError).INVALID_REDIRECT_URI}" />
+                <entry key="#{T(org.opensaml.profile.action.EventIds).IO_ERROR}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).SERVER_ERROR}" />
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_REDIRECT_URIS}"
+                    value="#{T(com.nimbusds.oauth2.sdk.client.RegistrationError).INVALID_CLIENT_METADATA}" />
+                <entry key="#{T(org.opensaml.profile.action.EventIds).UNABLE_TO_DECODE}"
+                    value="#{T(com.nimbusds.oauth2.sdk.client.RegistrationError).INVALID_CLIENT_METADATA}" />
+                <entry key="#{T(org.opensaml.profile.action.EventIds).INVALID_MESSAGE}"
+                    value="#{T(com.nimbusds.oauth2.sdk.client.RegistrationError).INVALID_CLIENT_METADATA}" />
+            </map>
+        </property>
+    </bean>
+
+    <bean id="shibboleth.oidc.DefaultApiMappedErrors"
+            class="org.springframework.beans.factory.config.MapFactoryBean">
+        <property name="sourceMap">
+            <map value-type="com.nimbusds.oauth2.sdk.ErrorObject">
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).AUTHN_EXCEPTION}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).SUBJECT_C14N_ERROR}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).UNKNOWN_USERNAME}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).NO_CREDENTIALS}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).INVALID_CREDENTIALS}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).ACCOUNT_LOCKED}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).ACCOUNT_ERROR}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).RESELECT_FLOW}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).NO_POTENTIAL_FLOW}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
+                <entry key="#{T(net.shibboleth.idp.profile.IdPEventIds).INVALID_PROFILE_CONFIG}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).UNAUTHORIZED_CLIENT}" />
+                <entry key="#{T(org.opensaml.profile.action.EventIds).ACCESS_DENIED}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).ACCESS_DENIED}" />
+
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_GRANT_TYPE}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).UNAUTHORIZED_CLIENT}" />
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_GRANT}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_GRANT}" />
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_REDIRECT_URI}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_REQUEST}" />
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_ACCESS_TOKEN}"
+                    value="#{T(com.nimbusds.oauth2.sdk.token.BearerTokenError).INVALID_TOKEN}" />
+
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).REVOCATION_FAILED}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).SERVER_ERROR}" />
+                <entry key="#{'InvalidScope'}"
+                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_SCOPE}" />
+
+                <!-- Missing from Nimbus. -->
+                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_TARGET}"
+                    value="#{T(net.shibboleth.oidc.profile.core.OidcError).INVALID_TARGET}" />
+            </map>
+        </property>
+    </bean>
+
+
 </beans>
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oauth2/introspection/introspection-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oauth2/introspection/introspection-beans.xml
index 67ada2bc..9a43aa2d 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oauth2/introspection/introspection-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oauth2/introspection/introspection-beans.xml
@@ -42,8 +42,8 @@
     <bean id="BuildErrorResponseFromEvent"
         class="net.shibboleth.idp.plugin.oidc.op.oauth2.profile.impl.BuildIntrospectionErrorResponseFromEvent"
         scope="prototype"
-            p:httpServletResponse-ref="shibboleth.HttpServletResponse"
-            p:mappedErrors-ref="shibboleth.oidc.ErrorMappings">
+        p:httpServletResponse-ref="shibboleth.HttpServletResponse"
+        p:mappedErrors="#{getObject('shibboleth.oauth2.introspection.MappedErrors') ?: getObject('shibboleth.oidc.DefaultApiMappedErrors')}">
         <property name="eventContextLookupStrategy">
             <bean class="net.shibboleth.idp.profile.context.navigate.WebFlowCurrentEventLookupFunction" />
         </property>
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oauth2/revocation/revocation-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oauth2/revocation/revocation-beans.xml
index 35e607f1..94e9c18e 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oauth2/revocation/revocation-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oauth2/revocation/revocation-beans.xml
@@ -52,10 +52,10 @@
         scope="prototype" />
 
     <bean id="BuildErrorResponseFromEvent"
-            class="net.shibboleth.idp.plugin.oidc.op.oauth2.profile.impl.BuildRevokeTokenErrorResponseFromEvent" 
-            scope="prototype"
-            p:httpServletResponse-ref="shibboleth.HttpServletResponse"
-            p:mappedErrors-ref="shibboleth.oidc.ErrorMappings">
+        class="net.shibboleth.idp.plugin.oidc.op.oauth2.profile.impl.BuildRevokeTokenErrorResponseFromEvent" 
+        scope="prototype"
+        p:httpServletResponse-ref="shibboleth.HttpServletResponse"
+        p:mappedErrors="#{getObject('shibboleth.oauth2.revocation.MappedErrors') ?: getObject('shibboleth.oidc.DefaultApiMappedErrors')}">
         <property name="eventContextLookupStrategy">
             <bean class="net.shibboleth.idp.profile.context.navigate.WebFlowCurrentEventLookupFunction" />
         </property>
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/abstract-api/oidc-abstract-api-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/abstract-api/oidc-abstract-api-beans.xml
index d2a6b89d..9239117f 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/abstract-api/oidc-abstract-api-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/abstract-api/oidc-abstract-api-beans.xml
@@ -12,47 +12,4 @@
     <bean id="InitializeAuthenticationContext"
         class="net.shibboleth.idp.saml.profile.impl.InitializeAuthenticationContext" scope="prototype" />
 
-    <util:map id="shibboleth.oidc.ErrorMappings" value-type="com.nimbusds.oauth2.sdk.ErrorObject">
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).AUTHN_EXCEPTION}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).SUBJECT_C14N_ERROR}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).UNKNOWN_USERNAME}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).NO_CREDENTIALS}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).INVALID_CREDENTIALS}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).ACCOUNT_LOCKED}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).ACCOUNT_ERROR}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).RESELECT_FLOW}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).NO_POTENTIAL_FLOW}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_CLIENT}" />
-        <entry key="#{T(net.shibboleth.idp.profile.IdPEventIds).INVALID_PROFILE_CONFIG}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).UNAUTHORIZED_CLIENT}" />
-        <entry key="#{T(org.opensaml.profile.action.EventIds).ACCESS_DENIED}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).ACCESS_DENIED}" />
-            
-        <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_GRANT_TYPE}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).UNAUTHORIZED_CLIENT}" />
-        <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_GRANT}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_GRANT}" />
-        <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_REDIRECT_URI}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_REQUEST}" />
-        <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_ACCESS_TOKEN}"
-            value="#{T(com.nimbusds.oauth2.sdk.token.BearerTokenError).INVALID_TOKEN}" />
-            
-        <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).REVOCATION_FAILED}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).SERVER_ERROR}" />
-        <entry key="#{'InvalidScope'}"
-            value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_SCOPE}" />
-
-        <!-- Missing from Nimbus. -->
-        <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_TARGET}"
-            value="#{T(net.shibboleth.oidc.profile.core.OidcError).INVALID_TARGET}" />
-    </util:map>
-
 </beans>
\ No newline at end of file
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/authorize/authorize-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/authorize/authorize-beans.xml
index 960c7cb6..054eab3b 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/authorize/authorize-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/authorize/authorize-beans.xml
@@ -591,28 +591,11 @@
 
     <bean id="BuildErrorResponseFromEvent"
         class="net.shibboleth.idp.plugin.oidc.op.profile.impl.BuildAuthenticationErrorResponseFromEvent" scope="prototype"
-        p:httpServletResponse-ref="shibboleth.HttpServletResponse">
+        p:httpServletResponse-ref="shibboleth.HttpServletResponse"
+        p:mappedErrors="#{getObject('shibboleth.oidc.authorize.MappedErrors') ?: getObject('shibboleth.oidc.authorize.DefaultMappedErrors')}">
         <property name="eventContextLookupStrategy">
             <bean class="net.shibboleth.idp.profile.context.navigate.WebFlowCurrentEventLookupFunction" />
         </property>
-        <property name="mappedErrors">
-            <map value-type="com.nimbusds.oauth2.sdk.ErrorObject">
-                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_REDIRECT_URI}"
-                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_REQUEST}" />
-                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_REQUEST_OBJECT}"
-                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_REQUEST_OBJECT}" />
-                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_RESPONSE_TYPE}"
-                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).UNSUPPORTED_RESPONSE_TYPE}" />
-                <entry key="#{T(net.shibboleth.idp.authn.AuthnEventIds).NO_PASSIVE}"
-                    value="#{T(com.nimbusds.openid.connect.sdk.OIDCError).LOGIN_REQUIRED}" />
-                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).MISSING_PKCE_CODE_CHALLENGE}"
-                    value="#{T(net.shibboleth.oidc.profile.core.OidcError).MISSING_PKCE_CODE_CHALLENGE}" />
-                <entry key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_PKCE_TRANSFORMATION_METHOD}"
-                    value="#{T(net.shibboleth.oidc.profile.core.OidcError).INVALID_PKCE_TRANSFORMATION_METHOD}" />
-                <entry key="#{'InvalidScope'}"
-                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).INVALID_SCOPE}" />
-            </map>
-        </property>
     </bean>
 
     <bean id="ErrorViewPopulateAuditContext" parent="shibboleth.AbstractPopulateAuditContext"
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/register/register-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/register/register-beans.xml
index 2a786e01..a907910a 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/register/register-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/register/register-beans.xml
@@ -164,30 +164,12 @@
     <bean id="BuildErrorResponseFromEvent"
         class="net.shibboleth.idp.plugin.oidc.op.profile.impl.BuildRegistrationErrorResponseFromEvent"
         scope="prototype"
-        p:httpServletResponse-ref="shibboleth.HttpServletResponse">
+        p:httpServletResponse-ref="shibboleth.HttpServletResponse"
+        p:mappedErrors="#{getObject('shibboleth.oidc.register.MappedErrors') ?: getObject('shibboleth.oidc.register.DefaultMappedErrors')}">
         <property name="eventContextLookupStrategy">
             <bean
                 class="net.shibboleth.idp.profile.context.navigate.WebFlowCurrentEventLookupFunction" />
         </property>
-        <property name="mappedErrors">
-            <map value-type="com.nimbusds.oauth2.sdk.ErrorObject">
-                <entry
-                    key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).MISSING_REDIRECT_URIS}"
-                    value="#{T(com.nimbusds.oauth2.sdk.client.RegistrationError).INVALID_REDIRECT_URI}" />
-                <entry
-                    key="#{T(org.opensaml.profile.action.EventIds).IO_ERROR}"
-                    value="#{T(com.nimbusds.oauth2.sdk.OAuth2Error).SERVER_ERROR}" />
-                <entry
-                    key="#{T(net.shibboleth.oidc.profile.core.OidcEventIds).INVALID_REDIRECT_URIS}"
-                    value="#{T(com.nimbusds.oauth2.sdk.client.RegistrationError).INVALID_CLIENT_METADATA}" />
-                <entry
-                    key="#{T(org.opensaml.profile.action.EventIds).UNABLE_TO_DECODE}"
-                    value="#{T(com.nimbusds.oauth2.sdk.client.RegistrationError).INVALID_CLIENT_METADATA}" />
-                <entry
-                    key="#{T(org.opensaml.profile.action.EventIds).INVALID_MESSAGE}"
-                    value="#{T(com.nimbusds.oauth2.sdk.client.RegistrationError).INVALID_CLIENT_METADATA}" />
-            </map>
-        </property>
     </bean>
 
     <bean id="FormOutboundMessage"
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/token/token-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/token/token-beans.xml
index 8f5f7222..88b95460 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/token/token-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/token/token-beans.xml
@@ -428,9 +428,9 @@
         class="net.shibboleth.idp.plugin.oidc.op.profile.impl.FormOutboundTokenResponseMessage" scope="prototype" />
 
     <bean id="BuildErrorResponseFromEvent"
-            class="net.shibboleth.idp.plugin.oidc.op.profile.impl.BuildTokenErrorResponseFromEvent" scope="prototype"
-            p:httpServletResponse-ref="shibboleth.HttpServletResponse"
-            p:mappedErrors-ref="shibboleth.oidc.ErrorMappings">
+        class="net.shibboleth.idp.plugin.oidc.op.profile.impl.BuildTokenErrorResponseFromEvent" scope="prototype"
+        p:httpServletResponse-ref="shibboleth.HttpServletResponse"
+        p:mappedErrors="#{getObject('shibboleth.oidc.token.MappedErrors') ?: getObject('shibboleth.oidc.DefaultApiMappedErrors')}">
         <property name="eventContextLookupStrategy">
             <bean class="net.shibboleth.idp.profile.context.navigate.WebFlowCurrentEventLookupFunction" />
         </property>
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/userinfo/userinfo-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/userinfo/userinfo-beans.xml
index 4b0d4eb5..fc80ace2 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/userinfo/userinfo-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/userinfo/userinfo-beans.xml
@@ -150,7 +150,7 @@
     <bean id="BuildErrorResponseFromEvent"
         class="net.shibboleth.idp.plugin.oidc.op.userinfo.profile.impl.BuildUserInfoErrorResponseFromEvent" scope="prototype"
         p:httpServletResponse-ref="shibboleth.HttpServletResponse"
-        p:mappedErrors-ref="shibboleth.oidc.ErrorMappings">
+        p:mappedErrors="#{getObject('shibboleth.oidc.userinfo.MappedErrors') ?: getObject('shibboleth.oidc.DefaultApiMappedErrors')}">
         <property name="eventContextLookupStrategy">
             <bean class="net.shibboleth.idp.profile.context.navigate.WebFlowCurrentEventLookupFunction" />
         </property>

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


More information about the commits mailing list