Interface DynamicDuoOIDCIntegration
-
- All Superinterfaces:
DuoOIDCIntegration,PrincipalSupportingComponent
- All Known Implementing Classes:
DefaultDuoOIDCIntegration
public interface DynamicDuoOIDCIntegration extends DuoOIDCIntegration
SpecialisedDuoOIDCIntegrationthat allows redirectURIs to be pre-registered or computed dynamically against a list of allowed origins.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Set<String>getAllowedOrigins()Get a list of URL origins that are allowed to appear in computed redirect URIs.StringgetRegisteredRedirectURI()Get the static pre-registered redirect_uri.booleanisRedirectURIPreregistered()Has a redirectURI been pre-registered i.e.voidsetRedirectURIIfAbsent(String computedRedirectURI)Set the redirectURI from the one given in a thread-safe way.-
Methods inherited from interface net.shibboleth.idp.plugin.authn.duo.DuoOIDCIntegration
getAPIHost, getAuthorizeEndpoint, getClientId, getHealthCheckEndpoint, getRedirectURI, getSecretKey, getTokenEndpoint
-
Methods inherited from interface net.shibboleth.idp.authn.principal.PrincipalSupportingComponent
getSupportedPrincipals
-
-
-
-
Method Detail
-
getAllowedOrigins
@Nonnull @NotLive @Unmodifiable Set<String> getAllowedOrigins()
Get a list of URL origins that are allowed to appear in computed redirect URIs.- Returns:
- a set of unmodifiable allowed origins. Never null but could be empty.
-
getRegisteredRedirectURI
@Nullable String getRegisteredRedirectURI()
Get the static pre-registered redirect_uri.- Returns:
- the pre-registered redirect_uri.
-
isRedirectURIPreregistered
boolean isRedirectURIPreregistered()
Has a redirectURI been pre-registered i.e. set in the properties file.- Returns:
- true iff
getRegisteredRedirectURI()is not null, false otherwise.
-
setRedirectURIIfAbsent
void setRedirectURIIfAbsent(@Nonnull @NotEmpty String computedRedirectURI)
Set the redirectURI from the one given in a thread-safe way.
Once set,
DuoOIDCIntegration.getRedirectURI()should return the value of computedRedirectURI.This is a sate changing operation, and should be thread-safe in its operation, as the integration will be shared amongst threads e.g. synchronize the method call.
- Parameters:
computedRedirectURI- the runtime computed redirectURI.
-
-