manifests/collectors/Identity/ConditionalAccess.psd1
|
# # GENERATED by scripts/ConvertTo-ScoutCollectorDefinition.ps1 from Modules/Public/InventoryModules/Identity/ConditionalAccess.ps1 (AB#5660). # Field expressions are copied verbatim from the original collector and evaluate in an # equivalent scope -- see docs/design/decisions/declarative-collectors.md. # Review before trusting; regenerate rather than hand-patch if the source collector changes. # @{ ResourceTypes = @( 'entra/conditionalaccesspolicies' ) ResourceTypeMatching = 'Grouped' AdditionalFilter = $null FilterPreamble = '' RowLoopVariable = '1' Preamble = @' $ResUCount = 1 $data = $1.properties # Users included/excluded $usersIncluded = '' $usersExcluded = '' if ($data.conditions.users) { if ($data.conditions.users.includeUsers) { $usersIncluded = ($data.conditions.users.includeUsers -join ', ') } if ($data.conditions.users.excludeUsers) { $usersExcluded = ($data.conditions.users.excludeUsers -join ', ') } } # Applications $appsIncluded = '' if ($data.conditions.applications) { if ($data.conditions.applications.includeApplications) { $appsIncluded = ($data.conditions.applications.includeApplications -join ', ') } } # Grant controls $grantControls = '' if ($data.grantControls) { if ($data.grantControls.builtInControls) { $grantControls = ($data.grantControls.builtInControls -join ', ') } } # Session controls $sessionControls = '' if ($data.sessionControls) { $scParts = @() if ($data.sessionControls.signInFrequency) { $scParts += 'SignInFrequency' } if ($data.sessionControls.persistentBrowser) { $scParts += 'PersistentBrowser' } if ($data.sessionControls.cloudAppSecurity) { $scParts += 'CloudAppSecurity' } if ($data.sessionControls.applicationEnforcedRestrictions) { $scParts += 'AppEnforcedRestrictions' } $sessionControls = ($scParts -join ', ') } '@ AdditionalRowLoops = @() TagLoop = $null Fields = @( @{ Name = 'ID' Expression = '$1.id' } @{ Name = 'Tenant ID' Expression = '$1.tenantId' } @{ Name = 'Display Name' Expression = '$data.displayName' } @{ Name = 'State' Expression = '$data.state' } @{ Name = 'Users Included' Expression = '$usersIncluded' } @{ Name = 'Users Excluded' Expression = '$usersExcluded' } @{ Name = 'Apps Included' Expression = '$appsIncluded' } @{ Name = 'Grant Controls' Expression = '$grantControls' } @{ Name = 'Session Controls' Expression = '$sessionControls' } @{ Name = 'Created DateTime' Expression = '$data.createdDateTime' } @{ Name = 'Modified DateTime' Expression = '$data.modifiedDateTime' } @{ Name = 'Resource U' Expression = '$ResUCount' } ) Export = @{ WorksheetName = 'Conditional Access' TableNamePrefix = 'CATable_' Columns = @( 'Display Name' 'State' 'Users Included' 'Users Excluded' 'Apps Included' 'Grant Controls' 'Session Controls' 'Created DateTime' 'Modified DateTime' 'Resource U' ) TagColumns = @() TagColumnsBefore = $null NumberFormat = '0' ConditionalText = @( 'New-ConditionalText disabled -Range D:D' 'New-ConditionalText enabledForReportingButNotEnforced -Range D:D' ) } SourceCollector = 'Modules/Public/InventoryModules/Identity/ConditionalAccess.ps1' } |