Interface ConfigurableRefreshOnNotAuthenticatedProvider<T>

  • Type Parameters:
    T - The type of authentication data held by the provider (e.g. for security tokens this could be a string)
    All Known Implementing Classes:
    InstancePrincipalsAuthenticationDetailsProvider, ResourcePrincipalAuthenticationDetailsProvider, ResourcePrincipalsV3AuthenticationDetailsProvider

    public interface ConfigurableRefreshOnNotAuthenticatedProvider<T>
    For authentication providers with refreshable authentication data (e.g.

    those which wrap a security token received from a remote service), this interface flags that when a caller receives a NotAuthenticated error (HTTP 401) that they can refresh the authentication data and retry their request.

    Consistent HTTP 401s would indicate that there is potentially an issue outside the issued token, so only making a single retry is suggested.

    • Method Detail

      • refreshIfExpiringWithin

        T refreshIfExpiringWithin​(Duration time)
        Refreshes the authentication data used by the provider if the token is expiring within the provided duration
        Parameters:
        time - the duration to check
        Returns:
        the refreshed authentication data
      • refreshIfExpiringWithin

        T refreshIfExpiringWithin​(Duration time,
                                  boolean refreshKeys)
        Refreshes the authentication data used by the provider if the token is expiring within the provided duration and allows to enable/disable refresh of keys
        Parameters:
        time - the duration to check
        refreshKeys - boolean value to enable/disable refresh of keys
        Returns:
        the refreshed authentication data