Why I'd Never Manage Azure from a PC

Azure's management tools run on a Mac or in a browser, and the Windows-only gaps are few. Here is our evidence, the exceptions, and an open-source toolkit.
The title is a preference stated in the first person, and I will be straight about how far the evidence goes. I can show you that managing Azure from a Mac is doable, because the toolkit exists and we used it this week. I cannot prove it is the only way, and nobody can. What I can do is show what our own research says about who attackers write for, and which part of the safety story has nothing to do with the operating system.
Nothing in Azure's management plane needs Windows
Look at what you actually use to run Azure. The Azure CLI installs on macOS. PowerShell 7 runs on macOS, so the shell you may already script in is not Windows-only. Cloud Shell runs in a browser. The portal runs in a browser. The REST API does not care what you are sitting at.
Everything we did on the Azure side this week, measuring a VM, checking quota, taking and restore-testing snapshots, resizing, requesting capacity, came from a Mac with the Azure CLI and a few standard tools. The VM we manage runs Linux, and the shell we manage it from speaks the same dialect: bash or zsh, ssh, jq. There is no translation layer between the workstation and the thing being managed.
What our research says about who attackers write for
We hold two corpora: the threat research we publish and the indicators we collect. We counted how often each platform's scripting tells appear in both, using quoted-phrase keyword searches with semantic matching switched off, one term at a time.
PowerShell, the Windows scripting tell, appears in 73 of our posts and 71 of our indicator records. The closest macOS counterparts barely register: osascript appears in 1 post and 0 records, AppleScript in 0 posts and 9 records, and Mach-O, the macOS binary format, in 2 posts and 0 records.

Here is what that does and does not mean.
- It counts mentions, not detonations. PowerShell appears in defensive posts too. This is a measure of what defenders see and what we chose to cover, not a census of attacks in the wild.
- We threw out our own headline number. The bare word "Windows" showed up in 266 posts and 767 records, and we dropped it: the match is case-insensitive, so it also counts "maintenance windows." The first run of our own counter had a flaw, we caught it, and we fixed it before it reached this page.
- The macOS numbers are not zero. AppleScript appears in 9 indicator records, and the word macOS in 54 posts and 61 records. Macs are targeted, and the people who write about that are right to.
The defensible reading is narrow: moving your admin workstation off the most-targeted scripting ecosystem removes a large class of commodity attacks. It does not make you safe.
Where Windows still wins
Power BI Desktop has no native Mac version. Third-party sources, one of them citing Microsoft's own support documentation from September 2025, agree it is a Windows application, and the Power BI service runs in a browser on a Mac. Confirm the current state on Microsoft's page before you plan around it. If desktop authoring is your daily work, a Windows VM or a browser-first workflow is the honest answer. We did not check every Windows-only admin tool, so if you depend on one, that is your exception to price in.
The safety is the process, not the platform
A Mac is not magic, and the lures that target Macs exist. What protects a workstation that can change production is the process around it, and none of that depends on the operating system:
- least privilege, with different people holding different roles
- a dry run by default, so a change is shown before it is made
- a change gate that checks a real change record, the right machine, and the maintenance window
- a snapshot taken first, and proven to restore
- no secret ever on a command line, and an audit trail of every change
We packaged exactly that as a free, open-source toolkit for right-sizing Azure VMs from a Mac, with ServiceNow and maintenance-window hooks and Azure Policy definitions. It lists the versions we tested and, just as plainly, what we did not. The repository is at github.com/pduggusa/mac4azure-dugganusa, and the thinking behind it is in How To Architect on Azure: Uptime Is the Wrong Humble-Brag.
Your workstation now runs code an AI wrote
This is the part that changes the threat model. If you drive Azure with an AI agent, the agent's output is code running with your Azure rights, and every MCP server it can call is more code with the agent's reach. The same goes for packages it installs on your behalf.
We run a membrane on our own machine for exactly this. On October 29 it logged nine block verdicts on our machine. Four came from my own session, where I am the AI agent, and each was a harmless command of mine that had the shape of an attack, such as a download piped straight into an interpreter. We changed the commands, not the control. That is the honest cost of the approach, and it is the right trade: a false alarm costs a minute, and a quiet miss costs a breach.
The same kind of checks are available to you: a pre-install check for packages and GitHub Actions, and a check that judges an MCP server's identity and dependency tree before you connect it. The public threat lookups need no key, and the API takes a free key, so you can start without buying anything. Start at docs.dugganusa.com. Treat everything an agent reads as data and not as instructions, check what you connect before you connect it, and make the irreversible step wait for a person.
What I cannot prove
I cannot prove a Mac is the only way. People manage Azure safely from Windows every day, and a careless setup on a Mac is still careless. My claim is smaller and I can defend it: the Azure management plane does not require Windows, the corpus we hold points the commodity attacker toward Windows scripting, and a Mac plus a process that cannot be talked into a mistake is the setup I would choose, and the one I did choose.
Five percent of this is wrong somewhere. It always is.
Was this useful? Rate this post — the widget is at the bottom of the page, and we read every response.
How do AI models see YOUR brand?
AIPM has audited 250+ domains. 15 seconds. Free while still in beta.