Class OidcProvider.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • config

        public OidcProvider.Builder config​(Config 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 use propagate to disable propagation for an outbound target, and token to configure outbound TokenHandler for an outbound target. Default token handler uses Authorization header with a bearer prefix
        Parameters:
        config - OIDC provider configuration
        Returns:
        updated builder instance
      • propagate

        public OidcProvider.Builder propagate​(boolean propagate)
        Whether to propagate identity.
        Parameters:
        propagate - whether to propagate identity (true) or not (false)
        Returns:
        updated builder instance
      • outboundConfig

        public OidcProvider.Builder outboundConfig​(OutboundConfig config)
        Configuration of outbound rules.
        Parameters:
        config - outbound configuration
        Returns:
        updated builder instance
      • oidcConfig

        public OidcProvider.Builder oidcConfig​(OidcConfig config)
        Configuration of OIDC (Open ID Connect).
        Parameters:
        config - OIDC configuration for this provider
        Returns:
        updated builder instance
      • optional

        public OidcProvider.Builder optional​(boolean 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

        public OidcProvider.Builder useJwtGroups​(boolean useJwtGroups)
        Claim groups from JWT will be used to automatically add groups to current subject (may be used with RolesAllowed annotation).
        Parameters:
        useJwtGroups - whether to use groups claim from JWT to retrieve roles
        Returns:
        updated builder instance
      • discoverTenantConfigProviders

        public OidcProvider.Builder discoverTenantConfigProviders​(boolean discoverConfigProviders)
        Whether to allow TenantConfigProvider service loader discovery. Default value is true.
        Parameters:
        discoverConfigProviders - whether to use service loader
        Returns:
        updated builder instance
      • discoverTenantIdProviders

        public OidcProvider.Builder discoverTenantIdProviders​(boolean discoverIdProviders)
        Whether to allow TenantIdFinder service loader discovery. Default value is true.
        Parameters:
        discoverIdProviders - whether to use service loader
        Returns:
        updated builder instance
      • addTenantConfigFinder

        public OidcProvider.Builder addTenantConfigFinder​(TenantConfigFinder configFinder)
        Add specific TenantConfigFinder implementation. Priority BUILDER_PRIORITY is used.
        Parameters:
        configFinder - config finder implementation
        Returns:
        updated builder instance
      • addTenantConfigFinder

        public OidcProvider.Builder addTenantConfigFinder​(TenantConfigFinder configFinder,
                                                          int priority)
        Add specific TenantConfigFinder implementation with specific priority.
        Parameters:
        configFinder - config finder implementation
        priority - finder priority
        Returns:
        updated builder instance
      • addTenantConfigFinder

        public OidcProvider.Builder addTenantConfigFinder​(TenantIdFinder idFinder)
        Add specific TenantIdFinder implementation. Priority BUILDER_PRIORITY is used.
        Parameters:
        idFinder - id finder implementation
        Returns:
        updated builder instance
      • addTenantConfigFinder

        public OidcProvider.Builder addTenantConfigFinder​(TenantIdFinder idFinder,
                                                          int priority)
        Add specific TenantIdFinder implementation with specific priority.
        Parameters:
        idFinder - id finder implementation
        priority - finder priority
        Returns:
        updated builder instance