# mulesoft Azure Key Vault Connector - Full Documentation --- product: Azure Key Vault Connector version: 1.2 is-latest-version: true --- # Azure Key Vault Connector 1.2 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Azure Key Vault (Azure Key Vault Connector) enables you to retrieve secrets, keys, or certificates, and encrypt or decrypt content. For information about compatibility and fixed issues, refer to the Azure Key Vault Connector Release Notes. ## Before You Begin To use this connector, you must be familiar with: - The Azure Key Vault Secrets API - Anypoint Connectors - Mule runtime engine (Mule) - Elements and global elements in a Mule flow - How to create a Mule app using Anypoint Studio Before creating an app, you must have: - Credentials to access the Azure Key Vault target resource - Anypoint Platform - Anypoint Studio or Anypoint Code Builder ## Common Use Cases for the Connector Some common use cases for Azure Key Vault Connector include: - Authenticating to Azure Key Vault via Client Secret Credential to access Key Vault secrets without exposing sensitive credentials in code, thus improving resilience and security - Enabling other applications in a Mule flow to have access to encrypt and decrypt operations using Azure Key Vault keys to avoid key rotations - Authenticating to other database and HTTP connectors in a more secure and automated way to fetch and use credentials to access other endpoints - Retrieving a certificate and saving the certificate into a file ## Connection Types Azure Key Vault connections use the Connection authentication type, which uses a client ID, client secret, and cryptography client cache. ## Environment Variables When setting **Use Azure Default Credential** to `True`, you must set one of the following environment variables `AZURE_CLIENT_ID`, `AZURE_CLIENT_SECRET`, or `AZURE_TENANT_ID`. Refer to [Setting environment variables](https://docs.mulesoft.com/mule-runtime/latest/setting-environment-variables) documentation for details. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Use Exchange to Discover Connectors, Templates, and Examples](https://docs.mulesoft.com/connectors/introduction/intro-use-exchange) - [Azure Key Vault Connector Reference](https://docs.mulesoft.com/azure-key-vault-connector/latest/azure-key-vault-connector-reference) - [Salesforce Help](https://help.salesforce.com) --- product: Azure Key Vault Connector version: 1.2 is-latest-version: true --- # Azure Key Vault Connector 1.2 Examples > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The following examples show several Mule flows for Azure Key Vault Connector: - [Encrypt and Decrypt a Secret](#encrypt-and-decrypt-a-secret) - [Retrieve and Save a Certificate](#retrieve-and-save-a-certificate) - [Retrieve a Secret and Its Metadata](#retrieve-a-secret-and-its-metadata) ## Configure a Connection To secure connections, you must specify the connection field values. To do this: - [Create a configuration file for a connection.](#create-config-file) - [Configure the connection global elements.](#configure-conn) - [Configure a global element for the properties file.](#configure-global) ### Create a Configuration File for a Connection Create a configuration file that includes properties for a connection: 1. Create a file named `mule-app.properties` in the `/src/main/resources/` folder. 2. In the `mule-app.properties` file, create a set of properties for the connection, similar to the ones that follow, replacing the bracketed text (including the brackets) with the correct values for your configuration: azure.keyVault.tenantId= azure.keyVault.clientId= azure.keyVault.clientSecret= azure.keyVault.vaultName= azure.keyVault.secret= azure.keyVault.key= azure.keyVault.certificate= your-directory= For more information about creating a properties file, refer to [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). ### Configure the Connection Global Elements Configure global elements for connection: 1. Create a new Mule project. 2. In the **Mule Palette** view, click **Search in Exchange** and enter `Azure Key Vault`. 3. Add **Azure Key Vault Connector** to the **Selected modules** section and click **Finish**. 4. Click the **Global Elements** tab and click **Create**. 5. Select **Connector Configuration > Azure Key Vault Config** and click **OK**. 6. Enter the values to configure the Connection authentication type. 7. Click the **Test Connection** button to ensure there is connectivity with the Azure Key Vault API. A successful message should pop up. 8. Click **OK**. ### Configure a Global Element for the Properties File Configure a global element for the `mule-app.properties` file so that Mule knows where to find it: 1. Click the **Global Elements** tab and click **Create**. 2. In the **Choose Global Type** dialog, select **Configuration properties** and click **OK**. 3. In the **File** field, enter `mule.app.properties`. 4. Click **OK**. ## Encrypt and Decrypt a Secret This Mule flow retrieves a secret, encrypts and then decrypts the secret using the key provided in the configuration file, and logs the whole process. This example uses the following components: - **HTTP Listener** Accepts data from HTTP requests - **Get Secret** Retrieves a secret - **Logger** Logs the secret value - **Encrypt Message** Encrypts a message - **Logger** Encrypts the log in base64 - **Decrypt Message** Decrypts a message - **Transform Message** Transforms the message using the algorithm - **Logger** Decrypts the log ![Studio flow for the Encrypt and Decrypt a Secret flow](/mulesoft/current/en-us/azure-key-vault-connector/latest/_images/encrypt-decrypt.png) ### XML for This Example Paste this code into the Studio XML editor to quickly load the flow for this example into your Mule app: ```xml ``` ## Retrieve and Save a Certificate This Mule flow retrieves a certificate and saves the certificate into a file. This example uses the following components: - **HTTP Listener** Accepts data from HTTP requests - **Get Certificate** Retrieves a certificate - **Write** Writes the content into the file - **Transform Message** Outputs the success message that says the certificate is saved into a file ![Studio flow for the Retrieve and Save a Certificate flow](/mulesoft/current/en-us/azure-key-vault-connector/latest/_images/retrieve-save.png) ### XML for This Example Paste this code into the Studio XML editor to quickly load the flow for this example into your Mule app: ```xml ``` ## Retrieve a Secret and Its Metadata This Mule flow retrieves a secret and its metadata. This example uses the following components: - **HTTP Listener** Accepts data from HTTP requests - **Get secret metadata** Retrieves the metadata of the secret - **Transform Message** Transforms metadata to JSON - **Logger** Logs the message ![Studio flow for the Retrieve a Secret and Its Metadata flow](/mulesoft/current/en-us/azure-key-vault-connector/latest/_images/retrieve-secret.png) ### XML for This Example Paste this code into the Studio XML editor to quickly load the flow for this example into your Mule app: ```xml ``` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Azure Key Vault Connector version: 1.2 is-latest-version: true --- # Azure Key Vault Connector 1.2 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Azure Key Vault (Azure Key Vault Connector) enables you to retrieve secrets, keys, or certificates, and encrypt or decrypt content. ## Configuration Default Configuration for Azure Key Vault Connector.
NameTypeDescriptionDefault ValueRequired

Name

String

Name for this configuration. Connectors reference the configuration with this name.

x

Connection

Connection types for this configuration.

x

Name

String

ID used to reference this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.

### Connection - Connection Type Uses a client ID, client secret, and cryptography client cache for authentication. Note that the connector configuration does not allow properties such as `client_id` and `client_secret` to be hard coded.
NameTypeDescriptionDefault ValueRequired

Client Id

String

Client ID.

Tenant Id

String

Tenant ID.

Client Secret

String

Client secret.

Vault Name

String

Vault name.

x

Uri Override

String

The URI override for the key vault. If you configure this field, then the value for the Vault Name field is not considered for the connection configuration. If the key vault is not located on Azure Commercial Cloud, then configure this field.

Use Azure Default Credential

Boolean

Uses the authentication parameters taken from environment variables.

false

Cryptography Client Cache

The cryptography client is created based on a key. If the key does not change (no new versions are created), the client is cached and the Encrypt Message and Decrypt Message operations take less time. When encrypting or decrypting a message, a key must be retrieved internally. Retrieving a key every time makes the operation take longer to execute. Enable Cryptography Client Cache to save time when retrieving the key.

Reconnection

Configures a reconnection strategy to use when a connector operation fails to connect to an external server.

Pooling Profile

Characteristics of the connection pool.

## Operations - [Decrypt Message](#DecryptMessage) - [Encrypt Message](#EncryptMessage) - [Get Certificate](#GetCertificate) - [Get Secret](#GetSecret) ### Decrypt Message `` Decrypts a message.
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Algorithm

Enumeration, one of:

  • RSA_OAEP

  • RSA_OAEP_256

  • RSA1_5

Algorithm type.

x

Key Name

String

Key name.

x

Key Version

String

Key version.

Message

Any

Message to decrypt.

#[payload]

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

Expression that evaluates the operation’s output. The outcome of the expression is stored in the Target Variable field.

#[payload]

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Cryptography Result

#### Associated Configurations - [Configuration](#Config) #### Throws - AZURE-KEY-VAULT:CONNECTIVITY - AZURE-KEY-VAULT:DECRYPT\_ERROR - AZURE-KEY-VAULT:ENCRYPT\_ERROR - AZURE-KEY-VAULT:INVALID\_CREDENTIALS - AZURE-KEY-VAULT:INVALID\_VAULT - AZURE-KEY-VAULT:RESOURCE\_NOT\_FOUND - AZURE-KEY-VAULT:RETRY\_EXHAUSTED ### Encrypt Message `` Encrypts a message.
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Algorithm

Enumeration, one of:

  • RSA_OAEP

  • RSA_OAEP_256

  • RSA1_5

Algorithm type.

x

Key Name

String

Key name.

x

Key Version

String

Key version.

Message

Any

Message to encrypt.

#[payload]

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

Expression that evaluates the operation’s output. The outcome of the expression is stored in the Target Variable field.

#[payload]

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Cryptography Result

#### Associated Configurations - [Configuration](#Config) #### Throws - AZURE-KEY-VAULT:CONNECTIVITY - AZURE-KEY-VAULT:DECRYPT\_ERROR - AZURE-KEY-VAULT:ENCRYPT\_ERROR - AZURE-KEY-VAULT:INVALID\_CREDENTIALS - AZURE-KEY-VAULT:INVALID\_VAULT - AZURE-KEY-VAULT:RESOURCE\_NOT\_FOUND - AZURE-KEY-VAULT:RETRY\_EXHAUSTED ### Get Certificate `` Retrieves a certificate.
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Certificate Name

String

Certificate name.

x

Certificate Version

String

Certificate version.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

Expression that evaluates the operation’s output. The outcome of the expression is stored in the Target Variable field.

#[payload]

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Vault Certificate

#### Associated Configurations - [Configuration](#Config) #### Throws - AZURE-KEY-VAULT:CONNECTIVITY - AZURE-KEY-VAULT:DECRYPT\_ERROR - AZURE-KEY-VAULT:ENCRYPT\_ERROR - AZURE-KEY-VAULT:INVALID\_CREDENTIALS - AZURE-KEY-VAULT:INVALID\_VAULT - AZURE-KEY-VAULT:RESOURCE\_NOT\_FOUND - AZURE-KEY-VAULT:RETRY\_EXHAUSTED ### Get Secret `` Retrieves a secret.
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Secret Name

String

Secret name.

x

Secret Version

String

Secret version.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

Expression that evaluates the operation’s output. The outcome of the expression is stored in the Target Variable field.

#[payload]

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Vault Secret

#### Associated Configurations - [Configuration](#Config) #### Throws - AZURE-KEY-VAULT:CONNECTIVITY - AZURE-KEY-VAULT:DECRYPT\_ERROR - AZURE-KEY-VAULT:ENCRYPT\_ERROR - AZURE-KEY-VAULT:INVALID\_CREDENTIALS - AZURE-KEY-VAULT:INVALID\_VAULT - AZURE-KEY-VAULT:RESOURCE\_NOT\_FOUND - AZURE-KEY-VAULT:RETRY\_EXHAUSTED ## Object Types - [Cached Cryptography Client Configuration](#CachedCryptographyClientConfiguration) - [Cryptography Result](#CryptographyResult) - [Expiration Policy](#ExpirationPolicy) - [Pooling Profile](#PoolingProfile) - [Reconnect](#Reconnect) - [Reconnect Forever](#ReconnectForever) - [Reconnection](#Reconnection) - [Vault Certificate](#VaultCertificate) - [Vault Secret](#VaultSecret) ### Cached Cryptography Client Configuration Configures the cached cryptography client configuration. The cryptography client is created based on a key. If the key does not change (no new versions are created), the client is cached and the **Encrypt Message** and **Decrypt Message** operations take less time. When encrypting or decrypting a message, a key must be retrieved internally. Retrieving a key every time makes the operation take longer to execute. Enable **Cryptography Client Cache** to save time when retrieving the key.
FieldTypeDescriptionDefault ValueRequired

Cached Crypto Client Ttl

String

Cached crypto client time-to-live (TTL) value.

10

Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Cached Crypto Client Ttl field.

MINUTES

### Cryptography Result Configures the cryptography result type.
FieldTypeDescriptionDefault ValueRequired

Data

Binary

Data.

Encryption Algorithm

Enumeration, one of:

  • RSA_OAEP

  • RSA_OAEP_256

  • RSA1_5

Encryption algorithm type.

Key

String

Key.

### Expiration Policy Configures an expiration policy strategy.
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Max Idle Time field.

### Pooling Profile Configures the pooling profile type.
FieldTypeDescriptionDefault ValueRequired

Max Active

Number

Controls the maximum number of Mule components that can be borrowed from a session at one time. When set to a negative value, there is no limit to the number of components that are active at one time. When Max Active is exceeded, the pool is exhausted.

Max Idle

Number

Controls the maximum number of Mule components that sit idle in the pool at any time. When set to a negative value, there is no limit to the number of Mule components that are idle at one time.

Max Wait

Number

Specifies the number of milliseconds to wait for a pooled component to become available when the pool is exhausted and when Exhausted Action is set to WHEN_EXHAUSTED_WAIT.

Min Eviction Millis

Number

Determines the minimum amount of time an object sits idle in the pool before the object is eligible for eviction. When non-positive, no objects are evicted from the pool due to idle time alone.

Eviction Check Interval Millis

Number

Specifies the number of milliseconds between runs of the object evictor. When non-positive, no object evictor is executed.

Exhausted Action

Enumeration, one of:

  • WHEN_EXHAUSTED_GROW

  • WHEN_EXHAUSTED_WAIT

  • WHEN_EXHAUSTED_FAIL

Specifies the behavior of the Mule component pool when the pool is exhausted:

  • WHEN_EXHAUSTED_FAIL

    Throws a NoSuchElementException

  • WHEN_EXHAUSTED_WAIT

    Blocks by invoking Object.wait(long) until a new or idle object is available

  • WHEN_EXHAUSTED_GROW

    Creates a new Mule instance and returns it, essentially making Max Active meaningless. If Max Wait is positive, WHEN_EXHAUSTED_GROW blocks for at most that many milliseconds, after which a NoSuchElementException is thrown. If Max Wait is negative, WHEN_EXHAUSTED_GROW blocks indefinitely.

Initialisation Policy

Enumeration, one of:

  • INITIALISE_NONE

  • INITIALISE_ONE

  • INITIALISE_ALL

Determines how components in a pool should be initialized:

  • INITIALISE_NONE

    Does not load any components into the pool on startup

  • INITIALISE_ONE

    Loads one initial component into the pool on startup

  • INITIALISE_ALL

    Loads all components in the pool on startup

Disabled

Boolean

Specifies whether pooling is disabled or not.

### Reconnect Configures a standard reconnection strategy, which specifies how often to reconnect and how many reconnection attempts the connector source or operation can make.
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to attempt to reconnect, in milliseconds.

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

Count

Number

How many reconnection attempts the Mule app can make.

### Reconnect Forever Configures a forever reconnection strategy by which the connector source or operation attempts to reconnect at a specified frequency for as long as the Mule app runs.
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to attempt to reconnect, in milliseconds.

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

### Reconnection Configures a reconnection strategy for an operation.
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

Configures a reconnection strategy to use when a connector operation fails to connect to an external server.

Reconnection Strategy

Reconnection strategy to use.

### Vault Certificate Configures the vault certificate type.
FieldTypeDescriptionDefault ValueRequired

Certificate

Binary

Certificate.

Certificate Content Type

String

Certificate content type.

Certificate Key Type

String

Certificate key type.

Certificate Secret

Certificate secret.

Certificate Type

String

Certificate type.

Created On

DateTime

Date the vault certificate is created.

Enabled

Boolean

Specifies whether the vault certificate is enabled.

Expires On

DateTime

Specifies the expiration of the vault certificate.

Key Id

String

Key ID.

Name

String

Name.

Not Before

DateTime

Specifies which DateTime the vault certificate must be not before.

Recovery Level

String

Recovery level.

Secret Id

String

Secret ID.

Updated On

DateTime

Specifies which DateTime the vault certificate is updated on.

Version

String

Version of the vault certificate.

### Vault Secret Configures the vault secret type.
FieldTypeDescriptionDefault ValueRequired

Content Type

String

Content type.

Created On

DateTime

Date the vault secret is created.

Enabled

Boolean

Specifies whether the vault secret is enabled.

Expires On

DateTime

Specifies the expiration of the vault secret.

Id

String

ID.

Name

String

Name.

Not Before

DateTime

Specifies which DateTime the vault secret must be not before.

Recovery Level

String

Recovery level.

Updated On

DateTime

Specifies which DateTime the vault secret is updated on.

Value

String

Value.

Version

String

Version of the vault secret.

## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Azure Key Vault Connector version: 1.2 is-latest-version: true --- # Azure Key Vault Connector 1.2 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Although you can manually code a Mule app in XML, it is more efficient to use Anypoint Studio: - If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can access the connector from your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. - If you add the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location and it also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/azure-key-vault http://www.mulesoft.org/schema/mule/azure-key-vault/current/mule-azure-key-vault.xsd ``` This example shows how the namespace statements are placed in the XML block: ```xml ``` ## Add a POM File Dependency The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. When you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector: ```xml com.mulesoft.connectors mule4-azure-key-vault-connector x.x.x mule-plugin ``` Replace `x.x.x` with the version that corresponds to the connector you are using. To obtain the most up-to-date `pom.xml` file information: 1. Go to [Anypoint Exchange](https://www.mulesoft.com/exchange/). 2. In Exchange, click **Login** and supply your Anypoint Platform username and password. 3. In Exchange, search for `Azure Key Vault`. 4. Select the connector. 5. Click **Dependency Snippets** near the upper right of the screen. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Azure Key Vault Connector version: 1.2 is-latest-version: true --- # Using Anypoint Studio to Configure Azure Key Vault Connector 1.2 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: 1. [Create a Mule project](#create-mule-project). 2. [Add the connector to your Mule project](#add-connector-to-project). 3. [Configure a source for the connector’s flow](#configure-input-source). 4. [Add a connector operation to the flow](#add-connector-operation). 5. [Configure a global element for the connector](#configure-global-element). 6. [Configure the other connector fields](#configure-other-fields). When you run the connector, you can view the app log to check for problems in real time, as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, refer to the [Azure Key Vault Connector Reference](https://docs.mulesoft.com/azure-key-vault-connector/latest/azure-key-vault-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure the connector: 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add Anypoint Connector for Azure Key Vault (Azure Key Vault Connector) to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s `pom.xml` file: 1. In the **Mule Palette** view, click **(X) Search in Exchange**. 2. In the **Add Dependencies to Project** window, type `Azure Key Vault` in the search field. 3. Click **Azure Key Vault Connector** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. ## Configure a Source A source initiates a flow when a specified condition is met. You can configure one of these sources to use with Azure Key Vault: - HTTP Listener Initiates a flow each time it receives a request on the configured host and port - Scheduler Initiates a flow when a time-based condition is met For example, to configure an HTTP Listener source, follow these steps: 1. In the **Mule Palette** view, select **HTTP > Listener**. 2. Drag **Listener** to the Studio canvas. 3. On the **Listener** configuration screen, optionally change the value of the **Display Name** field. 4. Specify a value for the **Path** field. 5. Click the plus sign (**+**) next to the **Connector configuration** field to configure a global element that can be used by all instances of the HTTP Listener source in the app. 6. On the **General** tab, specify the connection information for the connector. 7. On the **TLS** tab, optionally specify the TLS information for the connector. 8. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy. 9. Click **Test Connection** to confirm that Mule can connect with the specified server. 10. Click **OK**. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you are specifying an action for that connector to perform. To add an operation for Azure Key Vault Connector, follow these steps: 1. In the **Mule Palette** view, select **Azure Key Vault** and then select the desired operation. 2. Drag the operation onto the Studio canvas to the right of the source. ## Configure a Global Element for the Connector When you configure a connector, configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials that the connector requires to access the target Azure Key Vault system. Azure Key Vault Connector supports the Connection authentication. To configure the global element for Azure Key Vault Connector, follow these steps: 1. Select the operation in the Studio canvas. 2. In the configuration screen for the operation, click the plus sign (**+**) next to the **Connector configuration** field to access the global element configuration fields. 3. On the **General** tab, in **Connection**, select the [Connection](#connection) authentication method to configure. You can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, refer to [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 4. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy. 5. Click **Test Connection** to confirm that Mule can connect with the specified server. 6. Click **OK**. ### Connection Authentication Enter the following information on the **General** tab of the **Global Element Properties** screen to configure Connection authentication:
FieldUser Action

Client Id

Enter the client ID.

Tenant Id

Enter the tenant ID.

Client Secret

Enter the client secret.

Vault Name

Enter the vault name.

## Configure Additional Connector Fields After you configure a global element for Azure Key Vault Connector, configure the other required fields for the connector. The required fields vary depending on which connector operation you use. ## View the App Log To check for problems, you can view the app log as follows: - If you’re running the app from Anypoint Platform, the app log output is visible in the Anypoint Studio console window. - If you’re running the app using Mule from the command line, the app log output is visible in your OS console. Unless the log file path is customized in the app’s log file (`log4j2.xml`), you can also view the app log in the default location `MULE_HOME/logs/.log`. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio) - [Azure Key Vault Reference](https://docs.mulesoft.com/azure-key-vault-connector/latest/azure-key-vault-connector-reference) - [Salesforce Help](https://help.salesforce.com)