feat(m365): add exchange_organization_delicensing_resiliency_enabled security check#10608
Conversation
1bc1ad7 to
93bf117
Compare
|
✅ Conflict Markers Resolved All conflict markers have been successfully resolved in this pull request. |
|
✅ All necessary |
Compliance Mapping ReviewThis PR adds new checks. Please verify that they have been mapped to the relevant compliance framework requirements. New checks already mapped in this PR
Use the |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #10608 +/- ##
==========================================
- Coverage 88.07% 88.04% -0.04%
==========================================
Files 125 127 +2
Lines 5251 5335 +84
==========================================
+ Hits 4625 4697 +72
- Misses 626 638 +12
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
🔒 Container Security ScanImage: 📊 Vulnerability Summary
4 package(s) affected
|
…security check Add new security check exchange_organization_delicensing_resiliency_enabled for m365 provider. Includes check implementation, fixer, metadata, and unit tests. The check is license-aware: returns PASS when the feature is enabled or the tenant has fewer than 5000 total licenses, and MANUAL otherwise.
93bf117 to
fda4818
Compare
- Remove the Maester URL from the Exchange delicensing metadata - Keep the Microsoft documentation links unchanged
Context
Without Delicensing Resiliency, removing or reassigning an Exchange Online license causes immediate mailbox inaccessibility, leading to potential data loss and business disruption during routine organizational changes such as role transitions or license optimizations. This misconfiguration is particularly risky during large-scale license migrations where administrators need time to manage transitions without losing access to critical mailbox data.
Description
This check evaluates whether Delayed Delicensing is enabled in the Exchange Online organization configuration. It examines the
delayed_delicensing_enabledproperty on the organization config and reports a PASS when the setting is enabled (providing a grace period for license removals) or a FAIL when disabled (meaning mailboxes immediately lose access upon license removal). Remediation involves runningSet-OrganizationConfig -DelayedDelicensingEnabled $truevia Exchange Online PowerShell.Steps to review
prowler/providers/m365/services/exchange/exchange_organization_delicensing_resiliency_enabled/prowler/compliance/m365/to ensure the check is correctly mapped to relevant requirementspoetry run pytest tests/providers/m365/services/exchange/exchange_organization_delicensing_resiliency_enabled/ -vChecklist
Community Checklist
SDK/CLI
License
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.