IdP40Details
This is historical obviously, it was used during V4 planning.
Collection point for discussion around V4 scoping, before we turn this into formal JIRA issues.
Technical
Require Java 11
By transitive closure this means moving Guava up to 23 (where it will use Java 8 Functions)
Spring Framework 5, SWF 2.5
Deprecated or embrace Rhino? Or Nashorn?
Code Coverage - we used it early in V3, Adopt or drop.
Remove use of parameterized constructors
IDP-1047 - Getting issue details... STATUS,IDP-1054 - Getting issue details... STATUS(and others)Generics in API classes
IDP-316 - Getting issue details... STATUS(and others)Deprecate SVN Resource and replace with "something" (see also here)
Other code cleanup
Additions
Move Attribute Encoding elsewhere
IDP-1434 - Getting issue details... STATUSFix use of impl classes in deployer wiring of connectors
IDP-1179 - Getting issue details... STATUSMixed Mode language (allow raw spring inside attribute-resolver &c, and get it parsed inside the same spring context tree)
JSE-18 - Getting issue details... STATUSMulti- Attribute sources, attribute decoding (and gateways)
IDP-926 - Getting issue details... STATUSand many many moreContainer work (jetty-base, windows installer, containers, java (see also
IDP-1092 - Getting issue details... STATUSand many many many moreType conversion in data connectors
Signable Config
pre-canned AD config file for all platforms.
SOAP logout
Changes
ValidUntil Metadata filter
Old style transients in the attribute encode
UK Federation issue?
Data Connectors shared between users (some write back some dont)
Template AttributeDefinition ignores input attributes with no values instead of failing
Change default for local storage use and logout properties to true in the actual property file, though not internally
Removals
Feature Related
Remove the text-based status view and point the status command line at the metrics interface.
Perhaps turn text view into a prettier view of more information
Language based attributes
Configuration Related
Unless explicitly noted, everything proposed currently warns in the log.
'Legacy' (V2) relying-party.xml. and security name space
This is currently not warned on
The security name space is, in addition used in support of complex metadata configuration (e.g. X509 signature validation). We should remove this and document how to do it with attendant spring wiring.
Removing this will allow cleanup in metadata-providers parsing (for example the <MetadataResolver> parser needs to be aware that it might be top level or it might be below a <RelyingParty>)
Legacy Principal Connectors
Plus a lot of upstream code.
Currently warned on (since 3.0)
Will this allow refactoring of the C14N code to remove hooks for legacy support?
Legacy namespaces for Attribute Fitering and Resolution
(urn:mace:shibboleth:2.0:afp:mf:basic, urn:mace:shibboleth:2.0:afp:mf:saml, urn:mace:shibboleth:2.0:attribute:encoder, urn:mace:shibboleth:2.0:resolver:ad, urn:mace:shibboleth:2.0:resolver:dc, urn:mace:shibboleth:2.0:resolver:pc)Currently warned on (since 3.3, 3.2)
Legacy NameID-based AttributeEncoders
Making the work context available to to Attribute Scripts
Warned on
Can then remove
net.shibboleth.idp.attribute.resolver.ad.impl.DelegatedWorkContext
LDAPDataConnector:
mergeResults attributes (deprecated since V2.?)
RDBMS
queryUsesStoredProcedure & cacheResults attributes (deprecated in V2?)
Attribute Filter details
Issuer filters (Not implemented and warned on in V3.)
Rule & Policy References
Attribute <Dependency> (Plus a lot of upstream code.)
Do we want to be more radical?
/META-INF/net.shibboleth.idp/config.xmlOld style scripted attributes
edu.internet2.middleware.shibboleth.common.attribute.provider.BasicAttributeOld style (pre 3.3) MFA
Will be tricky but need to warn on property and flow use if we can
Change default audit log format
Code Related
There are many deprecated methods and classes (also Interfaces) which currently do not log warnings. Probably need to review and, if appropriate add warning for 3.4.