[java-oidc-common] branch dev/JCOMOIDC-139 updated: Add an extended OIDCSSORelyingPartyConfiguration interface

Codeberg noreply at shibboleth.net
Thu Feb 19 12:27:13 UTC 2026


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

codeberg pushed a commit to branch dev/JCOMOIDC-139
in repository java-oidc-common.

View the commit online:
https://codeberg.org/Shibboleth/java-oidc-common/commit/1849bdea5a4c748a79307d797bbe212e981233e4

The following commit(s) were added to refs/heads/dev/JCOMOIDC-139 by this push:
     new 1849bdea Add an extended OIDCSSORelyingPartyConfiguration interface
1849bdea is described below

commit 1849bdea5a4c748a79307d797bbe212e981233e4
Author: Phil Smart <philip.smart at jisc.ac.uk>
AuthorDate: Thu Feb 19 12:27:06 2026 +0000

    Add an extended OIDCSSORelyingPartyConfiguration interface
    
     - Add an extended OIDCSSORelyingPartyConfiguration interface to include
    the AttributeResolvingProfileConfiguration interface which we can then
    implement in our default implementation, but it does not break
    compatibility for other implementations.
     - This should be merged into the OIDCSSORelyingPartyConfiguration in
    the next major (4.0.0)
---
 .../config/OIDCSSORelyingPartyConfiguration.java   |  4 +--
 .../config/OIDCSSORelyingPartyConfigurationEx.java | 30 ++++++++++++++++++++++
 .../config/impl/AbstractOIDCSSOConfiguration.java  |  4 +--
 3 files changed, 33 insertions(+), 5 deletions(-)

diff --git a/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCSSORelyingPartyConfiguration.java b/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCSSORelyingPartyConfiguration.java
index bbd23510..4aa4b970 100644
--- a/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCSSORelyingPartyConfiguration.java
+++ b/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCSSORelyingPartyConfiguration.java
@@ -24,7 +24,6 @@ import org.opensaml.profile.context.ProfileRequestContext;
 import net.shibboleth.idp.attribute.IdPAttribute;
 import net.shibboleth.oidc.profile.oauth2.config.OAuth2ClientAuthenticableClientProfileConfiguration;
 import net.shibboleth.oidc.profile.oauth2.config.OAuth2TokenEncryptionProfileConfiguration;
-import net.shibboleth.profile.config.AttributeResolvingProfileConfiguration;
 import net.shibboleth.profile.config.OverriddenIssuerProfileConfiguration;
 import net.shibboleth.shared.annotation.ConfigurationSetting;
 
@@ -33,8 +32,7 @@ import net.shibboleth.shared.annotation.ConfigurationSetting;
  */
 public interface OIDCSSORelyingPartyConfiguration extends OAuth2TokenEncryptionProfileConfiguration, 
     OverriddenIssuerProfileConfiguration, OIDCFlowAwareProfileConfiguration, 
-    OAuth2ClientAuthenticableClientProfileConfiguration, OIDCSSOProfileConfiguration, 
-    AttributeResolvingProfileConfiguration {
+    OAuth2ClientAuthenticableClientProfileConfiguration, OIDCSSOProfileConfiguration {
     
     /**
      * Get a strategy function to apply to OIDC tokens to extract additional {@link IdPAttribute}
diff --git a/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCSSORelyingPartyConfigurationEx.java b/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCSSORelyingPartyConfigurationEx.java
new file mode 100644
index 00000000..59dd17da
--- /dev/null
+++ b/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCSSORelyingPartyConfigurationEx.java
@@ -0,0 +1,30 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package net.shibboleth.oidc.profile.config;
+
+import net.shibboleth.profile.config.AttributeResolvingProfileConfiguration;
+
+/**
+ * An extension to the {@link OIDCSSORelyingPartyConfiguration} interface which also includes the 
+ * {@link AttributeResolvingProfileConfiguration} interface. This is useful for actions that want to determine if
+ * attribute resolution is required for a given relying party configuration.
+ *
+ * <p>TODO: Add {@link AttributeResolvingProfileConfiguration} to the parent interface 
+ * {@link OIDCSSORelyingPartyConfiguration} in 4.0.0</p>
+ */
+public interface OIDCSSORelyingPartyConfigurationEx extends OIDCSSORelyingPartyConfiguration, 
+            AttributeResolvingProfileConfiguration {
+
+}
diff --git a/oidc-common-profile-impl/src/main/java/net/shibboleth/oidc/profile/config/impl/AbstractOIDCSSOConfiguration.java b/oidc-common-profile-impl/src/main/java/net/shibboleth/oidc/profile/config/impl/AbstractOIDCSSOConfiguration.java
index d61689e8..28909897 100644
--- a/oidc-common-profile-impl/src/main/java/net/shibboleth/oidc/profile/config/impl/AbstractOIDCSSOConfiguration.java
+++ b/oidc-common-profile-impl/src/main/java/net/shibboleth/oidc/profile/config/impl/AbstractOIDCSSOConfiguration.java
@@ -31,7 +31,7 @@ import org.opensaml.profile.context.ProfileRequestContext;
 
 import net.shibboleth.idp.attribute.IdPAttribute;
 import net.shibboleth.oidc.profile.config.OIDCSSOProviderConfiguration;
-import net.shibboleth.oidc.profile.config.OIDCSSORelyingPartyConfiguration;
+import net.shibboleth.oidc.profile.config.OIDCSSORelyingPartyConfigurationEx;
 import net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2FlowAwareProfileConfiguration;
 import net.shibboleth.shared.annotation.constraint.NonnullElements;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
@@ -47,7 +47,7 @@ import net.shibboleth.shared.primitive.StringSupport;
  * Base class for profiles that support OIDC's concept of SSO, which spans multiple endpoints.
  */
 public abstract class AbstractOIDCSSOConfiguration extends AbstractOAuth2FlowAwareProfileConfiguration
-        implements OIDCSSORelyingPartyConfiguration, OIDCSSOProviderConfiguration {
+        implements OIDCSSORelyingPartyConfigurationEx, OIDCSSOProviderConfiguration {
 
     /** Lookup function to override issuer value. */
     @Nonnull private Function<ProfileRequestContext,String> issuerLookupStrategy;

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


More information about the commits mailing list