cisagov / ScubaGear

Automation to assess the state of your M365 tenant against CISA's baselines
https://www.cisa.gov/resources-tools/services/secure-cloud-business-applications-scuba-project
Creative Commons Zero v1.0 Universal
1.45k stars 204 forks source link

Add Authentication via Managed Identity #868

Open buidav opened 5 months ago

buidav commented 5 months ago

💡 Summary

This issue is to add support for authenticating to ScubaGear's dependent PowerShell modules via a Managed Identity.

Motivation and context

There has been demand from users (including us) for running ScubaGear in an Azure Automation runbook. Adding managed identity authentication support to ScubaGear would allow users to run ScubaGear via a runbook without currently having to do some workarounds.

Implementation notes

Notes as of 1/29/2024

[!Important] There are only two PowerShell authentication cmdlets left that don't support managed identities. Power Platform (Add-PowerAppsAccount) and Defender (Connect-IPPSSession). Currently only partial managed identity support can be implemented for ScubaGear by providing the following parameters to each of our other dependent PowerShell authentication cmdlets.

Acceptance criteria

schrolla commented 5 months ago

Also investigate if other forms of managed identity (federation, etc) would also work through this addition or if it would required additional changes.