Class ManagedIdentityCredential
- All Implemented Interfaces:
com.azure.core.credential.TokenCredential
Azure Managed Identity is a feature in Azure Active Directory (Azure AD) that provides a way for applications running on Azure to authenticate themselves with Azure resources without needing to manage or store any secrets like passwords or keys. The ManagedIdentityCredential authenticates the configured managed identity (system or user assigned) of an Azure resource. So, if the application is running inside an Azure resource that supports Managed Identity through IDENTITY/MSI, IMDS endpoints, or both, then this credential will get your application authenticated, and offers a great secretless authentication experience. For more information refer to the managed identity authentication documentation.
The Managed Identity credential supports managed identity authentication for the following Azure Services:
- Azure App Service
- Azure Arc
- Azure Cloud Shell
- Azure Functions
- Azure Kubernetes Service
- Azure Service Fabric
- Azure Virtual Machines
- Azure Virtual Machines Scale Sets
Sample: Construct a simple ManagedIdentityCredential
The following code sample demonstrates the creation of a ManagedIdentityCredential,
using the ManagedIdentityCredentialBuilder
to configure it. Once this credential is
created, it may be passed into the builder of many of the Azure SDK for Java client builders as the
'credential' parameter.
TokenCredential managedIdentityCredential = new ManagedIdentityCredentialBuilder() .build();
Sample: Construct a User Assigned ManagedIdentityCredential
User-Assigned Managed Identity (UAMI) in Azure is a feature that allows you to create an identity in
Azure Active Directory (Azure AD)
that is associated with one or more Azure resources. This identity can then be
used to authenticate and authorize access to various Azure services and resources. The following code sample
demonstrates the creation of a ManagedIdentityCredential to target a user assigned managed identity, using the
ManagedIdentityCredentialBuilder
to configure it. Once this credential is created, it
may be passed into the builder of many of the Azure SDK for Java client builders as the 'credential' parameter.
TokenCredential managedIdentityCredentialUserAssigned = new ManagedIdentityCredentialBuilder() .clientId(clientId) // specify client id of user-assigned managed identity. .build();
-
Method Details
-
getClientId
Gets the client ID of user assigned or system assigned identity.- Returns:
- the client ID of user assigned or system assigned identity.
-
getToken
public Mono<com.azure.core.credential.AccessToken> getToken(com.azure.core.credential.TokenRequestContext request) - Specified by:
getToken
in interfacecom.azure.core.credential.TokenCredential
-