Class DefaultOIDCLogoutConfiguration
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
net.shibboleth.profile.config.AbstractProfileConfiguration
net.shibboleth.profile.config.AbstractConditionalProfileConfiguration
net.shibboleth.idp.profile.config.AbstractInterceptorAwareProfileConfiguration
net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2InterceptorAwareProfileConfiguration
net.shibboleth.oidc.profile.config.impl.DefaultOIDCLogoutConfiguration
- All Implemented Interfaces:
InterceptorAwareProfileConfiguration,OIDCLogoutProfileConfiguration,OIDCProfileConfiguration,OAuth2InterceptorAwareProfileConfiguration,OAuth2ProfileConfiguration,OAuth2TokenEncryptionProfileConfiguration,ConditionalProfileConfiguration,OverriddenIssuerProfileConfiguration,ProfileConfiguration,Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent
public class DefaultOIDCLogoutConfiguration
extends AbstractOAuth2InterceptorAwareProfileConfiguration
implements OIDCLogoutProfileConfiguration, OverriddenIssuerProfileConfiguration
Implementation of a profile configuration for the OpenID Connect logout.
- Since:
- 3.1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Predicate<ProfileRequestContext>Whether encryption is optional in the face of no key, etc.private Predicate<ProfileRequestContext>Whether to consider front-channel logout propagation successful.private Function<ProfileRequestContext,String> Lookup function to override issuer value.private Function<ProfileRequestContext,BiPredicate<String, SPSession>> Lookup function to the RP-initiated logout's logout_hint parameter.private Predicate<ProfileRequestContext>Whether encryption is optional in the face of no key, etc.static final StringOIDC Back-Channel Logout profile counter name.private Predicate<ProfileRequestContext>Whether to require the use of id_token_hint in RP-initiated logout parameters.private Predicate<ProfileRequestContext>Whether to revoke the tokens related to the session to be logged out.Fields inherited from interface net.shibboleth.oidc.profile.config.OIDCLogoutProfileConfiguration
PROFILE_IDFields inherited from interface net.shibboleth.profile.config.ProfileConfiguration
DEFAULT_DISALLOWED_FEATURES -
Constructor Summary
ConstructorsConstructorDescriptionConstructor.DefaultOIDCLogoutConfiguration(String profileId) Creates a new configuration instance. -
Method Summary
Modifier and TypeMethodDescriptiongetIssuer(ProfileRequestContext profileRequestContext) getLogoutHintMatchingStrategy(ProfileRequestContext profileRequestContext) Get the bi-predicate for matching logout hint to an existing session in an OIDC RP-initiated logout sequence.booleanisEncryptionOptional(ProfileRequestContext profileRequestContext) Get whether encryption is optional in the face of a missing key, etc.booleanisFrontChannelSuccess(ProfileRequestContext profileRequestContext) Get whether to consider front-channel logout propagation successful.booleanisPreferFrontChannel(ProfileRequestContext profileRequestContext) Get whether to prefer front-channel if both are defined for the RP.booleanisRequireIdTokenHint(ProfileRequestContext profileRequestContext) Get whether to require the use of id_token_hint in an OIDC RP-initiated logout sequence.booleanisRevokeTokens(ProfileRequestContext profileRequestContext) Get whether to revoke the tokens related to the session to be logged out.voidsetEncryptionOptional(boolean flag) Set whether encryption is optional in the face of a missing key, etc.voidSet a condition to determine whether encryption is optional in the face of a missing key, etc.voidsetFrontChannelSuccess(boolean flag) Set whether to consider front-channel logout propagation successful.voidSet a condition to determine whether to consider front-channel logout propagation successful.voidSet overridden issuer value.voidSets lookup strategy for overridden issuer value.voidsetLogoutHintMatchingStrategy(BiPredicate<String, SPSession> strategy) Set a bi-predicate for matching logout hint to an existing session in an OIDC RP-initiated logout sequence.voidsetLogoutHintMatchingStrategyLookupStrategy(Function<ProfileRequestContext, BiPredicate<String, SPSession>> strategy) Set a lookup strategy for the bi-predicate for matching logout hint to an existing session in an OIDC RP-initiated logout sequence.voidsetPreferFrontChannel(boolean flag) Set whether to prefer front-channel if both are defined for the RP.voidSet a condition to determine whether to prefer front-channel if both are defined for the RP.voidsetRequireIdTokenHint(boolean flag) Set whether to to require the use of id_token_hint in an OIDC RP-initiated logout sequence.voidSet a condition to determine whether to to require the use of id_token_hint in an OIDC RP-initiated logout sequence.voidsetRevokeTokens(boolean flag) Set whether to revoke the tokens related to the session to be logged out.voidsetRevokeTokensPredicate(Predicate<ProfileRequestContext> condition) Set a condition to determine whether to revoke the tokens related to the session to be logged out.Methods inherited from class net.shibboleth.oidc.profile.oauth2.config.impl.AbstractOAuth2InterceptorAwareProfileConfiguration
getMessageHandler, setMessageHandler, setMessageHandlerLookupStrategyMethods inherited from class net.shibboleth.idp.profile.config.AbstractInterceptorAwareProfileConfiguration
getInboundInterceptorFlows, getOutboundInterceptorFlows, setInboundInterceptorFlows, setInboundInterceptorFlowsLookupStrategy, setOutboundInterceptorFlows, setOutboundInterceptorFlowsLookupStrategyMethods inherited from class net.shibboleth.profile.config.AbstractConditionalProfileConfiguration
getActivationCondition, setActivationConditionMethods inherited from class net.shibboleth.profile.config.AbstractProfileConfiguration
equals, getDisallowedFeatures, getSecurityConfiguration, hashCode, isFeatureDisallowed, setDisallowedFeatures, setDisallowedFeaturesLookupStrategy, setSecurityConfiguration, setSecurityConfigurationLookupStrategyMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
setIdMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
doInitialize, ensureId, getId, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentExceptionMethods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent
checkComponentActive, checkSetterPreconditions, destroy, doDestroy, initialize, isDestroyed, isInitializedMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.shibboleth.profile.config.ConditionalProfileConfiguration
getActivationConditionMethods inherited from interface net.shibboleth.shared.component.IdentifiedComponent
getIdMethods inherited from interface net.shibboleth.idp.profile.config.InterceptorAwareProfileConfiguration
getInboundInterceptorFlows, getOutboundInterceptorFlowsMethods inherited from interface net.shibboleth.profile.config.ProfileConfiguration
getDisallowedFeatures, getSecurityConfiguration, isFeatureDisallowed
-
Field Details
-
PROFILE_COUNTER
OIDC Back-Channel Logout profile counter name.- See Also:
-
issuerLookupStrategy
Lookup function to override issuer value. -
encryptionOptionalPredicate
Whether encryption is optional in the face of no key, etc. -
preferFrontChannelPredicate
Whether encryption is optional in the face of no key, etc. -
frontChannelSuccessPredicate
Whether to consider front-channel logout propagation successful. -
revokeTokensPredicate
Whether to revoke the tokens related to the session to be logged out. -
requireIdTokenHintPredicate
Whether to require the use of id_token_hint in RP-initiated logout parameters. -
logoutHintMatchingStrategyLookupStrategy
@Nonnull private Function<ProfileRequestContext,BiPredicate<String, logoutHintMatchingStrategyLookupStrategySPSession>> Lookup function to the RP-initiated logout's logout_hint parameter.
-
-
Constructor Details
-
DefaultOIDCLogoutConfiguration
public DefaultOIDCLogoutConfiguration()Constructor. -
DefaultOIDCLogoutConfiguration
Creates a new configuration instance.- Parameters:
profileId- Unique profile identifier.
-
-
Method Details
-
getIssuer
- Specified by:
getIssuerin interfaceOverriddenIssuerProfileConfiguration
-
setIssuer
Set overridden issuer value.- Parameters:
issuer- issuer value
-
setIssuerLookupStrategy
Sets lookup strategy for overridden issuer value.- Parameters:
strategy- lookup strategy
-
isEncryptionOptional
Description copied from interface:OAuth2TokenEncryptionProfileConfigurationGet whether encryption is optional in the face of a missing key, etc.- Specified by:
isEncryptionOptionalin interfaceOAuth2TokenEncryptionProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- true iff encryption is optional
-
setEncryptionOptional
public void setEncryptionOptional(boolean flag) Set whether encryption is optional in the face of a missing key, etc.- Parameters:
flag- flag to set
-
setEncryptionOptionalPredicate
Set a condition to determine whether encryption is optional in the face of a missing key, etc.- Parameters:
condition- condition to set
-
isPreferFrontChannel
Description copied from interface:OIDCLogoutProfileConfigurationGet whether to prefer front-channel if both are defined for the RP.- Specified by:
isPreferFrontChannelin interfaceOIDCLogoutProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- true iff front-channel is to be preferred
-
setPreferFrontChannel
public void setPreferFrontChannel(boolean flag) Set whether to prefer front-channel if both are defined for the RP.- Parameters:
flag- flag to set
-
setPreferFrontChannelPredicate
Set a condition to determine whether to prefer front-channel if both are defined for the RP.- Parameters:
condition- condition to set
-
isFrontChannelSuccess
Description copied from interface:OIDCLogoutProfileConfigurationGet whether to consider front-channel logout propagation successful.- Specified by:
isFrontChannelSuccessin interfaceOIDCLogoutProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- true iff front-channel propagation considered as successful
-
setFrontChannelSuccess
public void setFrontChannelSuccess(boolean flag) Set whether to consider front-channel logout propagation successful.- Parameters:
flag- flag to set
-
setFrontChannelSuccessPredicate
Set a condition to determine whether to consider front-channel logout propagation successful.- Parameters:
condition- condition to set
-
isRevokeTokens
Description copied from interface:OIDCLogoutProfileConfigurationGet whether to revoke the tokens related to the session to be logged out.- Specified by:
isRevokeTokensin interfaceOIDCLogoutProfileConfiguration- Parameters:
profileRequestContext- current profile request context- Returns:
- true iff the tokens are to be revoked
-
setRevokeTokens
public void setRevokeTokens(boolean flag) Set whether to revoke the tokens related to the session to be logged out.- Parameters:
flag- flag to set
-
setRevokeTokensPredicate
Set a condition to determine whether to revoke the tokens related to the session to be logged out.- Parameters:
condition- condition to set
-
isRequireIdTokenHint
Description copied from interface:OIDCLogoutProfileConfigurationGet whether to require the use of id_token_hint in an OIDC RP-initiated logout sequence.- Specified by:
isRequireIdTokenHintin interfaceOIDCLogoutProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- true iff the use of id_token_hint is required
-
setRequireIdTokenHint
public void setRequireIdTokenHint(boolean flag) Set whether to to require the use of id_token_hint in an OIDC RP-initiated logout sequence.- Parameters:
flag- flag to set
-
setRequireIdTokenHintPredicate
Set a condition to determine whether to to require the use of id_token_hint in an OIDC RP-initiated logout sequence.- Parameters:
condition- condition to set
-
getLogoutHintMatchingStrategy
@Nullable public BiPredicate<String,SPSession> getLogoutHintMatchingStrategy(@Nullable ProfileRequestContext profileRequestContext) Description copied from interface:OIDCLogoutProfileConfigurationGet the bi-predicate for matching logout hint to an existing session in an OIDC RP-initiated logout sequence.- Specified by:
getLogoutHintMatchingStrategyin interfaceOIDCLogoutProfileConfiguration- Parameters:
profileRequestContext- profile request context- Returns:
- the bi-predicate for matching logout hint to an existing session.
-
setLogoutHintMatchingStrategy
Set a bi-predicate for matching logout hint to an existing session in an OIDC RP-initiated logout sequence.- Parameters:
strategy- bi-predicate to set
-
setLogoutHintMatchingStrategyLookupStrategy
public void setLogoutHintMatchingStrategyLookupStrategy(@Nonnull Function<ProfileRequestContext, BiPredicate<String, SPSession>> strategy) Set a lookup strategy for the bi-predicate for matching logout hint to an existing session in an OIDC RP-initiated logout sequence.- Parameters:
strategy- lookup strategy
-