SHELL/6.5.1.ps1
|
$CheckId = "6.5.1" $Title = "Ensure modern authentication for Exchange Online is enabled" $Level = "L1" $BenchmarkType = "Automated" try { $OrgConfig = Get-OrganizationConfig -ErrorAction Stop $OAuth2Enabled = [bool]$OrgConfig.OAuth2ClientProfileEnabled $Pass = $OAuth2Enabled $Status = if ($Pass) { "PASS" } else { "FAIL" } [pscustomobject]@{ CheckId = $CheckId Title = $Title Level = $Level BenchmarkType = $BenchmarkType Status = $Status Pass = $Pass Evidence = [pscustomobject]@{ OAuth2ClientProfileEnabled = $OAuth2Enabled SourceDocument = "CIS_Microsoft_365_Foundations_Benchmark_v6.0.1" } Error = if ($Pass) { $null } else { "OAuth2ClientProfileEnabled is False. It must be True." } Timestamp = Get-Date } } catch { [pscustomobject]@{ CheckId = $CheckId Title = $Title Level = $Level BenchmarkType = $BenchmarkType Status = "ERROR" Pass = $null Evidence = [pscustomobject]@{ SourceDocument = "CIS_Microsoft_365_Foundations_Benchmark_v6.0.1" } Error = $_.Exception.Message Timestamp = Get-Date } } |