- Disabled MSAL's internal retry for Confidential Client, Managed Identity and Public Client Applications.
- Improved
AzureDeveloperCliCredentialerror handling to extract meaningful messages fromazd auth tokenJSON output, providing cleaner error messages to users.
- Upgraded
azure-corefrom1.57.1to version1.58.0. - Upgraded
azure-core-http-nettyfrom1.16.3to version1.16.4.
- Renamed
enableAzureTokenProxy()method inWorkloadIdentityCredentialBuildertoenableAzureProxy(). These changes only affect code written against beta version 1.19.0-beta.1.
- Fixed
NullPointerExceptioninIdentityClientOptionswhen running in GraalVM native images (e.g., Quarkus applications). Replaced reflection-dependentAzureIdentityEnvVarsenum usage with direct string literal to ensure compatibility with native compilation. - Fixed logging for token authentication errors to include full stack traces with inner exceptions. Previously, error logs referenced "inner exceptions" but only logged the error message, making debugging difficult.
- Removed unused jetty, redisson, and lettuce-core dependencies.
- Upgraded
azure-corefrom1.57.0to version1.57.1. - Upgraded
azure-core-http-nettyfrom1.16.2to version1.16.3. - Upgraded
azure-jsonfrom1.5.0to version1.5.1.
- Added
enableAzureTokenProxy()method toWorkloadIdentityCredentialBuilderto enable custom token proxy support for Azure Kubernetes clusters. When enabled, the credential attempts to use a custom token proxy configured through environment variables (AZURE_KUBERNETES_TOKEN_PROXY,AZURE_KUBERNETES_CA_FILE,AZURE_KUBERNETES_CA_DATA,AZURE_KUBERNETES_SNI_NAME).
- Ported the authentication flow of WorkloadIdentityCredential to use Msal4j.
- Fixed
DefaultAzureCredentialbehavior whenAZURE_TOKEN_CREDENTIALSenvironment variable is explicitly set toManagedIdentityCredential. The credential now skips unnecessary probe requests and enables retry logic with exponential backoff for improved resiliency in environments where the managed identity endpoint may be temporarily unavailable.
- Upgraded
azure-corefrom1.56.1to version1.57.0. - Upgraded
azure-core-http-nettyfrom1.16.1to version1.16.2.
- Added claims challenge support to
AzureDeveloperCliCredential. Claims provided inTokenRequestContextare now passed to Azure Developer CLI via the--claimsparameter, requiring azd CLI 1.18.1 or higher. Also enhanced error handling to extract user-friendly messages from JSON output and provide clear version compatibility warnings when the--claimsflag is unsupported. - Added claims challenge handling support to
AzureCliCredential. When a token request includes claims, the credential will now throw aCredentialUnavailableExceptionwith instructions to use Azure PowerShell directly with the appropriate-ClaimsChallengeparameter. - Added claims challenge handling support to
AzurePowerShellCredential. When a token request includes claims, the credential will now throw aCredentialUnavailableExceptionwith instructions to use Azure PowerShell directly with the appropriate-ClaimsChallengeparameter. - Added
AzureIdentityEnvVarsexpandable string enum for type-safe environment variable names used in Azure Identity credentials. - Added
requireEnvVars(AzureIdentityEnvVars... envVars)method toDefaultAzureCredentialBuilderto enforce the presence of specific environment variables at build time. When configured, the credential will throw anIllegalStateExceptionduringbuild()if any of the specified environment variables are missing or empty.
- Fixed
AzurePowerShellCredentialhandling of XML header responses and/Date(epochTime)/time format parsing that previously causedJsonParsingException. #46572 - Fixed
AzureDeveloperCliCredentialhanging whenAZD_DEBUGenvironment variable is set by adding--no-promptflag to theazd auth tokencommand.
- Upgraded
azure-corefrom1.56.0to version1.56.1. - Upgraded
azure-core-http-nettyfrom1.16.0to version1.16.1. - Upgraded
com.microsoft.azure:msal4jfrom version1.22.0to version1.23.1.
- GA release of beta features
- Handles the scenario to gracefully handle unavailability of Key Ring on Linux platforms. #46333
- Upgraded
azure-corefrom1.55.5to version1.56.0. - Upgraded
azure-core-http-nettyfrom1.15.13to version1.16.0.
VisualStudioCodeCredentialhas been restored and now supports broker authentication using the Azure account signed in via Visual Studio Code. #45715DefaultAzureCredentialcan be configured to use a specific credential type by setting theAZURE_TOKEN_CREDENTIALSenvironment variable. When set, it will only attempt authentication using the specified credential type. For example, settingAZURE_TOKEN_CREDENTIALS=WorkloadIdentityCredentialwill restrict authentication to workload identity only.- Enhanced
AzurePowerShellCredentialtoken retrieval with tenantId support, cross-version SecureString handling, and improved compatibility and robustness. #45851 DefaultAzureCredentialnow supports authentication with the currently signed-in Windows account, provided the azure-identity-broker package is installed. This auth mechanism is added at the end of the DefaultAzureCredential credential chain. #45891
- Removed
SharedTokenCacheCredentialfrom theDefaultAzureCredentialauthentication chain. #45795
- Deprecated
SharedTokenCacheCredentialandSharedTokenCacheCredentialBuilder. #45795
- Upgraded
com.microsoft.azure:msal4jfrom version1.21.0to version1.22.0.
- Enhanced
AzurePowerShellCredentialtoken retrieval with tenantId support, cross-version SecureString handling, and improved compatibility and robustness. #45851
- Upgraded
com.microsoft.azure:msal4jfrom version1.21.0to version1.22.0.
- Upgraded
azure-corefrom1.55.3to version1.55.4. - Upgraded
azure-core-http-nettyfrom1.15.11to version1.15.12. - Updated
msal4jfrom1.20.1to version1.21.0.
- Added
AZURE_TOKEN_CREDENTIALSenvironment variable toDefaultAzureCredentialto allow for choosing groups of credentials.prodforEnvironmentCredential,WorkloadIdentityCredential, andManagedIdentityCredential.devforSharedTokenCredential,IntelliJCredential,AzureCliCredential,AzurePowershellCredential, andAzureDeveloperCliCredential.
- Marked
VisualStudioCodeCredentialandVisualStudioCodeCredentialBuilderas deprecated.#44527 - Added deprecation message to
EnvironmentCredentialwhen a username/password is used. #45185
- Updated
msal4jfrom1.20.0to version1.20.1.
- Added support to specify
subscriptionID or name onAzureCliCredentialBuilder. #44123 - Log the client, object, or resource ID of the user-assigned managed identity. #44305
- Marked
UsernamePasswordCredentialandUsernamePasswordCredentialBuilderas deprecated. See https://aka.ms/azsdk/identity/mfa for details about MFA enforcement and migration guidance. #44381
- Upgraded
azure-corefrom1.55.2to version1.55.3. - Upgraded
azure-core-http-nettyfrom1.15.10to version1.15.11. - Upgraded
azure-jsonfrom1.4.0to version1.5.0. - Upgraded
msal4jfrom1.19.0to version1.19.1.
- Upgraded
azure-corefrom1.55.1to version1.55.2. - Upgraded
azure-core-http-nettyfrom1.15.9to version1.15.10.
- Upgraded
azure-corefrom1.55.0to version1.55.1. - Upgraded
azure-core-http-nettyfrom1.15.8to version1.15.9.
- Fixed an issue preventing scopes with underscores from working properly. #44040
- Upgraded
azure-corefrom1.54.1to version1.55.0. - Upgraded
azure-core-http-nettyfrom1.15.7to version1.15.8. - Upgraded
msal4jfrom1.17.1to version1.19.0.
- Added missing
executorServiceAPI toManagedIdentityCredentialBuilder, cleaned up comments in other types for this method.
@DeprecatedmethodsDefaultAzureCredential.setIntelliJKeePassDatabasePathandIntelliJCredentialBuilder.keePassDatabasePath. #42437- Changed Identity credentials to use
SharedExecutorServicethreadpool instead ofForkJoin's common pool by default. #42468
- Fixed issue in Managed Identity scopes #42934
- Upgraded
azure-corefrom1.54.0to version1.54.1. - Upgraded
azure-core-http-nettyfrom1.15.6to version1.15.7. - Upgraded
jna-platformfrom5.6.0to version5.13.0.
- Upgraded
azure-corefrom1.53.0to version1.54.0. - Upgraded
azure-core-http-nettyfrom1.15.5to version1.15.6.
- Features now generally available from previous betas:
- Added object id support in
ManagedIdentityCredential. It can be configured viaManagedIdentityCredentialBuilder. - Added support for a client assertion in
OnBehalfOfCredential#40552
- Added object id support in
- Breaking changes generally available from previous betas:
- Removed support in
IntelliJCredentialfor legacy Azure Toolkit for IntelliJ versions. Please upgrade to latest if you are using 3.52 or below.
- Removed support in
- Fixed the request sent in
AzurePipelinesCredentialso it doesn't result in a redirect response when an invalid system access token is provided.
- Allow certain response headers to be logged in
AzurePipelinesCredentialfor diagnostics and include them in the exception message. - Mark
AzureAuthorityHosts.AZURE_GERMANYdeprecated as the Germany cloud closed in 2021. #42148 - Using msal4j's managed identity implementation is now on by default. (Added in 1.13.0-beta.1)
- Upgraded
azure-corefrom1.52.0to version1.53.0. - Upgraded
azure-core-http-nettyfrom1.15.4to version1.15.5. - Upgraded
msal4jfrom1.17.1to version1.17.2.
- Added object id support in
ManagedIdentityCredential. It can be configured viaManagedIdentityCredentialBuilder.
- Removed support in
IntelliJCredentialfor legacy Azure Toolkit for IntelliJ versions. Please upgrade to latest if you are using 3.52 or below.
Fixed issue in IntelliJCredential blocking sign in #39799
- Upgraded
azure-corefrom1.51.0to version1.52.0. - Upgraded
azure-core-http-nettyfrom1.15.3to version1.15.4. - Upgraded
azure-jsonfrom1.2.0to version1.3.0. - Upgraded
msal4jfrom1.16.2to version1.17.1.
- Fixed bugs in
AzurePowerShellCredential- Fixed break on Windows related to ordering of parameters, and fixed #41234 (previously shipped in beta)
- Upgraded
azure-corefrom1.50.0to version1.51.0. - Upgraded
azure-core-http-nettyfrom1.15.2to version1.15.3. - Upgraded
azure-jsonfrom1.1.0to version1.2.0. - Upgraded
msal4jfrom1.16.1to version1.16.2.
- Fixed bugs in
AzurePowerShellCredential- Fixed break on Windows related to ordering of parameters, and fixed #41234
- Added support in
EnvironmentCredential(and thusDefaultAzureCredentialwhen it choosesEnvironmentCredential) for using subject name / issuer authentication with client certificates by settingAZURE_CLIENT_SEND_CERTIFICATE_CHAINto1ortrue. #40013
- Fixed certificate type detection, which fixes using a PFX certificate without a password. #37210
- Fix
PowershellCredentialissue when user had a profile #41030
- Upgraded
azure-corefrom1.49.1to1.50.0 - Upgraded
azure-core-http-nettyfrom1.15.1to1.15.2 - Upgraded
msal4jfrom1.16.0to1.16.1
- GA for
AzurePipelinesCredential
- Fixed an issue which may block
AzurePowershellCredentialfrom functioning correctly. #40552
- Added support for a client assertion in
OnBehalfOfCredential#40552
- Fixed an issue which may block
AzurePowershellCredentialfrom functioning correctly. #40552
- Managed identity bug fixes
- Upgraded
azure-corefrom1.49.0to version1.49.1. - Upgraded
azure-core-http-nettyfrom1.15.0to version1.15.1. - Upgraded
msal4jfrom1.15.0to version1.15.1.
- Added
AzurePipelinesCredentialto support Microsoft Entra Workload ID in Azure Pipelines service connections.
- Migrated Managed Identity authentication flow to utilize Msal4j MI implementation.
- Upgraded
azure-corefrom1.48.0to version1.49.0. - Upgraded
azure-core-http-nettyfrom1.14.2to version1.15.0.
- Added default sign-in experience for brokered authentication. See the documentation in the
azure-identity-brokerpackage for more information. #39284
- The timeout interval for IMDS probing has been adjusted from 0.5 seconds to 1 second. This update is designed to enhance the system's reliability without affecting user applications. #38345
- The default retry logic of Managed Identity has been updated to retry 5 times, the retry delay increases exponentially, starting at 800 milliseconds and doubling with each subsequent retry, up to 5 retries. This change is designed to optimize the retry mechanism, reducing the likelihood of congestion and improving the overall stability of service connections under varying network conditions. #38345
- The
DefaultAzureCredentialcaches the last working credential by default and tries it directly on subsequent attempts. This change is designed to improve the performance of theDefaultAzureCredentialby reducing the number of attempts required to acquire a token. #36867
- Changed log level of an informational message in token acquisition. #39063
- Upgraded
azure-corefrom1.47.0to version1.48.0. - Upgraded
azure-core-http-nettyfrom1.14.1to version1.14.2. - Upgraded
msal4jfrom1.14.3to version1.15.0. - Upgraded
msal4j-persistence-extensionfrom1.2.0to version1.3.0.
- Upgraded
msal4jfrom1.14.0to version1.14.3.
- Fixed an issue where the broker dependency library was being probed for when it shouldn't be, resulting in an erronous error message. #39002
- Upgraded
azure-corefrom1.46.0to version1.47.0. - Upgraded
azure-core-http-nettyfrom1.14.0to version1.14.1.
- Added expires_on parsing support to
AzureCliCredential.(#38406) - Added caching support for working credential in
DefaultAzureCredential. (#38404)
- Lowered logging level of token cache misses from
ERRORtoDEBUG. (#38502)
- Upgraded
azure-corefrom1.45.1to version1.46.0 - Upgraded
azure-core-http-nettyfrom1.13.11to version1.14.0
- Fixed Azure Arc Managed Identity token retrieval issue.
- Upgraded
azure-corefrom1.45.0to version1.45.1 - Upgraded
azure-core-http-nettyfrom1.13.10to version1.13.11
- GA release of Web Account Manager (WAM) support for Azure Identity.
- Cache streams used for client certificates #37502
- Fix incorrect use of organizations tenant for sync calls on
AzureCliCredentialandAzureDeveloperCliCredential#37457
- Upgraded
azure-corefrom1.44.1to version1.45.0. - Upgraded
azure-core-http-nettyfrom1.13.9to version1.13.10
- Initial release of Web Account Manager (WAM) support for Azure Identity. This is a Windows-only auithentication broker.
- Upgraded 'msal4j' from '1.13.9' to version '1.14.0'.
- Upgraded
azure-corefrom1.44.0to version1.44.1. - Upgraded
azure-core-http-nettyfrom1.13.8to version1.13.9.
- Upgraded
azure-corefrom1.43.0to version1.44.0. - Upgraded
azure-core-http-nettyfrom1.13.7to version1.13.8.
- Bug fixes for developer credentials
- Added support for passing an InputStream containing a client cerfificate #36747
- Fixed flowing
HttpClientOptionsthrough credentials #36382 - Fixed edge case in Docker where 403s erronously caused CredentialUnavailableExceptions #36747
- Upgraded
azure-corefrom1.42.0to version1.43.0. - Upgraded
azure-core-http-nettyfrom1.13.6to version1.13.7.
- Added
BrowserCustomizationOptionstoInteractiveBrowserCredentialBuilderto allow for customization of the browser window.
- Renamed
enableSupportLoggingtoenableUnsafeSupportLogging. This is a breaking change from 1.10.0-beta.1. DefaultAzureCredentialwill try all developer credentials. Previously if a developer credential attempted to acquire a token and failed, it would stop the chain. Deployed credentials are unaffected.
- Upgraded
azure-corefrom1.41.0to version1.42.0. - Upgraded
azure-core-http-nettyfrom1.13.5to version1.13.6.
- Added CAE Authentication support for Service principal authentication.
- Added the ability to log PII from MSAL using new
enableSupportLoggingAPI.
- CAE Authentication is disabled by default. It needs to be enabled by invoking
setEnableCaeonTokenRequestContextclass.
- Azure CLI and Azure Developer CLI no longer pass
organizationsas a tenant value when retrieving a token. #34387 WorkloadIdentityCredentialnow uses the tenant value specified inDefaultAzureCredentialwhen authenticating with Azure Identity. #35619
- Upgraded
azure-corefrom1.40.0to version1.41.0. - Upgraded
azure-core-http-nettyfrom1.13.4to version1.13.5.
- Moved
AzureDeveloperCliCredentialto the end of theDefaultAzureCredentialchain.
- Upgraded
azure-corefrom1.38.0to version1.39.0. - Upgraded
azure-core-http-nettyfrom1.13.3to version1.13.4.
- Added configurable timeout for developer credentials (Azure CLI, Azure Developer CLI)
- Added
WorkloadIdentityCredentialto authenticate using workload identity in Azure Kubernetes.
- renamed
DefaultAzureCredential.processTimeouttocredentialProcessTimeout.
- Upgraded
azure-corefrom1.38.0to version1.39.0.
- Upgraded
msal4jfrom1.13.7to version1.13.8. - Upgraded
msal4j-persistence-extensionfrom1.1.0to version1.2.0.
- Add
disableInstanceDiscoverytoDefaultAzureCredentialBuilder
- Removed feature from previous betas to compute refresh values for managed identity tokens.
- Fixed a bug in managed identity not properly URLEncoding a value. #34375
- Upgraded
azure-corefrom1.37.0to version1.38.0. - Upgraded
azure-core-http-nettyfrom1.13.1to version1.13.2. - Upgraded
msal4jfrom1.13.5to version1.13.7.
- Added CAE support to service principal authentication.
- Pass more detailed refresh policy for managed identity tokens to MSAL.
- Add configurable timeout for developer credentials (Azure CLI, Azure Developer CLI)
- Fixed detection logic for az/azd.
- Upgraded
azure-corefrom1.36.0to version1.37.0. - Upgraded
azure-core-http-nettyfrom1.13.0to version1.13.1. - Upgraded
msal4jfrom1.13.4to version1.13.5.
- [#32527] Added Azure Developer CLI Credential.
- Added support to disable instance discovery on Microsoft Entra ID credentials.
WorkloadIdentityCredentialandDefaultAzureCredentialsupport Workload Identity Federation on Kubernetes.DefaultAzureCredentialsupport requires environment variable configuration as set by the Workload Identity webhook.
- Added support to configure
clientOptions,httpLogOptions,retryPolicy,retryOptionsandaddPolicyon Identity credentials.
- Upgraded
azure-corefrom1.35.0to version1.36.0. - Upgraded
azure-core-http-nettyfrom1.12.8to version1.13.0. - Upgraded
msal4jfrom1.13.3to version1.13.4.
- Added support to configure
clientOptions,httpLogOptions,retryPolicy,retryOptionsandaddPolicyon Identity credentials. - Added support to disable instance discovery on Microsoft Entra ID credentials.
- No longer statically accessing environment variables. #32781
- Use
ThreadLocalRandominstead ofRandomto better enable static compilation. #32744
- Upgraded
azure-corefrom1.34.0to version1.35.0.
- Fixed MSI token
expires_inparsing issue.
- Added user-agent header to Identity requests
- Upgraded
azure-corefrom1.33.0to version1.34.0. - Upgraded
msal4jfrom1.13.2to1.13.3
GetTokenSyncmethod implementation/support in Token Credentials.- Read
AZURE_REGIONAL_AUTHORITY_NAMEfrom the environment to specify region for client credential types.
- Upgraded
msal4jfrom1.13.1to1.13.2
- Upgraded
azure-corefrom1.32.0to version1.33.0. - Upgraded
azure-core-http-nettyfrom1.12.5to version1.12.6.
EnvironmentCredentialwill read the environment variableAZURE_CLIENT_CERTIFICATE_PASSWORDfor apem/pfxcertificate specified byAZURE_CLIENT_CERTIFICATE_PATH.- Added support for in-memory token caching in
ManagedIdentityCredential.
- Removed
VisualStudioCodeCredentialfromDefaultAzureCredentialtoken chain. Issue 27364 tracks this.
- Added
additionallyAllowedTenantsto the following credential builders to force explicit opt-in behavior for multi-tenant authentication:AuthorizationCodeCredentialBuilderAzureCliCredentialBuilderAzurePowerShellCredentialBuilderClientAssertionCredentialBuilderClientCertificateCredentialBuilderClientSecretCredentialBuilderDefaultAzureCredentialBuilderOnBehalfOfCredentialBuilderUsernamePasswordCredentialBuilderVisualStudioCodeCredentialBuilderVisualStudioCredentialBuilder
-
Credential types supporting multi-tenant authentication will now throw
ClientAuthenticationExceptionif the requested tenant ID doesn't match the credential's tenant ID, and is not included in theadditionallyAllowedTenantsoption. Applications must now explicitly add additional tenants to theadditionallyAllowedTenantslist, or add '*' to list, to enable acquiring tokens from tenants other than the originally specified tenant ID. See BREAKING_CHANGES.md. -
These beta features in version
1.6.0-beta.1have been removed from this release and will be added back in version1.7.0-beta.1:- removed
VisualStudioCodeCredentialfromDefaultAzureCredentialtoken chain AZURE_CLIENT_CERTIFICATE_PASSWORDsupport forEnvironmentCredential- in-memory token caching support for
ManagedIdentityCredential.
- removed
- Upgraded
msal4jfrom1.13.0to1.13.1.
- Upgraded
azure-corefrom1.31.0to version1.32.0. - Upgraded
azure-core-http-nettyfrom1.12.4to version1.12.5. - Upgraded
msal4jfrom1.12.0to1.13.0.
EnvironmentCredentialwill read the environment variableAZURE_CLIENT_CERTIFICATE_PASSWORDfor apem/pfxcertificate specified byAZURE_CLIENT_CERTIFICATE_PATH.- Added support for in-memory token caching in
ManagedIdentityCredential.
- Removed
VisualStudioCodeCredentialfromDefaultAzureCredentialtoken chain. Issue 27364 tracks this.
- Upgraded
msal4jfrom1.12.0to version1.13.0.
- Fixes IntelliJCredential 21150
- Fixes AzureCliCredential to properly respect tenant IDs.
- Upgraded
azure-corefrom1.30.0to version1.31.0. - Upgraded
azure-core-http-nettyfrom1.12.3to version1.12.4.
- Upgraded
azure-coredependency to 1.30.0
- Upgraded
azure-coredependency to 1.29.1
- Upgraded
msal4jdependency to 1.12.0 - Upgraded
azure-coredependency to 1.28.0
- Removed
disableAuthorityValidationSafetyCheckfor GA, will reintroduce in next beta. This is not a breaking change from last GA. - Replaced
identityLogOptionssetter with theenableAccountIdentifierLoggingsetter on the credential builders. This is not a breaking change from last GA.
- Upgraded
azure-coredependency to 1.27.0
Correctly use an AppServiceMsiCredential in the case both IDENTITY_ENDPOINT and IDENTITY_HEADER are set.
- Added ability to configure
IdentityLogOptionson Credential Builders to make account Identifier logging configurable. - Added the option
disableAuthoriyValidaionSafetyCheckon Credential Builders.
- Upgraded
azure-coredependency to 1.26.0
- Upgraded
azure-coredependency to 1.26.0
- Logging level of false positive
ERRORlogs is changed toVERBOSE/DEBUGunderDefaultAzureCredential
- Added
resourceIdto Managed Identity for Virtual Machines, App Service, and Service Bus. - Added
ClientAssertionCredentialfor client assertion based authentication flows.
- Upgraded App Service Managed Identity endpoint to
2019-08-01.
- Upgraded
azure-coredependency to 1.25.0
- Upgraded
azure-coredependency to 1.24.1
- Fixes the edge case scenario when MSI Tokens return both
expires_onandexpires_infields populated forManagedIdentityCredential.
- Upgraded
azure-coredependency to 1.22.0
- The
ManagedIdentityCredentialreads value of AZURE_POD_IDENTITY_TOKEN_URL environment variable from AZURE_POD_IDENTITY_AUTHORITY_HOST now.
- Added
tenantIdsetter onAzurePowerShellCredentialandAzureCliCredential
Note the breaking changes below don't apply if you're upgrading from a previous released stable version.
- Removed 'AzureApplicationCredential' and 'AzureApplicationCredentialBuilder'
- Removed 'regionalAuthority' setter on
ClientSecretCredentialBuilderandClientCertificateCredentialBuilder - Removed
RegionalAuthorityenum class. - Removed
allowMultiTenantAuthenticationmethod from Credential Builders. The Multi Tenant Authentication is enabled by default now.
- Upgraded
azure-coredependency to 1.21.0
- Added support to
ManagedIdentityCredentialfor Bridge to Kubernetes local development authentication. - Added regional STS support to client credential types.
- Added the
RegionalAuthoritytype, that allows specifying Azure regions. - Added
regionalAuthority()setter toClientSecretCredentialBuilderandClientCertificateCredentialBuilder. - If instead of a region,
RegionalAuthority.AutoDiscoverRegionis specified as the value forregionalAuthority, MSAL will be used to attempt to discover the region. - A region can also be specified through the
AZURE_REGIONAL_AUTHORITY_NAMEenvironment variable.
- Added the
- Added
loginHint()setter toInteractiveBrowserCredentialBuilderwhich allows a username to be pre-selected for interactive logins. - Added support to consume
TenantIdchallenges fromTokenRequestContext. - Added support for AKS Token Exchange support in
ManagedIdentityCredential
- Upgraded
azure-coredependency to 1.20.0
- Upgraded
azure-coredependency to 1.19.0
- Dropped
KeePassJava2dependency
- Pinned
json-smartdependency to 2.4.7
- Upgraded
azure-coredependency to 1.18.0
- Upgraded
azure-coredependency to 1.17.0
- Added
AzurePowerShellCredentialto support authentication using Powershell on development platforms. - Added support to disable CP1 capability in
TokenCredentialsvia configuration of environment variableAZURE_IDENTITY_DISABLE_CP1
- Upgraded
azure-coredependency to 1.16.0 - Upgraded
msal4jdependency to 1.1.0
- Added the support to enable and configure Persistent Token Cache via
TokenCachePersistenceOptionsAPI onInteractiveBrowserCredentialBuilder,AuthorizationCodeCredentialBuilder,UsernamePasswordCredentialBuilder,DeviceCodeCredentialBuilderBuilderClientSecretCredentialBuilder,ClientCertificateCredentialBuilderandSharedTokenCacheCredentialBuilder. - Added new APIs for authenticating users with
DeviceCodeCredential,InteractiveBrowserCredentialandUsernamePasswordCredential.- Added method
authenticatewhich pro-actively interacts with the user to authenticate if necessary and returns a serializableAuthenticationRecord
- Added method
- Added following configurable options in classes
DeviceCodeCredentialBuilderandInteractiveBrowserCredentialBuilderauthenticationRecordenables initializing a credential with anAuthenticationRecordreturned from a prior call toAuthenticatedisableAutomaticAuthenticationdisables automatic user interaction causing the credential to throw anAuthenticationRequiredExceptionwhen interactive authentication is necessary.
- Upgraded
azure-coredependency to 1.14.0 - Upgraded
msal4jdependency to 1.9.1 - Upgraded
msal4j-persistence-extensionto 1.1.0
- Added the support to consume claims from
TokenRequestContextsend it as part of authentication request.
- Upgraded
azure-coredependency to 1.13.0 - Upgraded
msal4jdependency to 1.8.1
- Upgraded
azure-coredependency to 1.13.0 - Upgraded
msal4jdependency to 1.8.1
- Upgraded
azure-coredependency to 1.12.0
- Upgraded
azure-coredependency to 1.11.0
- Added Azure Service Fabric Managed Identity support to
ManagedIdentityCredential - Added Azure Arc Managed Identity support to
ManagedIdentityCredential - Added support for Docker Containers in
DefaultAzureCredential
- Prevent
VisualStudioCodeCredentialusing invalid authentication data when no user is signed in to Visual Studio Code
- Upgraded
azure-coredependency to 1.10.0 - Upgraded
msal4jdependency to 1.8.0
- Added the methods
pfxCertificate(InputStream certificate, String clientCertificatePassword)andpemCertificate(InputStream certificate)inClientCertificateCredentialBuilder. - Added
includeX5c(boolean)method inClientCertificateCredentialBuilderto enable subject name / issuer based authentication. - Added a default
challengeConsumerinDeviceCodeCredentialBuilderwhich prints the device code information to console. ThechallengeConsumerconfiguration is no longer required inDeviceCodeCredentialBuilder.
- Upgraded
azure-coredependency to 1.9.0 - Upgraded
jna-platformdependency to 5.6.0 - Upgraded
msal4jdependency to 1.7.1
- Added
InteractiveBrowserCredentialBuilder.redirectUrl(String)to configure the redirect URL - Deprecated
InteractiveBrowserCredentialBuilder.port(int) - Added support for App Service 2019 MSI Endpoint in
ManagedIdentityCredential - Added Shared Token cache support for MacOS Keychain, Gnome Keyring, and plain text for other Linux environments
- Added option to write to shared token cache from
InteractiveBrowserCredential,AuthorizationCodeCredential,UsernamePasswordCredential,DeviceCodeCredentialClientSecretCredentialandClientCertificateCredential - Added new APIs for authenticating users with
DeviceCodeCredential,InteractiveBrowserCredentialandUsernamePasswordCredential.- Added method
authenticatewhich pro-actively interacts with the user to authenticate if necessary and returns a serializableAuthenticationRecord
- Added method
- Added following configurable options in classes
DeviceCodeCredentialBuilderandInteractiveBrowserCredentialBuilderauthenticationRecordenables initializing a credential with anAuthenticationRecordreturned from a prior call toAuthenticatedisableAutomaticAuthenticationdisables automatic user interaction causing the credential to throw anAuthenticationRequiredExceptionwhen interactive authentication is necessary.
- Upgraded core dependency to 1.7.0
- Removed the default value of 0 for port in
InteractiveBrowserCredential.
- Removing Application Authentication APIs for GA release. These will be reintroduced in 1.2.0-beta.1.
- Removed class
AuthenticationRecord - Removed class
AuthenticationRequiredException - Removed methods
allowUnencryptedCache()andenablePersistentCache()fromClientCertificateCredentialBuilder,ClientSecretCredentialBuilder,InteractiveBrowserCredentialBuilder,DeviceCodeCredentialBuilder,UsernamePasswordCredentialBuilderandClientCertificateCredentialBuilder. - Removed methods
allowUnencryptedCache()andauthenticationRecord(AuthenticationRecord)fromSharedTokenCacheCredentialBuilder. - Removed methods
authenticationRecord(AuthenticationRecord)anddisableAutomaticAuthentication()fromDeviceCodeCredentialBuilderandInteractiveBrowserCredentialBuilder. - Removed methods
authenticate(TokenRequestContext)andauthenticate()fromDeviceCodeCredential,InteractiveBrowserCredentialandUsernamePasswordCredential.
- Removed class
- Added support for web apps (confidential apps) for
AuthorizationCodeCredential. A client secret is required on the builder for web apps. - Added support for user assigned managed identities for
DefaultAzureCredentialwith.managedIdentityClientId(). - Added
AzureAuthorityHoststo access well knwon authority hosts. - Added
getClientId()method inAuthenticationRecord
- Removed persistent caching support from
AuthorizationCodeCredential. - Removed
KnownAuthorityHosts - Removed
getCredentials()method inChainedTokenCredential&DefaultAzureCredential - Changed return type of
serializemethod inAuthenticationRecordtoMono<OutputStream>. - Changed method signatures
enablePersistentCache(boolean)andallowUnencryptedCache(boolean)on credential builders toenablePersistentCache()andallowUnencryptedCache()
- Added
.getCredentials()method toDefaultAzureCredentialandChainedTokenCredentialand added option.addAll(Collection<? extends TokenCredential>)onChainedtokenCredentialBuilder. - Added logging information in credentials and improved error messages in
DefaultAzureCredential.
- Added option to write to shared token cache from
ClientSecretCredential,ClientCertificateCredential. - Added new developer credentials
IntelliJCredential,VsCodeCredentialandAzureCliCredential. - New APIs for authenticating users with
DeviceCodeCredential,InteractiveBrowserCredentialandUsernamePasswordCredential.- Added method
authenticatewhich pro-actively interacts with the user to authenticate if necessary and returns a serializableAuthenticationRecord
- Added method
- Added following configurable options in classes
DeviceCodeCredentialBuilderandInteractiveBrowserCredentialBuilderauthenticationRecordenables initializing a credential with anAuthenticationRecordreturned from a prior call toAuthenticatedisableAutomaticAuthenticationdisables automatic user interaction causing the credential to throw anAuthenticationRequiredExceptionwhen interactive authentication is necessary.
- Removed support to exclude specific credentials in
DefaultAzureCredentialauthentication flow.
- Added
IntelliJCredentialsupport inDefaultAzureCredential. - Added
VsCodeCredentialsupport inDefaultAzureCredential. - Added support to disable specific credentials in
DefaultAzureCredentialauthentication flow. - Added Shared Token cache support for MacOS Keychain, Gnome Keyring, and plain text for other Linux environments
- Added option to write to shared token cache from
InteractiveBrowserCredential,AuthorizationCodeCredential,UsernamePasswordCredential, andDeviceCodeCredential
- Upgraded
azure-coredependency to 1.5.0 - Fix
MSITokenexpiry time parsing for Azure App Service platforms.
- Added
KnownAuthorityHoststo enable quick references to public azure authority hosts. - Added methods to allow credential configuration in
DefaultAzureCredentialBuilder - Added support for authority host to be read from
AZURE_AUTHORITY_HOSTenvironment variable. - Added support for
ClientCertificateCredentialandUserNamePasswordCredentialin EnvironmentCredential.
- Upgraded
azure-coredependency to 1.4.0
- Added 'authorityHost' set method in
DefaultAzureCredentialBuilder - Added
executorServiceset method in all the credential builders exceptManagedIdentityCredentialBuilder - Added
authorityHostset method toDefaultAzureCredentialBuilder - Added
tokenRefreshOffsetset method in all the credential builders. - Added
httpClientset method in all the credential builders. - Updated
DefaultAzureCredentialto enable authenticating through the Azure CLI
- Upgraded
azure-coredependency to 1.0.4
- All credential builders support setting a pipeline via
httpPipelinemethod. - SharedTokenCacheCredentialBuilder supports setting the tenant id via
tenantIdmethod.
- Support datetime format
M/d/yyyy K:mm:ss a XXXfor tokenexpires_onproperty on Windows App Services.
- Fix MSI_ENDPOINT and MSI_SECRET environment variable lookup issue in
ManagedIdentityCredentialwhen running on App Service
Breaking changes
- The
getToken(TokenRequest tokenRequest)methods on all the credentials are changed togetToken(TokenRequestContext tokenRequestContext). - All credentials are moved from
com.azure.identity.credentialpackage tocom.azure.identitypackage DeviceCodeChallengeis renamed to rDeviceCodeInfo, withint expiresIn()replaced withOffsetDateTime expiresOn()returning the time of the device code expiration- All methods containing
uriis renamed to containurlfor consistency
Known issues
- Support connecting to different clouds with
AZURE_CLOUDenvironment variable (#5741)
New features
- A new credential
AuthorizationCodeCredentialis added. DeviceCodeCredentialBuilder,InteractiveBrowserCredentialBuilder, andUsernamePasswordCredentialBuildernow supports single tenant apps with.tenantId(String)method.
Breaking changes
The getToken(String... scopes) methods on all the credentials are changed to getToken(TokenRequest tokenRequest).
New features
A new credential SharedTokenCacheCredential is added. It's currently only supported on Windows. This credential is capable of authenticating to Microsoft Entra ID if you are logged in in Visual Studio 2019.
Breaking changes
Credentials are now created through builders instead of setters. For example, in preview 1, a ClientSecretCredential can be created by
ClientSecretCredential cred = new ClientSecretCredential()
.tenantId(tenant)
.clientId(clientId)
.clientSecret(secret);In preview 2, it needs to be created through its builder:
ClientSecretCredential clientSecretCredential = new ClientSecretCredentialBuilder()
.tenantId(tenant)
.clientId(clientId)
.clientSecret(secret);
.build();New features
3 new credentials are added in preview 2, including DeviceCodeCredential, InteractiveBrowserCredential and UsernamePasswordCredential.
DeviceCodeCredential is useful for IoT devices. InteractiveBrowserCredential and UsernamePasswordCredential are mainly used in developer scenarios, to login on a developer's computer.
Deprecated or removed features
No feature was deprecated or removed.
Version 1.0.0-preview.1 is a preview of our efforts in creating an authentication API for Azure SDK client libraries that is developer-friendly, idiomatic to the Java ecosystem, and as consistent across different languages and platforms as possible. The principles that guide our efforts can be found in the Azure SDK Design Guidelines for Java.
For details on the Azure SDK for Java (July 2019 Preview) release, you can refer to the release announcement.
This release supports service principal and managed identity authentication. See the documentation for more details. User authentication will be added in an upcoming preview release.
This release supports only global Microsoft Entra tenants, i.e. those using the https://login.microsoftonline.com authentication endpoint.