> For the complete documentation index, see [llms.txt](https://docs.halosecurity.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.halosecurity.com/docs/integrations/discovery-integrations/azure.md).

# Azure

Import assets from Azure DNS.

## Azure Setup

The easiest way to get started with importing Azure DNS assets is to use Azure's Cloud Shell to obtain settings and create a Role Assignment for Halo Security. After the setup is complete, we can visit the Halo Security platform to finish the integration.

For more information about Cloud Shell, visit <https://learn.microsoft.com/en-us/azure/cloud-shell/overview>.

### Step 1: Obtain Subscription ID

In Cloud Shell, type the following command to retrieve the Subscription ID:

```
az account show --query id --output tsv
```

### Step 2: Obtain Resource Groups for DNS Zones

Type the following command to view Resource Groups for DNS Zones. Resource Groups will be used to limit the permissions and access for Halo Security's Role Assignment:

```
az network dns zone list --query [].resourceGroup --output tsv
```

### Step 3: Create Role Assignment

Creating a Role Assignment allows Halo Security to access DNS zones and records with read-only permissions. Create an assignment by typing the following command, replacing **SUBSCRIPTION\_ID** and **RESOURCE\_GROUP** with the appropriate values retrieved above:

```
az ad sp create-for-rbac -n "HaloSecurity" --role Reader --scopes /subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP
```

Take note of the output of this command, which will be used when connecting Azure to the Halo Security platform. It should look something similar to the following:

```
{
  "appId": "ffffffff-9231-4f6d-9a74-4f0c9eea2b31",
  "displayName": "HaloSecurity",
  "password": "fFf1F~4fGp~63nuFff1KcyQReXfdcTgDgH1dHail",
  "tenant": "f1fff1f1-e568-4b28-ff1f-eae09c934715"
}

```

## Connect Azure to Halo Security

1. Visit your *Settings → Integrations →* [Add](https://app.halosecurity.com/user/settings/integrations/add).
2. Add the Azure integration.
3. Add a name to create the integration.
4. After creating the integration, finish setting it up by providing the following values that were obtained during the Azure Setup process:
   1. **Client ID**: `appId` value created in Step 3
   2. **Client Secret**: `password` value created in Step 3
   3. **Tenant**: `tenant` value created in Step 3
   4. **Subscription Id**: Subscription ID value retrieved in Step 1
5. Finally, click "Save Changes" and your integration will be ready for use. If you did not enable Auto Run, you can run the integration at any time by clicking the start icon.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.halosecurity.com/docs/integrations/discovery-integrations/azure.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
