Using Anypoint Studio to Configure Azure Data Lake Storage Connector | MuleSoft Documentation
# Using Anypoint Studio to Configure Azure Data Lake Storage Connector
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.
  2. Add the connector to your Mule project.
  3. Configure an input source for the connector’s flow.
  4. Add a connector operation to the flow.
  5. Configure a global element for the connector.


When you run the connector, you can view the app log to check for problems, as described in View the App Log.
If you are new to configuring connectors in Studio, see Using Anypoint Studio to Configure a Connector. If, after reading this topic, you need additional information about the connector fields, see the Azure Data Lake Storage 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 Azure Data Lake Storage 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 **Add Modules to Project** , type `azure data lake storage` in the search field.
  3. Click Azure Data Lake Storage 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 Data Lake Storage Connector:
  * **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, 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 HTTP **Listener** in the app.
  6. On the **General** tab, specify 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 immediately define a specific operation for that connector to perform.
To add an operation for Azure Data Lake Storage Connector, follow these steps:
  1. In the **Mule Palette** view, select **Azure Data Lake Storage** and then select the desired operation.
  2. Drag the operation onto the Studio canvas to the right of the input source.


## Configure a Global Element for the Connector
When you configure a connector, it’s best to 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 Data Lake Storage system. Azure Data Lake Storage Connector supports Azure Active Directory OAuth 2.0, Shared Access Signature, and Shared Key Connection authentication methods.
To configure the global element for Azure Data Lake Storage Connector, follow these steps:
  1. Select the name of the connector 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 authentication method to configure:
     * **OAuth 2.0 Connection Provider** (Azure Active Directory OAuth 2.0)
     * **Shared Access Signature**
     * **Shared Key Connection**
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, see Anypoint Connector Configuration.
  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**.


### OAuth 2.0 Connection Provider Authentication
Use OAuth 2.0 to delegate user authentication to the service hosting the user account. For more information, refer to Configuring OAuth 2.0 for Connectors or Configuring OAuth 2.0 for Connectors on CloudHub.
Enter the following information on the **General** tab of the **Global Element Properties** screen to configure Azure Active Directory OAuth 2.0 authentication:
  * **Base URI** One per instance or tenant
  * **X-MS Version** Version of the REST API protocol used for processing the request
  * **Client ID** OAuth client ID that’s registered with Azure
  * **Client Secret** Client secret that corresponds to the client ID
  * **Token URL** Endpoint URL of the OAuth token service provider
  * **Scopes** Scopes to request during the OAuth dance


The following image shows an example of the Azure Active Directory OAuth 2.0 connection configuration values:
Figure 1. OAuth 2.0 Connection Provider authentication fields
### Shared Access Signature Authentication
Enter the following information on the **General** tab of the **Global Element Properties** screen to configure **Shared Access Signature** authentication:
  * **Storage Account Name** Azure storage account name
  * **DNS Suffix** DNS suffix of the Azure storage account. In most cases it’s 'dfs.core.windows.net'.
  * **SAS Token** SAS token for the Azure storage account


The following image shows an example of the **Shared Access Signature** connection configuration values:
Figure 2. Shared Access Signature authentication fields
### Shared Key Connection Authentication
Enter the following information on the **General** tab of the **Global Element Properties** screen to configure **Shared Key Connection** authentication:
  * **Storage Account Name** Name of the Azure Data Lake Storage account
  * **DNS Suffix** DNS suffix of the Azure Data Lake Storage account. In most cases it’s 'dfs.core.windows.net'.
  * **X-MS Version** Version of the REST API protocol used for processing the request
  * **Account Key** Password used to access the Azure Data Lake Storage account


## 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/<app-name>.log`. You can configure the location of the log path in the app log file `log4j2.xml`.
## Next Step
After you configure a global element and connection information, you can try the Examples for common use cases.
## See Also
  * Introduction to Anypoint Connectors
  * Azure Data Lake Storage Connector Reference
  * MuleSoft Help Center