CloudTargetAssessment.psm1
|
#Requires -Version 7.0 #Requires -PSEdition Core,Desktop #Requires -Assembly lib\DuckDB.NET.Data.dll #Requires -Module @{'ModuleName'='PSFramework';'ModuleVersion'='1.14.457';'GUID'='8028b914-132b-431f-baa9-94a6952f21ff'} <# .SYNOPSIS CloudTargetAssessment .DESCRIPTION Avaliação de segurança do seu ambiente Microsoft 365, com relatório em português e recomendações da Cloud Target. .NOTES ModuleVersion: 1.0.1-preview GUID: 787ea539-d50a-45ab-8448-b2a676842f8b Author: Cloud Target CompanyName: Cloud Target Copyright: (c) Cloud Target. All rights reserved. Based on microsoft/zerotrustassessment (MIT). .FUNCTIONALITY Clear-CtRequiredModule, Connect-CtAssessment, Disconnect-CtAssessment, Get-CtCurrentLicense, Get-CtExportStatistics, Get-CtGraphScope, Get-CtTest, Get-CtTestStatistics, Invoke-CtAssessment, Invoke-CtAzureRequest, Invoke-CtAzureResourceGraphRequest, Invoke-CtGraphRequest .LINK https://github.com/genesisz27/alvozero #> #region NestedModules Script(s) #endregion # To give a module-wide constant point of reference $script:ModuleRoot = $PSScriptRoot [string[]] $script:ConnectedService = @() [string[]] $script:CurrentLicense = @() # Load PowerShell Classes foreach ($file in Get-ChildItem -Path "$script:ModuleRoot\classes" -Recurse -Filter "*.ps1") { try { . $file.FullName } catch { Write-PSFMessage -Level Error -Message "Failed to import file {0}" -StringValues $file.FullName -ErrorRecord $_ -Target $file } } # Load Non-Public commands foreach ($file in Get-ChildItem -Path "$script:ModuleRoot\private" -Recurse -Filter "*.ps1") { try { . $file.FullName } catch { Write-PSFMessage -Level Error -Message "Failed to import file {0}" -StringValues $file.FullName -ErrorRecord $_ -Target $file } } # Load Public commands foreach ($file in Get-ChildItem -Path "$script:ModuleRoot\public" -Recurse -Filter "*.ps1") { try { . $file.FullName } catch { Write-PSFMessage -Level Error -Message "Failed to import file {0}" -StringValues $file.FullName -ErrorRecord $_ -Target $file } } # Execute Startup scripts foreach ($file in Get-ChildItem -Path "$script:ModuleRoot\scripts" -Recurse -Filter "*.ps1") { try { . $file.FullName } catch { Write-PSFMessage -Level Error -Message "Failed to import file {0}" -StringValues $file.FullName -ErrorRecord $_ -Target $file } } # Ready the Tests foreach ($file in Get-ChildItem -Path "$script:ModuleRoot\tests" -Recurse -Filter "*.ps1") { try { . $file.FullName } catch { Write-PSFMessage -Level Error -Message "Failed to import file {0}" -StringValues $file.FullName -ErrorRecord $_ -Target $file } } |