---
schema_version: "1"
id: f0faaf28fac9d6b12e95948dc14a79a00e3f49d4c7db4aa3b15afffbd0edf35d
title: Azure Key Vault Properties Provider 2.1 Reference
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/azure-key-vault-properties-provider-connector/2.1/azure-key-vault-properties-provider-reference.md
canonical_url: https://docs.mulesoft.com/azure-key-vault-properties-provider-connector/2.1/azure-key-vault-properties-provider-reference
source_site: docs.mulesoft.com
content_type: documentation
content_hash: fa8deb0c29c5031dd453b5bb4566b8cca74a0cd76e14457d36d68d74dbfa7f55
description: MuleSoft Documentation Site
release: "2.1"
latest: false
---
---
product: Azure Key Vault Properties Provider
version: 2.1
---

# Azure Key Vault Properties Provider 2.1 Reference

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Azure Key Vault Properties Provider is a configuration that enables you to retrieve your secrets
from a secure Azure cloud service before your Mule app runs.

## Configuration

Default Configuration for Azure Key Vault Properties Provider.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Name</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Name for this configuration. Connectors reference the configuration with this name.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr><tr><td><p><strong>Client Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Client ID of your app. If not set, the properties provider uses the Azure SDK default authentication and looks for this value in the environment variable <code>AZURE_CLIENT_ID</code>. Note: <code>tenantId</code>, <code>clientId</code>, and <code>clientSecret</code> must be set together if specified in the configuration.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Tenant Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Tenant ID of your app. If not set, the properties provider uses the Azure SDK default authentication and looks for this value in the environment variable <code>AZURE_TENANT_ID</code>. Note: <code>tenantId</code>, <code>clientId</code>, and <code>clientSecret</code> must be set together if specified in the configuration.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Client Secret</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Client secret of your app. If not set, the properties provider uses the Azure SDK default authentication and looks for this value in the environment variable <code>AZURE_CLIENT_SECRET</code>. Note: <code>tenantId</code>, <code>clientId</code>, and <code>clientSecret</code> must be set together if specified in the configuration.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Key Vault Name</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Name of the vault to connect. If not set, the properties provider uses the system property <code>MULE_AZURE_KEY_VAULT_NAME</code>.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Uri Override</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The URI override for the key vault.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

## Requirements

Add the following repository and its associated credentials in the Maven settings:

```xml
<repository>
          <id>MuleRepository2</id>
          <name>MuleRepository2</name>
          <url>https://repository.mulesoft.org/nexus/content/repositories/releases-ee/</url>
          <layout>default</layout>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
</repository>
```

## Limitations

Azure Key Vault Properties Provider doesn’t support the use of property files for the configuration
of the properties provider.

## Environment Variables

Use the following environment variables to configure the behavior of the Azure Key Vault Properties
Provider from the environment instead of specifying parameters in the Mule app configuration:

- `AZURE_CLIENT_ID`

- `AZURE_CLIENT_SECRET`

- `AZURE_TENANT_ID`

- `MULE_AZURE_KEY_VAULT_NAME`

These variables are stored in secure configuration files with the values encrypted. During
execution, the runtime decrypts these values and they remain in memory in their decrypted state. For
more information, refer to [Protecting App Property Values](https://docs.mulesoft.com/cloudhub-2/ch2-protect-app-props).

### Authenticate Through Environment Variables

To authenticate to Azure Key Vault using environment variables, set the following environment
variables:

- `AZURE_CLIENT_ID`

- `AZURE_CLIENT_SECRET`

- `AZURE_TENANT_ID`

Refer to [Setting Environment Variables](https://docs.mulesoft.com/mule-runtime/latest/setting-environment-variables)
for details.

If you do not set the `tenantId`, `clientId`, or `clientSecret` attributes in the configuration, the
properties provider uses the values from the environment variables.

In the XML configuration, you can omit the attributes if you use environment variables:

```xml
<!-- Configuration using environment variables for tenantId, clientId and clientSecret -->
<azure-key-vault-properties-provider:config name="Azure_Key_Vault_Properties_Provider_Config"
    keyVaultName="connectors-vault"/>
```

### Configure Key Vault Name Through Environment Variables

If you do not set the `keyVaultName` attribute, the properties provider uses the system property
`MULE_AZURE_KEY_VAULT_NAME`:

```xml
<!-- Configuration using environment variables for tenantId, clientId, clientSecret, and keyVaultName -->
<azure-key-vault-properties-provider:config name="Azure_Key_Vault_Properties_Provider_Config"/>
```

If neither is set, the properties providers throws a `RuntimeException` message.

## See Also

- [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors)

- [Salesforce Help](https://help.salesforce.com)
