1. Packages
  2. Azure Classic
  3. API Docs
  4. Provider

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
azure logo

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
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:

    AuxiliaryTenantIds List<string>
    ClientCertificatePassword string
    The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
    ClientCertificatePath string
    The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
    ClientId string
    The Client ID which should be used.
    ClientSecret string
    The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
    DisableCorrelationRequestId bool
    This will disable the x-ms-correlation-request-id header.
    DisableTerraformPartnerId bool
    This will disable the Terraform Partner ID which is used if a custom partner_id isn'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 ProviderFeatures
    MetadataHost 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
    MetadataUrl string
    Deprecated - replaced by metadata_host. It can also be sourced from the following environment variable: ARM_METADATA_URL

    Deprecated: use metadata_host instead

    MsiEndpoint string
    The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
    PartnerId string
    A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
    SkipCredentialsValidation bool
    [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.

    Deprecated: This field is deprecated and will be removed in version 3.0 of the Azure Provider

    SkipProviderRegistration bool
    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
    StorageUseAzuread bool
    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
    SubscriptionId string
    The Subscription ID which should be used. It can also be sourced from the following environment variable: ARM_SUBSCRIPTION_ID
    TenantId string
    The Tenant ID which should be used.
    UseMsal bool
    Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
    UseMsi bool
    Allowed Managed Service Identity be used for Authentication.
    AuxiliaryTenantIds []string
    ClientCertificatePassword string
    The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
    ClientCertificatePath string
    The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
    ClientId string
    The Client ID which should be used.
    ClientSecret string
    The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
    DisableCorrelationRequestId bool
    This will disable the x-ms-correlation-request-id header.
    DisableTerraformPartnerId bool
    This will disable the Terraform Partner ID which is used if a custom partner_id isn'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 ProviderFeaturesArgs
    MetadataHost 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
    MetadataUrl string
    Deprecated - replaced by metadata_host. It can also be sourced from the following environment variable: ARM_METADATA_URL

    Deprecated: use metadata_host instead

    MsiEndpoint string
    The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
    PartnerId string
    A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
    SkipCredentialsValidation bool
    [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.

    Deprecated: This field is deprecated and will be removed in version 3.0 of the Azure Provider

    SkipProviderRegistration bool
    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
    StorageUseAzuread bool
    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
    SubscriptionId string
    The Subscription ID which should be used. It can also be sourced from the following environment variable: ARM_SUBSCRIPTION_ID
    TenantId string
    The Tenant ID which should be used.
    UseMsal bool
    Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
    UseMsi bool
    Allowed Managed Service Identity be used for Authentication.
    auxiliaryTenantIds List<String>
    clientCertificatePassword String
    The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
    clientCertificatePath String
    The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
    clientId String
    The Client ID which should be used.
    clientSecret String
    The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
    disableCorrelationRequestId Boolean
    This will disable the x-ms-correlation-request-id header.
    disableTerraformPartnerId Boolean
    This will disable the Terraform Partner ID which is used if a custom partner_id isn'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 ProviderFeatures
    metadataHost 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
    metadataUrl String
    Deprecated - replaced by metadata_host. It can also be sourced from the following environment variable: ARM_METADATA_URL

    Deprecated: use metadata_host instead

    msiEndpoint String
    The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
    partnerId String
    A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
    skipCredentialsValidation Boolean
    [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.

    Deprecated: This field is deprecated and will be removed in version 3.0 of the Azure Provider

    skipProviderRegistration Boolean
    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
    storageUseAzuread Boolean
    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
    subscriptionId String
    The Subscription ID which should be used. It can also be sourced from the following environment variable: ARM_SUBSCRIPTION_ID
    tenantId String
    The Tenant ID which should be used.
    useMsal Boolean
    Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
    useMsi Boolean
    Allowed Managed Service Identity be used for Authentication.
    auxiliaryTenantIds string[]
    clientCertificatePassword string
    The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
    clientCertificatePath string
    The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
    clientId string
    The Client ID which should be used.
    clientSecret string
    The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
    disableCorrelationRequestId boolean
    This will disable the x-ms-correlation-request-id header.
    disableTerraformPartnerId boolean
    This will disable the Terraform Partner ID which is used if a custom partner_id isn'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 ProviderFeatures
    metadataHost 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
    metadataUrl string
    Deprecated - replaced by metadata_host. It can also be sourced from the following environment variable: ARM_METADATA_URL

    Deprecated: use metadata_host instead

    msiEndpoint string
    The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
    partnerId string
    A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
    skipCredentialsValidation boolean
    [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.

    Deprecated: This field is deprecated and will be removed in version 3.0 of the Azure Provider

    skipProviderRegistration boolean
    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
    storageUseAzuread boolean
    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
    subscriptionId string
    The Subscription ID which should be used. It can also be sourced from the following environment variable: ARM_SUBSCRIPTION_ID
    tenantId string
    The Tenant ID which should be used.
    useMsal boolean
    Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
    useMsi boolean
    Allowed Managed Service Identity be used for Authentication.
    auxiliary_tenant_ids Sequence[str]
    client_certificate_password str
    The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
    client_certificate_path str
    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_request_id bool
    This will disable the x-ms-correlation-request-id header.
    disable_terraform_partner_id bool
    This will disable the Terraform Partner ID which is used if a custom partner_id isn'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 ProviderFeaturesArgs
    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

    Deprecated: use metadata_host instead

    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_validation bool
    [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.

    Deprecated: This field is deprecated and will be removed in version 3.0 of the Azure Provider

    skip_provider_registration bool
    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_azuread bool
    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.
    auxiliaryTenantIds List<String>
    clientCertificatePassword String
    The password associated with the Client Certificate. For use when authenticating as a Service Principal using a Client Certificate
    clientCertificatePath String
    The path to the Client Certificate associated with the Service Principal for use when authenticating as a Service Principal using a Client Certificate.
    clientId String
    The Client ID which should be used.
    clientSecret String
    The Client Secret which should be used. For use When authenticating as a Service Principal using a Client Secret.
    disableCorrelationRequestId Boolean
    This will disable the x-ms-correlation-request-id header.
    disableTerraformPartnerId Boolean
    This will disable the Terraform Partner ID which is used if a custom partner_id isn'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
    metadataHost 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
    metadataUrl String
    Deprecated - replaced by metadata_host. It can also be sourced from the following environment variable: ARM_METADATA_URL

    Deprecated: use metadata_host instead

    msiEndpoint String
    The path to a custom endpoint for Managed Service Identity - in most circumstances this should be detected automatically.
    partnerId String
    A GUID/UUID that is registered with Microsoft to facilitate partner resource usage attribution.
    skipCredentialsValidation Boolean
    [DEPRECATED] This will cause the AzureRM Provider to skip verifying the credentials being used are valid.

    Deprecated: This field is deprecated and will be removed in version 3.0 of the Azure Provider

    skipProviderRegistration Boolean
    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
    storageUseAzuread Boolean
    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
    subscriptionId String
    The Subscription ID which should be used. It can also be sourced from the following environment variable: ARM_SUBSCRIPTION_ID
    tenantId String
    The Tenant ID which should be used.
    useMsal Boolean
    Should Terraform obtain MSAL auth tokens and no longer use Azure Active Directory Graph?
    useMsi 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

    ProviderFeaturesApiManagement, ProviderFeaturesApiManagementArgs

    ProviderFeaturesCognitiveAccount, ProviderFeaturesCognitiveAccountArgs

    ProviderFeaturesKeyVault, ProviderFeaturesKeyVaultArgs

    ProviderFeaturesLogAnalyticsWorkspace, ProviderFeaturesLogAnalyticsWorkspaceArgs

    ProviderFeaturesNetwork, ProviderFeaturesNetworkArgs

    ProviderFeaturesResourceGroup, ProviderFeaturesResourceGroupArgs

    ProviderFeaturesTemplateDeployment, ProviderFeaturesTemplateDeploymentArgs

    ProviderFeaturesVirtualMachine, ProviderFeaturesVirtualMachineArgs

    ProviderFeaturesVirtualMachineScaleSet, ProviderFeaturesVirtualMachineScaleSetArgs

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Viewing docs for Azure v4.42.0 (Older version)
    published on Monday, Mar 9, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.