We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
The provider type for the azurerm package. By default, resources use package-wide configuration
settings, however an explicit Provider instance may be created and passed during resource
construction to achieve fine-grained programmatic control over provider settings. See the
documentation for more information.
Create Provider Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Provider(name: string, args?: ProviderArgs, opts?: CustomResourceOptions);@overload
def Provider(resource_name: str,
args: Optional[ProviderArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def Provider(resource_name: str,
opts: Optional[ResourceOptions] = None,
auxiliary_tenant_ids: Optional[Sequence[str]] = None,
client_certificate_password: Optional[str] = None,
client_certificate_path: Optional[str] = None,
client_id: Optional[str] = None,
client_secret: Optional[str] = None,
disable_correlation_request_id: Optional[bool] = None,
disable_terraform_partner_id: Optional[bool] = None,
environment: Optional[str] = None,
features: Optional[ProviderFeaturesArgs] = None,
metadata_host: Optional[str] = None,
metadata_url: Optional[str] = None,
msi_endpoint: Optional[str] = None,
partner_id: Optional[str] = None,
skip_credentials_validation: Optional[bool] = None,
skip_provider_registration: Optional[bool] = None,
storage_use_azuread: Optional[bool] = None,
subscription_id: Optional[str] = None,
tenant_id: Optional[str] = None,
use_msal: Optional[bool] = None,
use_msi: Optional[bool] = None)func NewProvider(ctx *Context, name string, args *ProviderArgs, opts ...ResourceOption) (*Provider, error)public Provider(string name, ProviderArgs? args = null, CustomResourceOptions? opts = null)
public Provider(String name, ProviderArgs args)
public Provider(String name, ProviderArgs args, CustomResourceOptions options)
type: pulumi:providers:azure
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ProviderArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ProviderArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ProviderArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ProviderArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ProviderArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Provider Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Provider resource accepts the following input properties:
- Auxiliary
Tenant List<string>Ids - Client
Certificate stringPassword - The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
- Client
Certificate stringPath - The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
- Client
Id string - The Client ID which should be used.
- Client
Secret string - The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
- Disable
Correlation boolRequest Id - This will disable the x-ms-correlation-request-id header.
- Disable
Terraform boolPartner Id - This will disable the Terraform Partner ID which is used if a custom
partner_idisn't specified. - Environment string
- The Cloud Environment which should be used. Possible values are public, usgovernment, and china. Defaults to public.
It can also be sourced from the following environment variables:
AZURE_ENVIRONMENT,ARM_ENVIRONMENT - Features
Provider
Features - Metadata
Host string - The Hostname which should be used for the Azure Metadata Service.
It can also be sourced from the following environment variable:
ARM_METADATA_HOSTNAME - Metadata
Url string - Deprecated - replaced by
metadata_host. It can also be sourced from the following environment variable:ARM_METADATA_URL - Msi
Endpoint string - The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
- Partner
Id string - A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
- Skip
Credentials boolValidation - [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.
- Skip
Provider boolRegistration - Should the AzureRM Provider skip registering all of the Resource Providers that it supports, if they're not already
registered?
It can also be sourced from the following environment variable:
ARM_SKIP_PROVIDER_REGISTRATION - Storage
Use boolAzuread - Should the AzureRM Provider use AzureAD to access the Storage Data Plane API's?
It can also be sourced from the following environment variable:
ARM_STORAGE_USE_AZUREAD - Subscription
Id string - The Subscription ID which should be used.
It can also be sourced from the following environment variable:
ARM_SUBSCRIPTION_ID - Tenant
Id string - The Tenant ID which should be used.
- Use
Msal bool - Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
- Use
Msi bool - Allowed Managed Service Identity be used for Authentication.
- Auxiliary
Tenant []stringIds - Client
Certificate stringPassword - The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
- Client
Certificate stringPath - The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
- Client
Id string - The Client ID which should be used.
- Client
Secret string - The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
- Disable
Correlation boolRequest Id - This will disable the x-ms-correlation-request-id header.
- Disable
Terraform boolPartner Id - This will disable the Terraform Partner ID which is used if a custom
partner_idisn't specified. - Environment string
- The Cloud Environment which should be used. Possible values are public, usgovernment, and china. Defaults to public.
It can also be sourced from the following environment variables:
AZURE_ENVIRONMENT,ARM_ENVIRONMENT - Features
Provider
Features Args - Metadata
Host string - The Hostname which should be used for the Azure Metadata Service.
It can also be sourced from the following environment variable:
ARM_METADATA_HOSTNAME - Metadata
Url string - Deprecated - replaced by
metadata_host. It can also be sourced from the following environment variable:ARM_METADATA_URL - Msi
Endpoint string - The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
- Partner
Id string - A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
- Skip
Credentials boolValidation - [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.
- Skip
Provider boolRegistration - Should the AzureRM Provider skip registering all of the Resource Providers that it supports, if they're not already
registered?
It can also be sourced from the following environment variable:
ARM_SKIP_PROVIDER_REGISTRATION - Storage
Use boolAzuread - Should the AzureRM Provider use AzureAD to access the Storage Data Plane API's?
It can also be sourced from the following environment variable:
ARM_STORAGE_USE_AZUREAD - Subscription
Id string - The Subscription ID which should be used.
It can also be sourced from the following environment variable:
ARM_SUBSCRIPTION_ID - Tenant
Id string - The Tenant ID which should be used.
- Use
Msal bool - Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
- Use
Msi bool - Allowed Managed Service Identity be used for Authentication.
- auxiliary
Tenant List<String>Ids - client
Certificate StringPassword - The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
- client
Certificate StringPath - The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
- client
Id String - The Client ID which should be used.
- client
Secret String - The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
- disable
Correlation BooleanRequest Id - This will disable the x-ms-correlation-request-id header.
- disable
Terraform BooleanPartner Id - This will disable the Terraform Partner ID which is used if a custom
partner_idisn't specified. - environment String
- The Cloud Environment which should be used. Possible values are public, usgovernment, and china. Defaults to public.
It can also be sourced from the following environment variables:
AZURE_ENVIRONMENT,ARM_ENVIRONMENT - features
Provider
Features - metadata
Host String - The Hostname which should be used for the Azure Metadata Service.
It can also be sourced from the following environment variable:
ARM_METADATA_HOSTNAME - metadata
Url String - Deprecated - replaced by
metadata_host. It can also be sourced from the following environment variable:ARM_METADATA_URL - msi
Endpoint String - The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
- partner
Id String - A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
- skip
Credentials BooleanValidation - [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.
- skip
Provider BooleanRegistration - Should the AzureRM Provider skip registering all of the Resource Providers that it supports, if they're not already
registered?
It can also be sourced from the following environment variable:
ARM_SKIP_PROVIDER_REGISTRATION - storage
Use BooleanAzuread - Should the AzureRM Provider use AzureAD to access the Storage Data Plane API's?
It can also be sourced from the following environment variable:
ARM_STORAGE_USE_AZUREAD - subscription
Id String - The Subscription ID which should be used.
It can also be sourced from the following environment variable:
ARM_SUBSCRIPTION_ID - tenant
Id String - The Tenant ID which should be used.
- use
Msal Boolean - Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
- use
Msi Boolean - Allowed Managed Service Identity be used for Authentication.
- auxiliary
Tenant string[]Ids - client
Certificate stringPassword - The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
- client
Certificate stringPath - The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
- client
Id string - The Client ID which should be used.
- client
Secret string - The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
- disable
Correlation booleanRequest Id - This will disable the x-ms-correlation-request-id header.
- disable
Terraform booleanPartner Id - This will disable the Terraform Partner ID which is used if a custom
partner_idisn't specified. - environment string
- The Cloud Environment which should be used. Possible values are public, usgovernment, and china. Defaults to public.
It can also be sourced from the following environment variables:
AZURE_ENVIRONMENT,ARM_ENVIRONMENT - features
Provider
Features - metadata
Host string - The Hostname which should be used for the Azure Metadata Service.
It can also be sourced from the following environment variable:
ARM_METADATA_HOSTNAME - metadata
Url string - Deprecated - replaced by
metadata_host. It can also be sourced from the following environment variable:ARM_METADATA_URL - msi
Endpoint string - The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
- partner
Id string - A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
- skip
Credentials booleanValidation - [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.
- skip
Provider booleanRegistration - Should the AzureRM Provider skip registering all of the Resource Providers that it supports, if they're not already
registered?
It can also be sourced from the following environment variable:
ARM_SKIP_PROVIDER_REGISTRATION - storage
Use booleanAzuread - Should the AzureRM Provider use AzureAD to access the Storage Data Plane API's?
It can also be sourced from the following environment variable:
ARM_STORAGE_USE_AZUREAD - subscription
Id string - The Subscription ID which should be used.
It can also be sourced from the following environment variable:
ARM_SUBSCRIPTION_ID - tenant
Id string - The Tenant ID which should be used.
- use
Msal boolean - Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
- use
Msi boolean - Allowed Managed Service Identity be used for Authentication.
- auxiliary_
tenant_ Sequence[str]ids - client_
certificate_ strpassword - The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
- client_
certificate_ strpath - The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
- client_
id str - The Client ID which should be used.
- client_
secret str - The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
- disable_
correlation_ boolrequest_ id - This will disable the x-ms-correlation-request-id header.
- disable_
terraform_ boolpartner_ id - This will disable the Terraform Partner ID which is used if a custom
partner_idisn't specified. - environment str
- The Cloud Environment which should be used. Possible values are public, usgovernment, and china. Defaults to public.
It can also be sourced from the following environment variables:
AZURE_ENVIRONMENT,ARM_ENVIRONMENT - features
Provider
Features Args - metadata_
host str - The Hostname which should be used for the Azure Metadata Service.
It can also be sourced from the following environment variable:
ARM_METADATA_HOSTNAME - metadata_
url str - Deprecated - replaced by
metadata_host. It can also be sourced from the following environment variable:ARM_METADATA_URL - msi_
endpoint str - The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
- partner_
id str - A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
- skip_
credentials_ boolvalidation - [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.
- skip_
provider_ boolregistration - Should the AzureRM Provider skip registering all of the Resource Providers that it supports, if they're not already
registered?
It can also be sourced from the following environment variable:
ARM_SKIP_PROVIDER_REGISTRATION - storage_
use_ boolazuread - Should the AzureRM Provider use AzureAD to access the Storage Data Plane API's?
It can also be sourced from the following environment variable:
ARM_STORAGE_USE_AZUREAD - subscription_
id str - The Subscription ID which should be used.
It can also be sourced from the following environment variable:
ARM_SUBSCRIPTION_ID - tenant_
id str - The Tenant ID which should be used.
- use_
msal bool - Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
- use_
msi bool - Allowed Managed Service Identity be used for Authentication.
- auxiliary
Tenant List<String>Ids - client
Certificate StringPassword - The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
- client
Certificate StringPath - The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
- client
Id String - The Client ID which should be used.
- client
Secret String - The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
- disable
Correlation BooleanRequest Id - This will disable the x-ms-correlation-request-id header.
- disable
Terraform BooleanPartner Id - This will disable the Terraform Partner ID which is used if a custom
partner_idisn't specified. - environment String
- The Cloud Environment which should be used. Possible values are public, usgovernment, and china. Defaults to public.
It can also be sourced from the following environment variables:
AZURE_ENVIRONMENT,ARM_ENVIRONMENT - features Property Map
- metadata
Host String - The Hostname which should be used for the Azure Metadata Service.
It can also be sourced from the following environment variable:
ARM_METADATA_HOSTNAME - metadata
Url String - Deprecated - replaced by
metadata_host. It can also be sourced from the following environment variable:ARM_METADATA_URL - msi
Endpoint String - The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
- partner
Id String - A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
- skip
Credentials BooleanValidation - [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.
- skip
Provider BooleanRegistration - Should the AzureRM Provider skip registering all of the Resource Providers that it supports, if they're not already
registered?
It can also be sourced from the following environment variable:
ARM_SKIP_PROVIDER_REGISTRATION - storage
Use BooleanAzuread - Should the AzureRM Provider use AzureAD to access the Storage Data Plane API's?
It can also be sourced from the following environment variable:
ARM_STORAGE_USE_AZUREAD - subscription
Id String - The Subscription ID which should be used.
It can also be sourced from the following environment variable:
ARM_SUBSCRIPTION_ID - tenant
Id String - The Tenant ID which should be used.
- use
Msal Boolean - Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
- use
Msi Boolean - Allowed Managed Service Identity be used for Authentication.
Outputs
All input properties are implicitly available as output properties. Additionally, the Provider resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Supporting Types
ProviderFeatures, ProviderFeaturesArgs
- Api
Management ProviderFeatures Api Management - Cognitive
Account ProviderFeatures Cognitive Account - Key
Vault ProviderFeatures Key Vault - Log
Analytics ProviderWorkspace Features Log Analytics Workspace - Network
Provider
Features Network - Resource
Group ProviderFeatures Resource Group - Template
Deployment ProviderFeatures Template Deployment - Virtual
Machine ProviderFeatures Virtual Machine - Virtual
Machine ProviderScale Set Features Virtual Machine Scale Set
- Api
Management ProviderFeatures Api Management - Cognitive
Account ProviderFeatures Cognitive Account - Key
Vault ProviderFeatures Key Vault - Log
Analytics ProviderWorkspace Features Log Analytics Workspace - Network
Provider
Features Network - Resource
Group ProviderFeatures Resource Group - Template
Deployment ProviderFeatures Template Deployment - Virtual
Machine ProviderFeatures Virtual Machine - Virtual
Machine ProviderScale Set Features Virtual Machine Scale Set
- api
Management ProviderFeatures Api Management - cognitive
Account ProviderFeatures Cognitive Account - key
Vault ProviderFeatures Key Vault - log
Analytics ProviderWorkspace Features Log Analytics Workspace - network
Provider
Features Network - resource
Group ProviderFeatures Resource Group - template
Deployment ProviderFeatures Template Deployment - virtual
Machine ProviderFeatures Virtual Machine - virtual
Machine ProviderScale Set Features Virtual Machine Scale Set
- api
Management ProviderFeatures Api Management - cognitive
Account ProviderFeatures Cognitive Account - key
Vault ProviderFeatures Key Vault - log
Analytics ProviderWorkspace Features Log Analytics Workspace - network
Provider
Features Network - resource
Group ProviderFeatures Resource Group - template
Deployment ProviderFeatures Template Deployment - virtual
Machine ProviderFeatures Virtual Machine - virtual
Machine ProviderScale Set Features Virtual Machine Scale Set
- api_
management ProviderFeatures Api Management - cognitive_
account ProviderFeatures Cognitive Account - key_
vault ProviderFeatures Key Vault - log_
analytics_ Providerworkspace Features Log Analytics Workspace - network
Provider
Features Network - resource_
group ProviderFeatures Resource Group - template_
deployment ProviderFeatures Template Deployment - virtual_
machine ProviderFeatures Virtual Machine - virtual_
machine_ Providerscale_ set Features Virtual Machine Scale Set
ProviderFeaturesApiManagement, ProviderFeaturesApiManagementArgs
- purge
Soft BooleanDelete On Destroy
- purge
Soft booleanDelete On Destroy
- purge
Soft BooleanDelete On Destroy
ProviderFeaturesCognitiveAccount, ProviderFeaturesCognitiveAccountArgs
- purge
Soft BooleanDelete On Destroy
- purge
Soft booleanDelete On Destroy
- purge
Soft BooleanDelete On Destroy
ProviderFeaturesKeyVault, ProviderFeaturesKeyVaultArgs
- purge
Soft BooleanDelete On Destroy - recover
Soft BooleanDeleted Key Vaults
- purge
Soft booleanDelete On Destroy - recover
Soft booleanDeleted Key Vaults
- purge
Soft BooleanDelete On Destroy - recover
Soft BooleanDeleted Key Vaults
ProviderFeaturesLogAnalyticsWorkspace, ProviderFeaturesLogAnalyticsWorkspaceArgs
- permanently
Delete BooleanOn Destroy
- permanently
Delete booleanOn Destroy
- permanently
Delete BooleanOn Destroy
ProviderFeaturesNetwork, ProviderFeaturesNetworkArgs
- Relaxed
Locking bool
- Relaxed
Locking bool
- relaxed
Locking Boolean
- relaxed
Locking boolean
- relaxed_
locking bool
- relaxed
Locking Boolean
ProviderFeaturesResourceGroup, ProviderFeaturesResourceGroupArgs
ProviderFeaturesTemplateDeployment, ProviderFeaturesTemplateDeploymentArgs
- delete
Nested BooleanItems During Deletion
- delete
Nested booleanItems During Deletion
- delete
Nested BooleanItems During Deletion
ProviderFeaturesVirtualMachine, ProviderFeaturesVirtualMachineArgs
- delete
Os BooleanDisk On Deletion - graceful
Shutdown Boolean - skip
Shutdown BooleanAnd Force Delete
- delete
Os booleanDisk On Deletion - graceful
Shutdown boolean - skip
Shutdown booleanAnd Force Delete
- delete
Os BooleanDisk On Deletion - graceful
Shutdown Boolean - skip
Shutdown BooleanAnd Force Delete
ProviderFeaturesVirtualMachineScaleSet, ProviderFeaturesVirtualMachineScaleSetArgs
- roll
Instances BooleanWhen Required - force
Delete Boolean - scale
To BooleanZero Before Deletion
- roll
Instances booleanWhen Required - force
Delete boolean - scale
To booleanZero Before Deletion
- roll
Instances BooleanWhen Required - force
Delete Boolean - scale
To BooleanZero Before Deletion
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
azurermTerraform Provider.
We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
