API Reference
CmdletExportSecurityReport
Composes a security report (Word/HTML) from pipeline view objects (SPF/DKIM/DMARC).
Inheritance
- ExportableAsyncPSCmdlet
- CmdletExportSecurityReport
Examples
Compose SPF+DMARC across two domains.
Test-DDEmailSpfRecord -DomainName contoso.com, fabrikam.com |
Test-DDEmailDmarcRecord -DomainName contoso.com, fabrikam.com |
Export-DDSecurityReport -ExportFormat Word -ExportPath ".\\Reports" -OpenReport
Inline, positional ScriptBlock (no -Compose switch).
Export-DDSecurityReport -ExportFormat Markdown -ExportPath ".\\Reports" {
Test-DDEmailSpfRecord -DomainName contoso.com,fabrikam.com
Test-DDEmailDkimRecord -DomainName contoso.com,fabrikam.com
Test-DDEmailDmarcRecord -DomainName contoso.com,fabrikam.com
}
Pipeline + inline together (pipeline binds to InputObject, block binds to Compose).
$views = Test-DDEmailSpfRecord -DomainName contoso.com,fabrikam.com
$views | Export-DDSecurityReport -ExportFormat Markdown -ExportPath ".\\Reports" {
Test-DDEmailDmarcRecord -DomainName contoso.com,fabrikam.com
}
Preserve input domain order and force a custom section order.
Export-DDSecurityReport -ExportFormat Html -ExportPath ".\\Reports" -DomainOrder Input `
-SectionOrderMode Custom -SectionOrder MX,SPF,DMARC {
Test-DDEmailSpfRecord -DomainName contoso.com,fabrikam.com
Test-DDEmailDmarcRecord -DomainName contoso.com,fabrikam.com
}
Constructors
public CmdletExportSecurityReport() #Methods
Inherited Methods
public PathInfo CurrentProviderLocation(String providerId) #PathInfoParameters
- providerId String
public override Boolean Equals(Object obj) #BooleanParameters
- obj Object
public Collection<String> GetResolvedProviderPathFromPSPath(String path, out ProviderInfo provider) #Collection<String>Parameters
- path String
- provider ProviderInfo
public override String GetResourceString(String baseName, String resourceId) #StringParameters
- baseName String
- resourceId String
public String GetUnresolvedProviderPathFromPSPath(String path) #StringParameters
- path String
public Object GetVariableValue(String name, Object defaultValue) #ObjectParameters
- name String
public Boolean ShouldContinue(String query, String caption) #BooleanParameters
- query String
- caption String
- hasSecurityImpact Boolean
- yesToAll Boolean
- noToAll Boolean
public Boolean ShouldProcess(String verboseDescription, String verboseWarning, String caption) #BooleanParameters
- verboseDescription String
- verboseWarning String
- caption String
- shouldProcessReason ShouldProcessReason
public Void ThrowTerminatingError(ErrorRecord errorRecord) #VoidParameters
- errorRecord ErrorRecord
public Void WriteCommandDetail(String text) #VoidParameters
- text String
public Void WriteError(ErrorRecord errorRecord) #VoidParameters
- errorRecord ErrorRecord
public Void WriteInformation(InformationRecord informationRecord) #VoidParameters
- informationRecord InformationRecord
public Void WriteObject(Object sendToPipeline) #VoidParameters
- sendToPipeline Object
public Void WriteProgress(ProgressRecord progressRecord) #VoidParameters
- progressRecord ProgressRecord
Properties
public ReportScope Scope { get; set; } #Parameter(Mandatory = false)Detail scope for section writers.
public SwitchParameter ShowInfoFindings { get; set; } #Parameter(Mandatory = false)Include Info-level findings in sections when supported.
public String ProviderHelpPreset { get; set; } #Parameter(Mandatory = false) ValidateSet(["Off", "Minimal", "Standard", "Detailed"])public Hashtable ProviderHelpOptions { get; set; } #Parameter(Mandatory = false)public ScriptBlock Compose { get; set; } #Parameter(Mandatory = false, ParameterSetName = "Inline", Position = 0)Inline script block used to generate additional input for composition.
public String Title { get; set; } #Parameter(Mandatory = false)Override document title for this export run.
public String Subject { get; set; } #Parameter(Mandatory = false)Override document subject/description for this export run.
public String Category { get; set; } #Parameter(Mandatory = false)Override document category for this export run.
public String Keywords { get; set; } #Parameter(Mandatory = false)Override document keywords (comma-separated) for this export run.
public String Creator { get; set; } #Parameter(Mandatory = false)Override document creator/author for this export run.
public String HtmlProfile { get; set; } #Parameter(Mandatory = false) ValidateSet(["Document", "Dashboard"])public String ExcelProfile { get; set; } #Parameter(Mandatory = false) ValidateSet(["Workbook", "Dashboard"])public String DomainOrder { get; set; } #Parameter(Mandatory = false) ValidateSet(["Alphabetical", "Input"])public String SectionOrderMode { get; set; } #Parameter(Mandatory = false) ValidateSet(["Canonical", "Input", "Custom"])public String[] SectionOrder { get; set; } #Parameter(Mandatory = false)public Nullable<Int32> SummaryColumnCap { get; set; } #Parameter(Mandatory = false) ValidateRange(1, 12)Max status columns in the Word executive summary table.
Inherited Properties
public ReportFormat[] ExportFormat { get; set; } #Parameter(Mandatory = false) Alias(["Report"]) ValidateSet(["Html", "Json", "Word", "Excel", "Markdown", "MarkdownHtml"], IgnoreCase = true)public String ExportPath { get; set; } #Parameter(Mandatory = false)public SwitchParameter OpenInBrowser { get; set; } #Parameter(Mandatory = false) Alias(["OpenReport"])public SwitchParameter ExportArtifacts { get; set; } #Parameter(Mandatory = false) Alias(["Artifacts"])public String ArtifactsDirectory { get; set; } #Parameter(Mandatory = false) Alias(["ArtifactsPath"])public SwitchParameter DisableParallel { get; set; } #Parameter(Mandatory = false)public Nullable<Int32> ThrottleLimit { get; set; } #Parameter(Mandatory = false) ValidateRange(1, 128)public Nullable<Int32> MaxParallelism { get; set; } #Parameter(Mandatory = false) ValidateRange(1, 128)public Nullable<Int32> DnsParallelism { get; set; } #Parameter(Mandatory = false) ValidateRange(1, 128)public DnsEndpoint[] DnsEndpoints { get; set; } #Parameter(Mandatory = false)public MultiResolverStrategy MultiResolverStrategy { get; set; } #Parameter(Mandatory = false)public Nullable<Int32> MultiResolverMaxParallelism { get; set; } #Parameter(Mandatory = false)public PSEventManager Events { get; } #public PSHost Host { get; } #public CommandInvocationIntrinsics InvokeCommand { get; } #public ProviderIntrinsics InvokeProvider { get; } #public JobManager JobManager { get; } #public JobRepository JobRepository { get; } #public InvocationInfo MyInvocation { get; } #public PagingParameters PagingParameters { get; } #public String ParameterSetName { get; } #public SessionState SessionState { get; } #public ICommandRuntime CommandRuntime { get; set; } #public Boolean Stopping { get; } #public CommandOrigin CommandOrigin { get; } #Fields
public Object InputObject #Parameter(Mandatory = false, ParameterSetName = "Default", Position = 0, ValueFromPipeline = true) Parameter(Mandatory = false, ParameterSetName = "Inline", Position = 1, ValueFromPipeline = true)Pipeline input to compose into the report.