mycorp-tests/MyCorp/Entra/Test-ConditionalAccessWhatIf.Tests.ps1
|
BeforeDiscovery { $EntraIDPlan = Get-MtLicenseInformation -Product "EntraID" $RegularUsers = Get-MtUser -Count 5 -UserType "Member" $AdminUsers = Get-MtUser -Count 5 -UserType "Admin" $EmergencyAccessUsers = Get-MtUser -Count 5 -UserType "EmergencyAccess" # Remove emergency access users from regular users $RegularUsers = $RegularUsers | Where-Object { $_.id -notin $EmergencyAccessUsers.id } # Remove emergency access users from admin users $AdminUsers = $AdminUsers | Where-Object { $_.id -notin $EmergencyAccessUsers.id } Write-Verbose "EntraIDPlan: $EntraIDPlan" Write-Verbose "RegularUsers: $($RegularUsers.id)" Write-Verbose "AdminUsers: $($AdminUsers.id)" } Describe "MyCorp/Entra" -Tag "MyCorp", "CA", "CAWhatIf", "Security", "All" -Skip:( $EntraIDPlan -eq "Free" ) { Context "MyCorp/Entra" -ForEach @( $RegularUsers ) { # Regular users It "MT.1033: User should be blocked from using legacy authentication (<userPrincipalName>)" -Tag "MT.1033" { Test-MtCaWIFBlockLegacyAuthentication -UserId $id | Should -Be $true } } Context "MyCorp/Entra" -ForEach @( $EmergencyAccessUsers ) { # Emergency access users It "MT.1034: Emergency access users should not be blocked (<userPrincipalName>)" -Tag "MT.1034" { if ( ( Get-MtLicenseInformation EntraID ) -eq "Free" ) { Add-MtTestResultDetail -SkippedBecause NotLicensedEntraIDP1 } else { Test-MtConditionalAccessWhatIf -UserId $id -IncludeApplications "00000002-0000-0ff1-ce00-000000000000" -ClientAppType exchangeActiveSync | Should -BeNullOrEmpty } } } } |