@azure/identity
Version:
Provides credential implementations for Azure SDK libraries that can authenticate with Microsoft Entra ID
61 lines • 3.55 kB
TypeScript
import type { AuthorityValidationOptions } from "./authorityValidationOptions.js";
import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions.js";
/**
* Provides options to configure the {@link DefaultAzureCredential} class.
* This variation supports `managedIdentityClientId` and not `managedIdentityResourceId`, since only one of both is supported.
*/
export interface DefaultAzureCredentialClientIdOptions extends DefaultAzureCredentialOptions {
/**
* Optionally pass in a user assigned client ID to be used by the {@link ManagedIdentityCredential}.
* This client ID can also be passed through to the {@link ManagedIdentityCredential} through the environment variable: AZURE_CLIENT_ID.
*/
managedIdentityClientId?: string;
/**
* Optionally pass in a user assigned client ID to be used by the {@link WorkloadIdentityCredential}.
* This client ID can also be passed through to the {@link WorkloadIdentityCredential} through the environment variable: AZURE_CLIENT_ID.
*/
workloadIdentityClientId?: string;
}
/**
* Provides options to configure the {@link DefaultAzureCredential} class.
* This variation supports `managedIdentityResourceId` and not `managedIdentityClientId`, since only one of both is supported.
*/
export interface DefaultAzureCredentialResourceIdOptions extends DefaultAzureCredentialOptions {
/**
* Optionally pass in a resource ID to be used by the {@link ManagedIdentityCredential}.
* In scenarios such as when user assigned identities are created using an ARM template,
* where the resource Id of the identity is known but the client Id can't be known ahead of time,
* this parameter allows programs to use these user assigned identities
* without having to first determine the client Id of the created identity.
*/
managedIdentityResourceId: string;
}
/**
* The commonly supported environment variables for the {@link DefaultAzureCredential} class.
*/
export type DefaultAzureCredentialEnvVars = "AZURE_TOKEN_CREDENTIALS" | "AZURE_CLIENT_ID" | "AZURE_TENANT_ID" | "AZURE_CLIENT_SECRET" | "AZURE_CLIENT_CERTIFICATE_PATH" | "AZURE_CLIENT_CERTIFICATE_PASSWORD" | "AZURE_ADDITIONALLY_ALLOWED_TENANTS" | "AZURE_CLIENT_SEND_CERTIFICATE_CHAIN" | "AZURE_FEDERATED_TOKEN_FILE";
/**
* Provides options to configure the {@link DefaultAzureCredential} class.
*/
export interface DefaultAzureCredentialOptions extends MultiTenantTokenCredentialOptions, AuthorityValidationOptions {
/**
* Optionally pass in a Tenant ID to be used as part of the credential.
* By default it may use a generic tenant ID depending on the underlying credential.
*/
tenantId?: string;
/**
* Timeout configurable for making token requests for developer credentials, namely, {@link AzurePowershellCredential},
* {@link AzureDeveloperCliCredential} and {@link AzureCliCredential}.
* Process timeout for credentials should be provided in milliseconds.
*/
processTimeoutInMs?: number;
/**
* List of environment variables that must be defined at runtime.
* If any variable in this list is missing or set to an empty value,
* {@link DefaultAzureCredential} constructor will throw an error.
* Use this to enforce that your application has the necessary environment configuration before
* continuing execution.
*/
requiredEnvVars?: DefaultAzureCredentialEnvVars | DefaultAzureCredentialEnvVars[];
}
//# sourceMappingURL=defaultAzureCredentialOptions.d.ts.map