--- title: "Azure Resource Discovery Tool" slug: "azure-resource-discovery-tool" updated: 2026-09-09T16:09:35Z published: 2026-09-09T16:09:35Z canonical: "docs.redcanary.com/azure-resource-discovery-tool" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.redcanary.com/llms.txt > Use this file to discover all available pages before exploring further. # Azure Resource Discovery Tool The Azure Resource Discovery Tool is essential for customers who want to assess which of their Azure resources can be integrated with Zscaler MDR. By using this tool, users can enumerate all the resources within their Azure subscriptions, providing a clear picture of what assets are available for integration. This tool is particularly valuable for planning and optimizing security coverage, ensuring that no critical resources are overlooked in the integration process. Whether you're preparing for a new integration or managing an existing one, the Azure Resource Discovery Tool helps you understand the full scope of resources that can be protected by Zscaler MDR. ### Prerequisites - You must be subscribed to Zscaler MDR’s Cloud Control Planes license - You must have Azure Global Admin rights - [Tenant ID](https://redcanary.document360.io/docs/integrate-with-microsoft-azure#:~:text=Step%203%3A%20Microsoft%20Azure%E2%80%93Locate%20your%20Tenant%20ID%20and%20Log%20Analytics%20Workspace%20Resource%20ID) - [Log Analytics Workspace Resource ID](https://redcanary.document360.io/docs/integrate-with-microsoft-azure#:~:text=Step%203%3A%20Microsoft%20Azure%E2%80%93Locate%20your%20Tenant%20ID%20and%20Log%20Analytics%20Workspace%20Resource%20ID) - The [enumerate-resources.ps1](https://rc-customer-tools.s3.us-east-2.amazonaws.com/azure/enumerate-resources.ps1) script ### PowerShell Zscaler MDR chose PowerShell to accomplish this task as it is a first-party Microsoft application that receives good and continuous support from the Microsoft (MS) ecosystem. With this in mind, Azure customers will likely have at least one person who is highly skilled in its use. PowerShell is available on homebrew as the PowerShell cask, or from [Microsoft’s own tap](https://github.com/PowerShell/Homebrew-Tap) as PowerShell/tap/PowerShell and, once installed, may be started with the pwsh command. Additionally, [Azure Cloud Shell](https://learn.microsoft.com/en-us/azure/cloud-shell/get-started?tabs=azurecli) may be used to run PowerShell directly within the Azure management console. **Step 1: Microsoft Azure–Run the script** 1. Open **Azure**. ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/Azure open.png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) 2. From the menu bar select the cloud shell icon. ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/open.png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) 3. If this is the first time opening Azure in this tenant, you must choose which shell to work in and create storage. > **Note**: You will not be asked to choose again. ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/image(262).png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) Choose **PowerShell** ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/storage.png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) 1. If you were not asked to select your shell, and Bash is already selected (pictured below) click the dropdown option (Bash) and then select **PowerShell**. ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/powershell.png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) 2. Click **Confirm**. 3. From the menu, click **Upload**. ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/upload(1).png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) 4. Navigate to the location of the script, which you will have received from a representative, or click the link found at the bottom of this article. 5. Select the script from the previous step. 6. At the prompt, enter **dir**. 7. The [enumerate-resources.ps1](https://rc-customer-tools.s3.us-east-2.amazonaws.com/azure/enumerate-resources.ps1) script should appear in the listing: ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/dir.png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) 8. If you are running PowerShell from the Azure management console, it will, by default run in the context of your currently selected tenant. If you have access to other tenants, you may find them by running **Get-AzTenant**. This command will display a table of tenants, where the first column, ID, is the tenant ID. 9. To know which tenant the script will run on by default, you can run **Get-AzContext**. ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/tenent(1).png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) 10. Once you have identified the tenant(s) which the script should be run for, run `./enumerate-resources.ps1 -HomeTenantID {ID}` 11. You may be asked to install or upgrade certain PowerShell modules from the PowerShell gallery. These are the Microsoft Azure SDK for PowerShell, and the gallery is the official source. Type **A** for Yes to All, and then press **Enter**. The script will produce a table of resources. ![](https://cdn.document360.io/75147bee-bf0d-444c-8afb-6e83b11ec0ef/Images/Documentation/container(1).png?sv=2026-02-06&spr=https&st=2026-11-09T12%3A08%3A05Z&se=2026-11-09T13%3A08%3A05Z&sr=c&sp=r&sig=FLrj7ojqzzD73Tg9sRZLmlUQvoblgQkZERTojBeIGrY%3D) > **Note**: It is normal for the script to take some time when counting container images in a tenant with many container registries. The following content is displayed: - The home tenantID that it ran. - All the subscriptions and the resource units from that home tenantID. > **Note**: When enumerating resources within a tenant, HomeTenantId is used to select them, not TenantId. If quoting for multiple tenants, you must run this script for each tenant rather than from a lighthouse tenant.