Class AbstractOAuth2FlowAwareProfileConfiguration
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent
-
- net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
-
- net.shibboleth.idp.profile.config.AbstractProfileConfiguration
-
- net.shibboleth.idp.profile.config.AbstractConditionalProfileConfiguration
-
- net.shibboleth.oidc.profile.oauth2.config.AbstractOAuth2ClientAuthenticableProfileConfiguration
-
- net.shibboleth.oidc.profile.oauth2.config.AbstractOAuth2FlowAwareProfileConfiguration
-
- All Implemented Interfaces:
net.shibboleth.idp.authn.config.AuthenticationProfileConfiguration,net.shibboleth.idp.profile.config.ConditionalProfileConfiguration,net.shibboleth.idp.profile.config.ProfileConfiguration,OAuth2ProfileConfiguration,Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent
- Direct Known Subclasses:
AbstractOIDCSSOConfiguration,OIDCDynamicRegistrationConfiguration
public abstract class AbstractOAuth2FlowAwareProfileConfiguration extends AbstractOAuth2ClientAuthenticableProfileConfiguration
Base class for OIDC protocol configuration, containing configuration bits shared by all flow aware OIDC protocol configurations.
-
-
Field Summary
Fields Modifier and Type Field Description private Predicate<ProfileRequestContext>authorizationCodeFlowPredicatePredicate used to indicate whether authorization code flow is supported by this profile.private Predicate<ProfileRequestContext>hybridFlowPredicatePredicate used to indicate whether hybrid flow is supported by this profile.private Predicate<ProfileRequestContext>implicitFlowPredicatePredicate used to indicate whether implicit flow is supported by this profile.private Predicate<ProfileRequestContext>refreshTokensPredicatePredicate used to indicate whether refresh tokens are supported by this profile.
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractOAuth2FlowAwareProfileConfiguration(String profileId)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisAuthorizationCodeFlowEnabled(ProfileRequestContext profileRequestContext)Get whether authorization code flow is supported by this profile.booleanisHybridFlowEnabled(ProfileRequestContext profileRequestContext)Get whether implicit flow is supported by this profile.booleanisImplicitFlowEnabled(ProfileRequestContext profileRequestContext)Get whether hybrid flow is supported by this profile.booleanisRefreshTokensEnabled(ProfileRequestContext profileRequestContext)Get whether refresh tokens are supported by this profile.voidsetAuthorizationCodeFlowEnabled(boolean flag)Set whether authorization code flow is supported by this profile.voidsetAuthorizationCodeFlowEnabledPredicate(Predicate<ProfileRequestContext> condition)Set condition used to indicate whether authorization code flow is supported by this profile.voidsetHybridFlowEnabled(boolean flag)Set whether implicit flow is supported by this profile.voidsetHybridFlowEnabledPredicate(Predicate<ProfileRequestContext> condition)Set condition used to indicate whether implicit flow is supported by this profile.voidsetImplicitFlowEnabled(boolean flag)Set whether hybrid flow is supported by this profile.voidsetImplicitFlowEnabledPredicate(Predicate<ProfileRequestContext> condition)Set condition used to indicate whether hybrid flow is supported by this profile.voidsetRefreshTokensEnabled(boolean flag)Set whether refresh tokens are supported by this profile.voidsetRefreshTokensEnabledPredicate(Predicate<ProfileRequestContext> condition)Set condition used to indicate whether refresh tokens are supported by this profile.-
Methods inherited from class net.shibboleth.oidc.profile.oauth2.config.AbstractOAuth2ClientAuthenticableProfileConfiguration
getAuthenticationFlows, getClaimsValidator, getDefaultAuthenticationMethods, getPostAuthenticationFlows, getProxyCount, getTokenEndpointAuthMethods, isForceAuthn, setAuthenticationFlows, setAuthenticationFlowsLookupStrategy, setClaimsValidator, setClaimsValidatorLookupStrategy, setDefaultAuthenticationMethods, setDefaultAuthenticationMethodsLookupStrategy, setForceAuthn, setForceAuthnPredicate, setPostAuthenticationFlows, setPostAuthenticationFlowsLookupStrategy, setProxyCount, setProxyCountLookupStrategy, setTokenEndpointAuthMethods, setTokenEndpointAuthMethodsLookupStrategy
-
Methods inherited from class net.shibboleth.idp.profile.config.AbstractConditionalProfileConfiguration
getActivationCondition, setActivationCondition
-
Methods inherited from class net.shibboleth.idp.profile.config.AbstractProfileConfiguration
equals, getDisallowedFeatures, getInboundInterceptorFlows, getOutboundInterceptorFlows, getSecurityConfiguration, hashCode, isFeatureDisallowed, setDisallowedFeatures, setDisallowedFeaturesLookupStrategy, setInboundFlowsLookupStrategy, setInboundInterceptorFlows, setInboundInterceptorFlowsLookupStrategy, setOutboundFlowsLookupStrategy, setOutboundInterceptorFlows, setOutboundInterceptorFlowsLookupStrategy, setSecurityConfiguration, setSecurityConfigurationLookupStrategy
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
setId
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent
doInitialize, getId
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, initialize, isDestroyed, isInitialized
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.shibboleth.idp.authn.config.AuthenticationProfileConfiguration
isLocal
-
Methods inherited from interface net.shibboleth.utilities.java.support.component.IdentifiedComponent
getId
-
-
-
-
Field Detail
-
authorizationCodeFlowPredicate
@Nonnull private Predicate<ProfileRequestContext> authorizationCodeFlowPredicate
Predicate used to indicate whether authorization code flow is supported by this profile. Default true.
-
implicitFlowPredicate
@Nonnull private Predicate<ProfileRequestContext> implicitFlowPredicate
Predicate used to indicate whether implicit flow is supported by this profile. Default true.
-
hybridFlowPredicate
@Nonnull private Predicate<ProfileRequestContext> hybridFlowPredicate
Predicate used to indicate whether hybrid flow is supported by this profile. Default true.
-
refreshTokensPredicate
@Nonnull private Predicate<ProfileRequestContext> refreshTokensPredicate
Predicate used to indicate whether refresh tokens are supported by this profile. Default true.
-
-
Constructor Detail
-
AbstractOAuth2FlowAwareProfileConfiguration
protected AbstractOAuth2FlowAwareProfileConfiguration(String profileId)
Constructor.- Parameters:
profileId- Unique profile identifier.
-
-
Method Detail
-
isAuthorizationCodeFlowEnabled
public boolean isAuthorizationCodeFlowEnabled(@Nullable ProfileRequestContext profileRequestContext)Get whether authorization code flow is supported by this profile.- Parameters:
profileRequestContext- profile request context- Returns:
- whether authorization code flow is supported by this profile
-
setAuthorizationCodeFlowEnabled
public void setAuthorizationCodeFlowEnabled(boolean flag)
Set whether authorization code flow is supported by this profile.- Parameters:
flag- flag to set
-
setAuthorizationCodeFlowEnabledPredicate
public void setAuthorizationCodeFlowEnabledPredicate(@Nonnull Predicate<ProfileRequestContext> condition)Set condition used to indicate whether authorization code flow is supported by this profile.- Parameters:
condition- condition to set
-
isHybridFlowEnabled
public boolean isHybridFlowEnabled(@Nullable ProfileRequestContext profileRequestContext)Get whether implicit flow is supported by this profile.- Parameters:
profileRequestContext- profile request context- Returns:
- whether implicit flow is supported by this profile
-
setHybridFlowEnabled
public void setHybridFlowEnabled(boolean flag)
Set whether implicit flow is supported by this profile.- Parameters:
flag- flag to set
-
setHybridFlowEnabledPredicate
public void setHybridFlowEnabledPredicate(@Nonnull Predicate<ProfileRequestContext> condition)Set condition used to indicate whether implicit flow is supported by this profile.- Parameters:
condition- condition to set
-
isImplicitFlowEnabled
public boolean isImplicitFlowEnabled(@Nullable ProfileRequestContext profileRequestContext)Get whether hybrid flow is supported by this profile.- Parameters:
profileRequestContext- profile request context- Returns:
- whether hybrid flow is supported by this profile
-
setImplicitFlowEnabled
public void setImplicitFlowEnabled(boolean flag)
Set whether hybrid flow is supported by this profile.- Parameters:
flag- flag to set
-
setImplicitFlowEnabledPredicate
public void setImplicitFlowEnabledPredicate(@Nonnull Predicate<ProfileRequestContext> condition)Set condition used to indicate whether hybrid flow is supported by this profile.- Parameters:
condition- condition to set.
-
isRefreshTokensEnabled
public boolean isRefreshTokensEnabled(@Nullable ProfileRequestContext profileRequestContext)Get whether refresh tokens are supported by this profile.- Parameters:
profileRequestContext- profile request context- Returns:
- whether refresh tokens are supported by this profile
-
setRefreshTokensEnabled
public void setRefreshTokensEnabled(boolean flag)
Set whether refresh tokens are supported by this profile.- Parameters:
flag- flag to set
-
setRefreshTokensEnabledPredicate
public void setRefreshTokensEnabledPredicate(@Nonnull Predicate<ProfileRequestContext> condition)Set condition used to indicate whether refresh tokens are supported by this profile.- Parameters:
condition- condition to set
-
-