-
Notifications
You must be signed in to change notification settings - Fork 6.1k
Open
Labels
in: saml2An issue in SAML2 modulesAn issue in SAML2 modulestype: enhancementA general enhancementA general enhancement
Description
Spring Security provides minimal validation for SAML 2.0 assertions. ResponseValidator
and AssertionValidator
, introduced in 6.5, simplify providing additional configuration options and as such we can consider supporting checking for replayed SAML 2.0 assertions.
Spring Security already supports replay defense by way of the InResponseTo
attribute and also NotBefore
and NotOnOrAfter
attributes.
A stronger defense is to allow configuring a cache that retains assertion ids for a configured validity window; Spring Security would check against that cache.
Support may look like the following:
public static final class ReplayValidator
implements Converter<ResponseToken, Saml2ResponseValidatorResult> {
private final Cache replayCache;
// ... check each assertion against the cache,
// ... fail the entire response if any assertion is replayed
}
Metadata
Metadata
Assignees
Labels
in: saml2An issue in SAML2 modulesAn issue in SAML2 modulestype: enhancementA general enhancementA general enhancement