[java-idp-plugin-oidc-op-oidfed] 01/02: Moved trust mark related config options into new OIDFederationTrustMarkValidatingProfileConfiguration

Henri Mikkonen henri.mikkonen at iki.fi
Fri Oct 31 14:21:54 UTC 2025


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

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

View the commit online:
https://git.shibboleth.net/view/?p=java-idp-plugin-oidc-op-oidfed.git;a=commit;h=e1f0d3ec80e91dce1a235d867e17c7a9fc740366

commit e1f0d3ec80e91dce1a235d867e17c7a9fc740366
Author: Henri Mikkonen <henri.mikkonen at iki.fi>
AuthorDate: Fri Oct 31 15:57:13 2025 +0200

    Moved trust mark related config options into new OIDFederationTrustMarkValidatingProfileConfiguration
---
 ...FederationRegistrationProfileConfiguration.java | 30 ++------------------
 ...onTrustMarkValidatingProfileConfiguration.java} | 32 ++++++++++------------
 .../MandatoryTrustMarksLookupFunction.java         |  6 ++--
 .../MaximumTrustMarkLifetimeLookupFunction.java    |  6 ++--
 4 files changed, 23 insertions(+), 51 deletions(-)

diff --git a/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationRegistrationProfileConfiguration.java b/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationRegistrationProfileConfiguration.java
index bc60fb9..b6eb87a 100644
--- a/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationRegistrationProfileConfiguration.java
+++ b/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationRegistrationProfileConfiguration.java
@@ -1,8 +1,6 @@
 
 package net.shibboleth.idp.plugin.oidc.op.oidfed.profile.config;
 
-import java.time.Duration;
-import java.util.List;
 import java.util.Map;
 
 import javax.annotation.Nonnull;
@@ -15,13 +13,13 @@ import net.shibboleth.oidc.profile.oauth2.config.OAuth2ProfileConfiguration;
 import net.shibboleth.shared.annotation.ConfigurationSetting;
 import net.shibboleth.shared.annotation.constraint.NonnullElements;
 import net.shibboleth.shared.annotation.constraint.NotLive;
-import net.shibboleth.shared.annotation.constraint.Positive;
 import net.shibboleth.shared.annotation.constraint.Unmodifiable;
 
 /**
  * Profile configuration for an OpenID Federation profiles related to client registration.
  */
-public interface OIDFederationRegistrationProfileConfiguration extends OAuth2ProfileConfiguration {
+public interface OIDFederationRegistrationProfileConfiguration
+    extends OAuth2ProfileConfiguration, OIDFederationTrustMarkValidatingProfileConfiguration {
 
     /** OpenID Federation base protocol URI. */
     public static final String PROTOCOL_URI = "https://openid.net/specs/openid-federation-1_0.html";
@@ -39,28 +37,4 @@ public interface OIDFederationRegistrationProfileConfiguration extends OAuth2Pro
     @Nonnull @NonnullElements @NotLive @Unmodifiable
     Map<String, MetadataPolicy> getLocalMetadataPolicy(@Nullable final ProfileRequestContext profileRequestContext);
 
-    /**
-     * Get the mandatory trust mark identifiers required by this profile configuration.
-     * 
-     * @param profileRequestContext profile request context
-     * 
-     * @return mandatory trust mark identifiers
-     */
-    @ConfigurationSetting(name="mandatoryTrustMarks")
-    @Nonnull @NonnullElements @NotLive @Unmodifiable List<String> getMandatoryTrustMarks(
-            @Nullable final ProfileRequestContext profileRequestContext);
-
-    /**
-     * Get maximum lifetime for trust marks.
-     * 
-     * <p>Defaults to one year.</p>
-     * 
-     * @param profileRequestContext profile request context
-     * 
-     * @return maximum lifetime
-     */
-    @ConfigurationSetting(name="maximumTrustMarkLifetime")
-    @Positive @Nonnull
-    Duration getMaximumTrustMarkLifetime(@Nullable final ProfileRequestContext profileRequestContext);
-
 }
diff --git a/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationRegistrationProfileConfiguration.java b/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationTrustMarkValidatingProfileConfiguration.java
similarity index 71%
copy from idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationRegistrationProfileConfiguration.java
copy to idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationTrustMarkValidatingProfileConfiguration.java
index bc60fb9..b2ab1fe 100644
--- a/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationRegistrationProfileConfiguration.java
+++ b/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/OIDFederationTrustMarkValidatingProfileConfiguration.java
@@ -1,16 +1,27 @@
+/*
+ * 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.idp.plugin.oidc.op.oidfed.profile.config;
 
 import java.time.Duration;
 import java.util.List;
-import java.util.Map;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
 import org.opensaml.profile.context.ProfileRequestContext;
 
-import net.shibboleth.oidc.metadata.policy.MetadataPolicy;
 import net.shibboleth.oidc.profile.oauth2.config.OAuth2ProfileConfiguration;
 import net.shibboleth.shared.annotation.ConfigurationSetting;
 import net.shibboleth.shared.annotation.constraint.NonnullElements;
@@ -19,26 +30,13 @@ import net.shibboleth.shared.annotation.constraint.Positive;
 import net.shibboleth.shared.annotation.constraint.Unmodifiable;
 
 /**
- * Profile configuration for an OpenID Federation profiles related to client registration.
+ * Profile configuration for an OpenID Federation profiles related to trust mark consumption.
  */
-public interface OIDFederationRegistrationProfileConfiguration extends OAuth2ProfileConfiguration {
+public interface OIDFederationTrustMarkValidatingProfileConfiguration extends OAuth2ProfileConfiguration {
 
     /** OpenID Federation base protocol URI. */
     public static final String PROTOCOL_URI = "https://openid.net/specs/openid-federation-1_0.html";
 
-    /**
-     * Get local metadata policy to be merged into the federation policy.
-     * 
-     * <p>Defaults to empty map.</p>
-     * 
-     * @param profileRequestContext profile request context
-     * 
-     * @return local metadata policy
-     */
-    @ConfigurationSetting(name="localMetadataPolicy")
-    @Nonnull @NonnullElements @NotLive @Unmodifiable
-    Map<String, MetadataPolicy> getLocalMetadataPolicy(@Nullable final ProfileRequestContext profileRequestContext);
-
     /**
      * Get the mandatory trust mark identifiers required by this profile configuration.
      * 
diff --git a/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/navigate/MandatoryTrustMarksLookupFunction.java b/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/navigate/MandatoryTrustMarksLookupFunction.java
index 163c4a1..707e1ca 100644
--- a/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/navigate/MandatoryTrustMarksLookupFunction.java
+++ b/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/navigate/MandatoryTrustMarksLookupFunction.java
@@ -20,14 +20,14 @@ import javax.annotation.Nullable;
 
 import org.opensaml.profile.context.ProfileRequestContext;
 
-import net.shibboleth.idp.plugin.oidc.op.oidfed.profile.config.OIDFederationRegistrationProfileConfiguration;
+import net.shibboleth.idp.plugin.oidc.op.oidfed.profile.config.OIDFederationTrustMarkValidatingProfileConfiguration;
 import net.shibboleth.profile.config.ProfileConfiguration;
 import net.shibboleth.profile.context.RelyingPartyContext;
 import net.shibboleth.profile.context.navigate.AbstractRelyingPartyLookupFunction;
 
 /**
  * A function that obtains
- * {@link OIDFederationRegistrationProfileConfiguration#getMandatoryTrustMarks(ProfileRequestContext)}.
+ * {@link OIDFederationTrustMarkValidatingProfileConfiguration#getMandatoryTrustMarks(ProfileRequestContext)}.
  * 
  * <p>If a specific setting is unavailable, a null value is returned.</p>
  */
@@ -39,7 +39,7 @@ public class MandatoryTrustMarksLookupFunction extends AbstractRelyingPartyLooku
         final RelyingPartyContext rpc = getRelyingPartyContextLookupStrategy().apply(input);
         if (rpc != null) {
             final ProfileConfiguration pc = rpc.getProfileConfig();
-            if (pc instanceof OIDFederationRegistrationProfileConfiguration ofrpc) {
+            if (pc instanceof OIDFederationTrustMarkValidatingProfileConfiguration ofrpc) {
                 return ofrpc.getMandatoryTrustMarks(input);
             }
         }
diff --git a/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/navigate/MaximumTrustMarkLifetimeLookupFunction.java b/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/navigate/MaximumTrustMarkLifetimeLookupFunction.java
index e027241..56e9fc9 100644
--- a/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/navigate/MaximumTrustMarkLifetimeLookupFunction.java
+++ b/idp-oidfed-op-api/src/main/java/net/shibboleth/idp/plugin/oidc/op/oidfed/profile/config/navigate/MaximumTrustMarkLifetimeLookupFunction.java
@@ -20,14 +20,14 @@ import javax.annotation.Nullable;
 
 import org.opensaml.profile.context.ProfileRequestContext;
 
-import net.shibboleth.idp.plugin.oidc.op.oidfed.profile.config.OIDFederationRegistrationProfileConfiguration;
+import net.shibboleth.idp.plugin.oidc.op.oidfed.profile.config.OIDFederationTrustMarkValidatingProfileConfiguration;
 import net.shibboleth.profile.config.ProfileConfiguration;
 import net.shibboleth.profile.context.RelyingPartyContext;
 import net.shibboleth.profile.context.navigate.AbstractRelyingPartyLookupFunction;
 
 /**
  * A function that returns
- * {@link OIDFederationRegistrationProfileConfiguration#getMaximumTrustMarkLifetime(ProfileRequestContext)} if such a
+ * {@link OIDFederationTrustMarkValidatingProfileConfiguration#getMaximumTrustMarkLifetime(ProfileRequestContext)} if such a
  * profile is available from a {@link RelyingPartyContext} obtained via a lookup function, by default a child of the
  * {@link ProfileRequestContext}.
  * 
@@ -41,7 +41,7 @@ public class MaximumTrustMarkLifetimeLookupFunction extends AbstractRelyingParty
         final RelyingPartyContext rpc = getRelyingPartyContextLookupStrategy().apply(input);
         if (rpc != null) {
             final ProfileConfiguration pc = rpc.getProfileConfig();
-            if (pc instanceof OIDFederationRegistrationProfileConfiguration ofrpc) {
+            if (pc instanceof OIDFederationTrustMarkValidatingProfileConfiguration ofrpc) {
                 return ofrpc.getMaximumTrustMarkLifetime(input);
             }
         }

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


More information about the commits mailing list