Class OidcProvider.Builder
java.lang.Object
io.helidon.security.providers.oidc.OidcProvider.Builder
- All Implemented Interfaces:
Builder<OidcProvider.Builder,,OidcProvider> Supplier<OidcProvider>
- Enclosing class:
OidcProvider
public static final class OidcProvider.Builder
extends Object
implements Builder<OidcProvider.Builder,OidcProvider>
Builder for
OidcProvider.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddTenantConfigFinder(TenantConfigFinder configFinder) Add specificTenantConfigFinderimplementation.addTenantConfigFinder(TenantConfigFinder configFinder, int priority) Add specificTenantConfigFinderimplementation with specific priority.addTenantConfigFinder(TenantIdFinder idFinder) Add specificTenantIdFinderimplementation.addTenantConfigFinder(TenantIdFinder idFinder, int priority) Add specificTenantIdFinderimplementation with specific priority.build()Build the instance from this builder.Update this builder with configuration.discoverTenantConfigProviders(boolean discoverConfigProviders) Whether to allowTenantConfigProviderservice loader discovery.discoverTenantIdProviders(boolean discoverIdProviders) Whether to allowTenantIdFinderservice loader discovery.oidcConfig(OidcConfig config) Configuration of OIDC (Open ID Connect).optional(boolean optional) Whether authentication is required.outboundConfig(OutboundConfig config) Configuration of outbound rules.propagate(boolean propagate) Whether to propagate identity.useJwtGroups(boolean useJwtGroups) Claimgroupsfrom JWT will be used to automatically add groups to current subject (may be used withRolesAllowedannotation).
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
build
Description copied from interface:BuilderBuild the instance from this builder.- Specified by:
buildin interfaceBuilder<OidcProvider.Builder,OidcProvider> - Returns:
- instance of the built type
-
config
Update this builder with configuration. Only updates information that was not explicitly set. The following configuration options are used:Optional configuration parameters key default value description The current config node is used to construct OidcConfig.propagate false Whether to propagate token (overall configuration). If set to false, propagation will not be done at all. outbound Configuration of OutboundConfig. In addition you can usepropagateto disable propagation for an outbound target, andtokento configure outboundTokenHandlerfor an outbound target. Default token handler usesAuthorizationheader with abearerprefix- Parameters:
config- OIDC provider configuration- Returns:
- updated builder instance
-
propagate
Whether to propagate identity.- Parameters:
propagate- whether to propagate identity (true) or not (false)- Returns:
- updated builder instance
-
outboundConfig
Configuration of outbound rules.- Parameters:
config- outbound configuration- Returns:
- updated builder instance
-
oidcConfig
Configuration of OIDC (Open ID Connect).- Parameters:
config- OIDC configuration for this provider- Returns:
- updated builder instance
-
optional
Whether authentication is required. By default, request will fail if the authentication cannot be verified. If set to true, request will process and this provider will abstain.- Parameters:
optional- whether authentication is optional (true) or required (false)- Returns:
- updated builder instance
-
useJwtGroups
Claimgroupsfrom JWT will be used to automatically add groups to current subject (may be used withRolesAllowedannotation).- Parameters:
useJwtGroups- whether to usegroupsclaim from JWT to retrieve roles- Returns:
- updated builder instance
-
discoverTenantConfigProviders
Whether to allowTenantConfigProviderservice loader discovery. Default value istrue.- Parameters:
discoverConfigProviders- whether to use service loader- Returns:
- updated builder instance
-
discoverTenantIdProviders
Whether to allowTenantIdFinderservice loader discovery. Default value istrue.- Parameters:
discoverIdProviders- whether to use service loader- Returns:
- updated builder instance
-
addTenantConfigFinder
Add specificTenantConfigFinderimplementation. PriorityBUILDER_WEIGHTis used.- Parameters:
configFinder- config finder implementation- Returns:
- updated builder instance
-
addTenantConfigFinder
Add specificTenantConfigFinderimplementation with specific priority.- Parameters:
configFinder- config finder implementationpriority- finder priority- Returns:
- updated builder instance
-
addTenantConfigFinder
Add specificTenantIdFinderimplementation. PriorityBUILDER_WEIGHTis used.- Parameters:
idFinder- id finder implementation- Returns:
- updated builder instance
-
addTenantConfigFinder
Add specificTenantIdFinderimplementation with specific priority.- Parameters:
idFinder- id finder implementationpriority- finder priority- Returns:
- updated builder instance
-