Skip to content

1.0.0b1

Pre-release
Pre-release

Choose a tag to compare

@jtlivio jtlivio released this 16 Aug 10:50
· 38 commits to main since this release
332dc84

The first public build. A beta, and the version number says so: this is the release that proves the whole path from a tag to pip install, and everything in it has been run rather than described.

What it is

Microsoft 365 governance checks that show their work. Every rule declares what kind of truth it is, and missing evidence is never a pass.

  • 20 rules, each declaring its basis: a limit Microsoft publishes, guidance Microsoft gives, a convention, or an opinion. A report that mixes those is a report that loses the argument it should win.
  • 10 collection slices, read only. Nothing under the collector tree calls a mutating cmdlet, and CI proves it by parsing every file in the tree.
  • 13 commands, from collect through assess to verify, so somebody who receives an assessment can check it without this engine and without trusting whoever sent it.
  • unknown is a result, not a pass. Missing evidence is a fact about collection, not about the resource, and the report says so in those words.

Install

pip install m365-governance-as-code==1.0.0b1

The == is not optional yet: 1.0.0b1 is a pre-release, and pip skips those unless asked.

Python 3.11 or later. PowerShell 7 and PnP.PowerShell are needed only to collect from a tenant; the engine, the rules and the tests run offline against packaged fixtures.

Documentation

The manual is at https://ph7x.com/tools/m365-governance-as-code/docs/ and covers installation, reading a report, every collector, the rule model, every command, the architecture and the trust model.

Known boundaries

Stated here because a governance tool that implies coverage it does not have is worse than one that says nothing. This release does not detect SharePoint Add-in authentication, ACS principals, SharePoint 2013 workflows, or InfoPath forms. Those remain manual discovery.