Introduction

It is an important design goal for IdP V4.0 that any configuration that loads without warning in V3.4 will successfully load and run in V4.0. 

Most deprecated items issue a warning in the DEPRECATED logging category, and we're trying to find and fix any warnings that didn't make it into that category as we issue patches.

WARN [DEPRECATED:118] - xsi:type '{urn:mace:shibboleth:2.0:attribute:encoder}SAML2XMLObject', (class path resource [net/shibboleth/idp/attribute/resolver/spring/enc/saml2XmlObjectDefault.xml]): This will be removed in the next major version of this software; replacement is {urn:mace:shibboleth:2.0:resolver}SAML2XMLObject

Custom Syntax Files

In V3 there was support for a lot of legacy V2 configuration, but much of it was deprecated, mostly when 3.0 was released, some during the releases since then.  In V4 all the deprecated support will be removed.

Attribute Filtering

This refers to configuration described in AttributeFilterConfiguration.

Deprecated namespaces

Deprecated Elements

The following elements are deprecated, and there is no substitute available:

These elements were deprecated in V3.0.

Attribute Resolution

This refers to configuration described in AttributeResolverConfiguration.

Deprecated Namespaces

Deprecated Elements and Attributes

Deprecated Resolver Types

The following are deprecated and are replaced by the NameID Generation service.

Functionality

Use of the AttributeResolverWorkContext class is deprecated in scripts. This is currently exposed during resolution as a child of the AttributeResolutionContext

Attribute IDs within the IdP containing whitespace are deprecated and will not be permitted in V4.

Metadata

Deprecated Provider Types

Deprecated Elements and Attributes

Legacy Relying Party Namespace

The entirety of this namespace is deprecated. Metadata configuration is described here and the modern form of relying party configuration here. The V2 syntax support will be dropped from V4.

Legacy Security Namespace

This namespace was used primarily within the legacy relying party syntax, which has been deprecated.

It was also used in the LDAP data connector to specify an X.509 certificate to serve as either the trust (<StartTLSTrustCredential>) or authentication (<StartTLSAuthenticationCredential>) credentials used to configure the TLS connection to an LDAP server. These have been replaced with the trustFile="file"authCert="file" and authKey="file" attributes.

All are deprecated.

One non-deprecated case is within a SignatureValidation filter. This, however, supports simpler replacement attributes (either certificateFile="file" or trustEngineRef="bean" for advanced cases).

Another is the specification of a <TLSTrustEngine> for transport authentication of a metadata source, but this is not a recommended or common scenario.

Properties

The following properties are deprecated (usually connected to the deprecation of specific features) and will be removed in V4:

Other Changes

API Changes

There are a variety of API changes planned that may impact advanced deployers making use of classes in scripts or extensions. Most changes are relatively small and non-impactful. The Javadocs (see the Configuration page for links once V3.4 is released) include summaries of all deprecated classes and methods.