Docs · Connect your tools
Connect Microsoft Azure
StackWeaver reads, and never changes, one Azure subscription once a day. An administrator of your tenant approves StackWeaver's app on Microsoft's own page, and you then give that app the built-in Reader role on the one subscription to be read. Nothing is typed or pasted. This guide says what is read, what each step allows, and how to remove it.
Last reviewed: 6 November 2026 · Describes what is live in production on that date. A result is evidence of what the provider returned at a time, nothing more.
1. What it collects
Once a day, and when a workspace owner or admin presses Run now, StackWeaver reads one subscription through the Azure management API (how it works). Each result is kept as an Evidence Object with a SHA-256 fingerprint (platform), including results that fail. StackWeaver keeps only the tenant id and the subscription id, and no secret of yours (what is stored).
| Check (as shown in the portal) | What it looks at |
|---|---|
| Storage: secure transfer, TLS 1.2, encryption | Whether storage accounts require secure transfer, set a minimum TLS version and report encryption. |
| Microsoft Defender for Cloud plans | Whether the Defender for Cloud plans for the resource types you have are switched on. |
| SSH and RDP not open to the internet | Whether a network security group lets the internet reach SSH or RDP. |
| Key Vault soft delete and purge protection | Whether your key vaults have both switched on. |
| Activity log kept 12 months | Whether the activity log is exported and kept for the period the check tests. |
| Key Vault diagnostic settings | Whether key vaults send their diagnostic logs somewhere. |
2. What it does not do
- It cannot change anything: the Reader role views resources and allows no changes (Microsoft). It reads the control plane only, never keys, secrets or data (how it works).
- It does not store a password, key or client secret of yours. The only credential is StackWeaver's own Microsoft app (what is stored).
- It reads one subscription per connection: the one you give the Reader role on.
- It does not issue certifications. A named reviewer decides whether evidence is accepted (editorial policy).
3. The access it needs
There are two separate approvals, and you control both.
- Approve the app. An administrator of your tenant approves StackWeaver's app; Microsoft requires a tenant administrator to sign in to complete the request (Microsoft). Microsoft's page lists the same four read-only Microsoft Graph permissions the Microsoft Entra ID connector uses, even if you only connect Azure (how it works). The Azure checks do not use them. They are read-only, and deleting the StackWeaver enterprise application in your tenant removes them together with the approval (Microsoft).
- Give the app the Reader role on one subscription. Reader is a built-in Azure role that views all resources and allows no changes (Microsoft).
To assign a role you need permission to write role assignments, for example Role Based Access Control Administrator or User Access Administrator (Microsoft).
Who can connect. Two things must both be true. First, in StackWeaver you must be a workspace owner or admin. Second, in Microsoft the account you sign in with must be a Global Administrator or a Privileged Role Administrator of the tenant, and hold that role right now: after you sign in, StackWeaver asks Microsoft which administrator roles that account holds, and connects only if one of the two is found (how it works). This is checked because approving the app gives StackWeaver read access to the whole tenant, so only someone who can decide that for the tenant should be able to connect it. If Microsoft cannot be asked, or does not answer clearly, StackWeaver does not connect.
If you use Privileged Identity Management. A role you are only eligible for is not active, so it does not count: an eligible assignment needs you to perform one or more actions before the role can be used (Microsoft). Activate the role in Microsoft first, wait for it to show as active, then press Connect again.
4. Connect steps
- In StackWeaver, open Evidence, then the Microsoft Azure evidence section, and press Connect Microsoft Azure. Only a workspace owner or admin sees the button.
- Sign in to Microsoft as a Global Administrator or Privileged Role Administrator of your tenant (active, not only eligible) and approve. Microsoft then asks you to choose the account you are signing in with. StackWeaver learns which tenant you belong to from the signed reply Microsoft sends, not from the address it was sent back to (Microsoft, how it works), and asks Microsoft to confirm that your tenant approved the app before it saves anything.
- If StackWeaver can see no subscription yet, the card says Reader role not assigned yet and shows a command. In Azure Cloud Shell or the Azure CLI, replace the subscription id and run it: az role assignment create --assignee (StackWeaver's app id, shown on the card) --role Reader --scope /subscriptions/(your subscription id). The assignee can be a service principal name, which is the app's client id (Microsoft). Or in the Azure portal: open the subscription, then Access control (IAM), Add, Add role assignment, choose the Reader role, then Members, Select members, and pick the StackWeaver app (Microsoft).
- Press Check again. If the app can read several subscriptions, choose the one StackWeaver should read. StackWeaver tests the connection, and when the card says Connected you can press Run now.
5. Reading the results
| Label | What it means |
|---|---|
| Pass | Microsoft returned a setting that meets the check when StackWeaver looked. |
| Fail | Microsoft returned a setting that does not meet the check. |
| Not enabled | There was nothing to check, or the feature is not switched on in the tenant. |
| Could not check | StackWeaver was not permitted to read it, or Microsoft did not answer. It does not mean the setting is fine, and it does not mean it is broken. |
6. Disconnect and revoke
- In the StackWeaver portal, open Evidence, Microsoft Azure evidence, and press Disconnect. StackWeaver deletes the tenant id and subscription id it stored, and collection stops. Evidence already collected stays (how it works).
- To remove the Reader role, open the subscription's Access control (IAM), the Role assignments tab, and remove the StackWeaver app's assignment (Microsoft).
- To remove StackWeaver's approval, an administrator of your tenant deletes the StackWeaver enterprise application: in the Microsoft Entra admin center, browse to Entra ID, then Enterprise apps, select the application, open Properties, select Delete and confirm (Microsoft).
What remains. Past evidence stays in your workspace as the audit trail unless you ask for deletion. How StackWeaver keeps and deletes data is in the privacy policy. To ask for deletion, write to [email protected].
7. Troubleshooting
| What you see | What to do |
|---|---|
| Reader role not assigned yet | Give the StackWeaver app the Reader role on one subscription (step 3 above), then press Check again. |
| The administrator declined on Microsoft's page, so nothing was connected | Press Connect again and approve, or ask an administrator of your tenant to do it. |
| Microsoft's sign-in could not be confirmed, so nothing was connected | Press Connect and sign in with an account of the tenant you are connecting. |
| Only an administrator of the Microsoft tenant can connect it | Sign in with an account that holds the Global Administrator or Privileged Role Administrator role right now. If you hold it through Privileged Identity Management, activate it first, then press Connect again. If you are not an administrator, ask one to connect. |
| Microsoft's approval could not be confirmed for that tenant | Ask an administrator of your tenant to press Connect and approve. |
| That subscription is already connected to another StackWeaver workspace | Use the contact page: one subscription can be connected to one workspace. |
| Connected, but the test did not pass | The status below the card says what is missing. The built-in Reader role is needed, not a custom role. |
| Microsoft connection is not configured on our side yet | StackWeaver has not switched this connection on for your workspace yet. |
Still stuck? Use the contact page.
Sources and method
Statements about Microsoft link to their own documentation. Statements about StackWeaver link to the page that says them, or are recorded in a claims ledger with the file in StackWeaver's repository that they come from. See oureditorial policy. Spotted an error? Use the contact page.