Microsoft has a pretty strong pitch for government cloud services. The department of defense runs one of the largest Active Directory deployments in the world, along with a huge install base of Windows desktops, Office, SQL Server and SharePoint.
Many of these DoD deployments have been extensively customized by Microsoft’s professional services division, which has an excellent reputation in the defense industry. Apparently Microsoft rolled lessons learned from these big deployments into their Azure offerings.
I think it’s clear that DoD can reduce costs and improve service quality by migrating to Azure managed service variants of existing Microsoft systems. Amazon is probably better for basic IaaS, but this SaaS/PaaS stuff is gonna be better on Azure, at least when you already have such a big commitment to the ecosystem.
There are probably some strategic concerns too. Amazon has been the only real cloud provider to the defense world for years. Giving Microsoft a big contract means the government will have more options in the future. This dynamic really only shows up in huge enterprises with weird needs... look at NASA for another example.
If you want to complain about Microsoft’s behavior, the best place to look is probably at the non-hosted upgrade paths for their legacy products. They could refuse to let you run Word without Office 365; Office 365 requires Azure, so you have to certify Azure for your data to keep writing documents. That’s a pretty aggressive move to pull on any client though.. the sort of thing that pushes folks to make do with Libre Office.