Class ChainedTokenCredential

java.lang.Object
com.azure.identity.ChainedTokenCredential
All Implemented Interfaces:
com.azure.core.credential.TokenCredential
Direct Known Subclasses:
DefaultAzureCredential

public class ChainedTokenCredential extends Object implements com.azure.core.credential.TokenCredential
A token credential provider that can provide a credential from a list of providers.

Sample: Construct a ChainedTokenCredential with silent username+password login tried first, then interactive browser login as needed (e.g. when 2FA is turned on in the directory).

 UsernamePasswordCredential usernamePasswordCredential = new UsernamePasswordCredentialBuilder()
     .clientId(clientId)
     .username(username)
     .password(password)
     .build();
 InteractiveBrowserCredential interactiveBrowserCredential = new InteractiveBrowserCredentialBuilder()
     .clientId(clientId)
     .port(8765)
     .build();
 ChainedTokenCredential credential = new ChainedTokenCredentialBuilder()
     .addLast(usernamePasswordCredential)
     .addLast(interactiveBrowserCredential)
     .build();
 
  • Method Summary

    Modifier and Type
    Method
    Description
    Mono<com.azure.core.credential.AccessToken>
    getToken(com.azure.core.credential.TokenRequestContext request)
    Sequentially calls TokenCredential.getToken(TokenRequestContext) on all the specified credentials, returning the first successfully obtained AccessToken.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • getToken

      public Mono<com.azure.core.credential.AccessToken> getToken(com.azure.core.credential.TokenRequestContext request)
      Sequentially calls TokenCredential.getToken(TokenRequestContext) on all the specified credentials, returning the first successfully obtained AccessToken. This method is called automatically by Azure SDK client libraries. You may call this method directly, but you must also handle token caching and token refreshing.
      Specified by:
      getToken in interface com.azure.core.credential.TokenCredential
      Parameters:
      request - the details of the token request
      Returns:
      a Publisher that emits a single access token