[java-identity-provider] branch main updated: IDP-2370 - Deprecate authenticationFlows profile setting

Codeberg noreply at shibboleth.net
Tue Jan 6 17:58:21 UTC 2026


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

codeberg pushed a commit to branch main
in repository java-identity-provider.

View the commit online:
https://codeberg.org/Shibboleth/java-identity-provider/commit/70b5b2d5c00cd66ddb581da9feed117752021cc3

The following commit(s) were added to refs/heads/main by this push:
     new 70b5b2d5c IDP-2370 - Deprecate authenticationFlows profile setting
70b5b2d5c is described below

commit 70b5b2d5c00cd66ddb581da9feed117752021cc3
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Tue Jan 6 12:58:08 2026 -0500

    IDP-2370 - Deprecate authenticationFlows profile setting
    
    https://shibboleth.atlassian.net/browse/IDP-2370
    
    Applied to setters in IdP.
---
 .../idp/admin/BasicAdministrativeFlowDescriptor.java      | 14 ++++++++++++++
 .../authn/config/AuthenticationProfileConfiguration.java  |  3 +++
 .../net/shibboleth/idp/cas/config/LoginConfiguration.java | 15 +++++++++++++++
 .../config/impl/BrowserSSOProfileConfiguration.java       | 15 +++++++++++++++
 .../config/impl/BrowserSSOProfileConfiguration.java       | 13 +++++++++++++
 5 files changed, 60 insertions(+)

diff --git a/idp-admin-api/src/main/java/net/shibboleth/idp/admin/BasicAdministrativeFlowDescriptor.java b/idp-admin-api/src/main/java/net/shibboleth/idp/admin/BasicAdministrativeFlowDescriptor.java
index 76db23878..af1b44c11 100644
--- a/idp-admin-api/src/main/java/net/shibboleth/idp/admin/BasicAdministrativeFlowDescriptor.java
+++ b/idp-admin-api/src/main/java/net/shibboleth/idp/admin/BasicAdministrativeFlowDescriptor.java
@@ -52,8 +52,10 @@ import net.shibboleth.shared.collection.CollectionSupport;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.logic.FunctionSupport;
 import net.shibboleth.shared.logic.PredicateSupport;
+import net.shibboleth.shared.primitive.DeprecationSupport;
 import net.shibboleth.shared.primitive.LangBearingString;
 import net.shibboleth.shared.primitive.StringSupport;
+import net.shibboleth.shared.primitive.DeprecationSupport.ObjectType;
 
 /**
  * A descriptor for an administrative flow.
@@ -566,6 +568,7 @@ public class BasicAdministrativeFlowDescriptor extends AbstractInterceptorAwareP
     }
     
     /** {@inheritDoc} */
+    @Deprecated(since="5.2.0", forRemoval=true)
     @Nonnull @NotLive @Unmodifiable public Set<String> getAuthenticationFlows(
             @Nullable final ProfileRequestContext profileRequestContext) {
         final Set<String> flows = authenticationFlowsLookupStrategy.apply(profileRequestContext);
@@ -579,8 +582,13 @@ public class BasicAdministrativeFlowDescriptor extends AbstractInterceptorAwareP
      * Set the authentication flows to use.
      * 
      * @param flows   flow identifiers to use
+     * 
+     * @deprecated
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     public void setAuthenticationFlows(@Nullable final Collection<String> flows) {
+        DeprecationSupport.warnOnce(ObjectType.CONFIGURATION, "setAuthenticationFlows", "relying-party.xml",
+                "setDefaultAuthenticationMethods");
 
         if (flows != null) {
             authenticationFlowsLookupStrategy =
@@ -594,9 +602,15 @@ public class BasicAdministrativeFlowDescriptor extends AbstractInterceptorAwareP
      * Set a lookup strategy for the authentication flows to use.
      *
      * @param strategy  lookup strategy
+     * 
+     * @deprecated
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     public void setAuthenticationFlowsLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,Set<String>> strategy) {
+        DeprecationSupport.warnOnce(ObjectType.CONFIGURATION, "setAuthenticationFlowsLookupStrategy",
+                "relying-party.xml", "setDefaultAuthenticationMethodsLookupStrategy");
+
         authenticationFlowsLookupStrategy = Constraint.isNotNull(strategy, "Lookup strategy cannot be null");
     }
 
diff --git a/idp-authn-api/src/main/java/net/shibboleth/idp/authn/config/AuthenticationProfileConfiguration.java b/idp-authn-api/src/main/java/net/shibboleth/idp/authn/config/AuthenticationProfileConfiguration.java
index d5b8fcdbe..acfc9aa97 100644
--- a/idp-authn-api/src/main/java/net/shibboleth/idp/authn/config/AuthenticationProfileConfiguration.java
+++ b/idp-authn-api/src/main/java/net/shibboleth/idp/authn/config/AuthenticationProfileConfiguration.java
@@ -53,7 +53,10 @@ public interface AuthenticationProfileConfiguration extends ProfileConfiguration
      * @param profileRequestContext current profile request context
      * 
      * @return  a set of authentication flow IDs to allow 
+     * 
+     * @deprecated
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     @ConfigurationSetting(name="authenticationFlows")
     @Nonnull @NotLive @Unmodifiable Set<String> getAuthenticationFlows(
             @Nullable final ProfileRequestContext profileRequestContext);
diff --git a/idp-cas-api/src/main/java/net/shibboleth/idp/cas/config/LoginConfiguration.java b/idp-cas-api/src/main/java/net/shibboleth/idp/cas/config/LoginConfiguration.java
index 65073026e..5e6592388 100644
--- a/idp-cas-api/src/main/java/net/shibboleth/idp/cas/config/LoginConfiguration.java
+++ b/idp-cas-api/src/main/java/net/shibboleth/idp/cas/config/LoginConfiguration.java
@@ -36,6 +36,8 @@ import net.shibboleth.shared.collection.CollectionSupport;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.logic.FunctionSupport;
 import net.shibboleth.shared.logic.PredicateSupport;
+import net.shibboleth.shared.primitive.DeprecationSupport;
+import net.shibboleth.shared.primitive.DeprecationSupport.ObjectType;
 import net.shibboleth.shared.primitive.StringSupport;
 
 /**
@@ -125,6 +127,7 @@ public class LoginConfiguration extends AbstractProtocolConfiguration
     }
     
     /** {@inheritDoc} */
+    @Deprecated(since="5.2.0", forRemoval=true)
     @Nonnull @NotLive @Unmodifiable public Set<String> getAuthenticationFlows(
             @Nullable final ProfileRequestContext profileRequestContext) {
         
@@ -139,8 +142,14 @@ public class LoginConfiguration extends AbstractProtocolConfiguration
      * Set the authentication flows to use.
      * 
      * @param flows   flow identifiers to use
+     * 
+     * @deprecated
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     public void setAuthenticationFlows(@Nullable final Collection<String> flows) {
+        DeprecationSupport.warnOnce(ObjectType.CONFIGURATION, "setAuthenticationFlows", "relying-party.xml",
+                "setDefaultAuthenticationMethods");
+        
         if (flows != null) {
             authenticationFlowsLookupStrategy =
                     FunctionSupport.constant(Set.copyOf(StringSupport.normalizeStringCollection(flows)));
@@ -153,9 +162,15 @@ public class LoginConfiguration extends AbstractProtocolConfiguration
      * Set a lookup strategy for the authentication flows to use.
      *
      * @param strategy  lookup strategy
+     * 
+     * @deprecated
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     public void setAuthenticationFlowsLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,Set<String>> strategy) {
+        DeprecationSupport.warnOnce(ObjectType.CONFIGURATION, "setAuthenticationFlowsLookupStrategy",
+                "relying-party.xml", "setDefaultAuthenticationMethodsLookupStrategy");
+
         authenticationFlowsLookupStrategy = Constraint.isNotNull(strategy, "Lookup strategy cannot be null");
     }
     
diff --git a/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/saml1/profile/config/impl/BrowserSSOProfileConfiguration.java b/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/saml1/profile/config/impl/BrowserSSOProfileConfiguration.java
index 4e0363ea1..cba607b16 100644
--- a/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/saml1/profile/config/impl/BrowserSSOProfileConfiguration.java
+++ b/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/saml1/profile/config/impl/BrowserSSOProfileConfiguration.java
@@ -36,7 +36,9 @@ import net.shibboleth.shared.collection.CollectionSupport;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.logic.FunctionSupport;
 import net.shibboleth.shared.logic.PredicateSupport;
+import net.shibboleth.shared.primitive.DeprecationSupport;
 import net.shibboleth.shared.primitive.StringSupport;
+import net.shibboleth.shared.primitive.DeprecationSupport.ObjectType;
 
 /** Configuration for SAML 1 Browser SSO profile requests. */
 public class BrowserSSOProfileConfiguration extends AbstractSAML1AssertionProducingProfileConfiguration
@@ -281,6 +283,7 @@ public class BrowserSSOProfileConfiguration extends AbstractSAML1AssertionProduc
     }
 
     /** {@inheritDoc} */
+    @Deprecated(since="5.2.0", forRemoval=true)
     @Nonnull @NotLive @Unmodifiable public Set<String> getAuthenticationFlows(
             @Nullable final ProfileRequestContext profileRequestContext) {
         
@@ -295,8 +298,14 @@ public class BrowserSSOProfileConfiguration extends AbstractSAML1AssertionProduc
      * Set the authentication flows to use.
      * 
      * @param flows   flow identifiers to use
+     * 
+     * @deprecated
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     public void setAuthenticationFlows(@Nullable final Collection<String> flows) {
+        DeprecationSupport.warnOnce(ObjectType.CONFIGURATION, "setAuthenticationFlows", "relying-party.xml",
+                "setDefaultAuthenticationMethods");
+
         if (flows != null) {
             authenticationFlowsLookupStrategy =
                     FunctionSupport.constant(Set.copyOf(StringSupport.normalizeStringCollection(flows)));
@@ -311,9 +320,15 @@ public class BrowserSSOProfileConfiguration extends AbstractSAML1AssertionProduc
      * @param strategy  lookup strategy
      * 
      * @since 3.3.0
+     * 
+     * @Deprecated(since="5.2.0", forRemoval=true)
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     public void setAuthenticationFlowsLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,Set<String>> strategy) {
+        DeprecationSupport.warnOnce(ObjectType.CONFIGURATION, "setAuthenticationFlowsLookupStrategy",
+                "relying-party.xml", "setDefaultAuthenticationMethodsLookupStrategy");
+
         authenticationFlowsLookupStrategy = Constraint.isNotNull(strategy, "Lookup strategy cannot be null");
     }
 
diff --git a/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/impl/BrowserSSOProfileConfiguration.java b/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/impl/BrowserSSOProfileConfiguration.java
index 5137eefd0..672e54440 100644
--- a/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/impl/BrowserSSOProfileConfiguration.java
+++ b/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/impl/BrowserSSOProfileConfiguration.java
@@ -958,6 +958,7 @@ public class BrowserSSOProfileConfiguration extends AbstractSAML2AssertionProduc
     }
 
     /** {@inheritDoc} */
+    @Deprecated(since="5.2.0", forRemoval=true)
     @Nonnull @NotLive @Unmodifiable public Set<String> getAuthenticationFlows(
             @Nullable final ProfileRequestContext profileRequestContext) {
         final Set<String> flows = authenticationFlowsLookupStrategy.apply(profileRequestContext);
@@ -971,8 +972,14 @@ public class BrowserSSOProfileConfiguration extends AbstractSAML2AssertionProduc
      * Set the authentication flows to use.
      * 
      * @param flows   flow identifiers to use
+     * 
+     * @deprecated
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     public void setAuthenticationFlows(@Nullable final Collection<String> flows) {
+        DeprecationSupport.warnOnce(ObjectType.CONFIGURATION, "setAuthenticationFlows", "relying-party.xml",
+                "setDefaultAuthenticationMethods");
+        
         if (flows != null) {
             authenticationFlowsLookupStrategy =
                     FunctionSupport.constant(
@@ -988,9 +995,15 @@ public class BrowserSSOProfileConfiguration extends AbstractSAML2AssertionProduc
      * @param strategy  lookup strategy
      * 
      * @since 3.3.0
+     * 
+     * @deprecated
      */
+    @Deprecated(since="5.2.0", forRemoval=true)
     public void setAuthenticationFlowsLookupStrategy(
             @Nonnull final Function<ProfileRequestContext,Set<String>> strategy) {
+        DeprecationSupport.warnOnce(ObjectType.CONFIGURATION, "setAuthenticationFlowsLookupStrategy",
+                "relying-party.xml", "setDefaultAuthenticationMethodsLookupStrategy");
+
         authenticationFlowsLookupStrategy = Constraint.isNotNull(strategy, "Lookup strategy cannot be null");
     }
 

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


More information about the commits mailing list