InforcerCommunity.Format.ps1xml

<?xml version="1.0" encoding="utf-8"?>
<Configuration>
  <ViewDefinitions>

    <!-- TENANT -->
    <View>
      <Name>InforcerCommunity.Tenant.Default</Name>
      <ViewSelectedBy>
        <TypeName>InforcerCommunity.Tenant</TypeName>
      </ViewSelectedBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem><Label>ClientTenantId</Label><PropertyName>ClientTenantId</PropertyName></ListItem>
              <ListItem><Label>MsTenantId</Label><PropertyName>MsTenantId</PropertyName></ListItem>
              <ListItem><Label>TenantFriendlyName</Label><PropertyName>TenantFriendlyName</PropertyName></ListItem>
              <ListItem><Label>TenantDnsName</Label><PropertyName>TenantDnsName</PropertyName></ListItem>
              <ListItem><Label>licenses</Label><PropertyName>licenses</PropertyName></ListItem>
              <ListItem><Label>SecureScore</Label><PropertyName>SecureScore</PropertyName></ListItem>
              <ListItem><Label>IsBaseline</Label><PropertyName>IsBaseline</PropertyName></ListItem>
              <ListItem><Label>LastBackupTimestamp</Label><PropertyName>LastBackupTimestamp</PropertyName></ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>

    <!-- BASELINE -->
    <View>
      <Name>InforcerCommunity.Baseline.Default</Name>
      <ViewSelectedBy>
        <TypeName>InforcerCommunity.Baseline</TypeName>
      </ViewSelectedBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem><Label>BaselineName</Label><PropertyName>BaselineName</PropertyName></ListItem>
              <ListItem><Label>BaselineId</Label><PropertyName>BaselineId</PropertyName></ListItem>
              <ListItem><Label>Owner</Label><PropertyName>BaselineTenantFriendlyName</PropertyName></ListItem>
              <ListItem><Label>OwnerTenantId</Label><PropertyName>BaselineClientTenantId</PropertyName></ListItem>
              <ListItem><Label>Members</Label><ScriptBlock>if ($_.members -and $_.members.Count -gt 0) { ($_.members | ForEach-Object { "$($_.TenantFriendlyName) ($($_.ClientTenantId))" }) -join ', ' } else { '(none)' }</ScriptBlock></ListItem>
              <ListItem><Label>AlignedThreshold</Label><PropertyName>AlignedThreshold</PropertyName></ListItem>
              <ListItem><Label>SemiAlignedThreshold</Label><PropertyName>SemiAlignedThreshold</PropertyName></ListItem>
              <ListItem><Label>Mode</Label><ScriptBlock>$_.mode</ScriptBlock></ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>

    <!-- POLICY -->
    <View>
      <Name>InforcerCommunity.Policy.Default</Name>
      <ViewSelectedBy>
        <TypeName>InforcerCommunity.Policy</TypeName>
      </ViewSelectedBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem><Label>PolicyName</Label><PropertyName>PolicyName</PropertyName></ListItem>
              <ListItem><Label>Product</Label><PropertyName>Product</PropertyName></ListItem>
              <ListItem><Label>PrimaryGroup</Label><PropertyName>PrimaryGroup</PropertyName></ListItem>
              <ListItem><Label>SecondaryGroup</Label><PropertyName>SecondaryGroup</PropertyName></ListItem>
              <ListItem><Label>Platform</Label><PropertyName>Platform</PropertyName></ListItem>
              <ListItem><Label>ReadOnly</Label><PropertyName>ReadOnly</PropertyName></ListItem>
              <ListItem><Label>Tags</Label><ScriptBlock>$_.Tags</ScriptBlock></ListItem>
              <ListItem><Label>PolicyData</Label><ScriptBlock>if ($_.policyData) { $_.policyData | ConvertTo-Json -Depth 3 -Compress } else { '' }</ScriptBlock></ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>

    <!-- USER SUMMARY -->
    <View>
      <Name>InforcerCommunity.UserSummary.Default</Name>
      <ViewSelectedBy>
        <TypeName>InforcerCommunity.UserSummary</TypeName>
      </ViewSelectedBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem>
                <Label>DisplayName</Label>
                <PropertyName>DisplayName</PropertyName>
              </ListItem>
              <ListItem>
                <Label>UserPrincipalName</Label>
                <PropertyName>UserPrincipalName</PropertyName>
              </ListItem>
              <ListItem>
                <Label>UserType</Label>
                <PropertyName>UserType</PropertyName>
              </ListItem>
              <ListItem>
                <Label>Department</Label>
                <PropertyName>Department</PropertyName>
              </ListItem>
              <ListItem>
                <Label>AssignedLicenses</Label>
                <PropertyName>AssignedLicenses</PropertyName>
              </ListItem>
              <ListItem>
                <Label>IsGlobalAdmin</Label>
                <PropertyName>IsGlobalAdmin</PropertyName>
              </ListItem>
              <ListItem>
                <Label>IsMfaCapable</Label>
                <PropertyName>IsMfaCapable</PropertyName>
              </ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>

    <!-- ALIGNMENT SCORE (Table format of Get-InforcerAlignmentDetails) -->
    <View>
      <Name>InforcerCommunity.AlignmentScore.Default</Name>
      <ViewSelectedBy>
        <TypeName>InforcerCommunity.AlignmentScore</TypeName>
      </ViewSelectedBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem><Label>Tenant</Label><PropertyName>TargetTenantFriendlyName</PropertyName></ListItem>
              <ListItem><Label>TenantId</Label><PropertyName>TargetTenantClientTenantId</PropertyName></ListItem>
              <ListItem><Label>AlignmentScore</Label><PropertyName>AlignmentScore</PropertyName></ListItem>
              <ListItem><Label>BaselineName</Label><PropertyName>BaselineName</PropertyName></ListItem>
              <ListItem><Label>LastComparisonDateTime</Label><PropertyName>LastComparisonDateTime</PropertyName></ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>

    <!-- USER DETAIL -->
    <View>
      <Name>InforcerCommunity.User.Default</Name>
      <ViewSelectedBy>
        <TypeName>InforcerCommunity.User</TypeName>
      </ViewSelectedBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem>
                <Label>DisplayName</Label>
                <PropertyName>DisplayName</PropertyName>
              </ListItem>
              <ListItem>
                <Label>UserPrincipalName</Label>
                <PropertyName>UserPrincipalName</PropertyName>
              </ListItem>
              <ListItem>
                <Label>UserType</Label>
                <PropertyName>UserType</PropertyName>
              </ListItem>
              <ListItem>
                <Label>Department</Label>
                <PropertyName>Department</PropertyName>
              </ListItem>
              <ListItem>
                <Label>Mail</Label>
                <PropertyName>Mail</PropertyName>
              </ListItem>
              <ListItem>
                <Label>AccountEnabled</Label>
                <PropertyName>AccountEnabled</PropertyName>
              </ListItem>
              <ListItem>
                <Label>IsGlobalAdmin</Label>
                <PropertyName>IsGlobalAdmin</PropertyName>
              </ListItem>
              <ListItem>
                <Label>IsCloudOnly</Label>
                <PropertyName>IsCloudOnly</PropertyName>
              </ListItem>
              <ListItem>
                <Label>IsMfaRegistered</Label>
                <PropertyName>IsMfaRegistered</PropertyName>
              </ListItem>
              <ListItem>
                <Label>RiskLevel</Label>
                <PropertyName>RiskLevel</PropertyName>
              </ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>

    <!-- ALIGNMENT DETAIL POLICY (per-policy rows with -BaselineId) -->
    <View>
      <Name>InforcerCommunity.AlignmentDetailPolicy.Default</Name>
      <ViewSelectedBy>
        <TypeName>InforcerCommunity.AlignmentDetailPolicy</TypeName>
      </ViewSelectedBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem><PropertyName>PolicyName</PropertyName></ListItem>
              <ListItem><PropertyName>AlignmentStatus</PropertyName></ListItem>
              <ListItem><PropertyName>Product</PropertyName></ListItem>
              <ListItem><PropertyName>PrimaryGroup</PropertyName></ListItem>
              <ListItem><PropertyName>SecondaryGroup</PropertyName></ListItem>
              <ListItem><PropertyName>InforcerPolicyTypeName</PropertyName></ListItem>
              <ListItem><PropertyName>Tags</PropertyName></ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>

    <!-- AUDIT EVENT -->
    <View>
      <Name>InforcerCommunity.AuditEvent.Default</Name>
      <ViewSelectedBy>
        <TypeName>InforcerCommunity.AuditEvent</TypeName>
      </ViewSelectedBy>
      <ListControl>
        <ListEntries>
          <ListEntry>
            <ListItems>
              <ListItem><Label>Id</Label><ScriptBlock>$_.id</ScriptBlock></ListItem>
              <ListItem><Label>EventType</Label><PropertyName>EventType</PropertyName></ListItem>
              <ListItem><Label>Code</Label><PropertyName>Code</PropertyName></ListItem>
              <ListItem><Label>User</Label><PropertyName>User</PropertyName></ListItem>
              <ListItem><Label>Timestamp</Label><PropertyName>Timestamp</PropertyName></ListItem>
              <ListItem><Label>Message</Label><PropertyName>Message</PropertyName></ListItem>
              <ListItem><Label>ClientIpv4</Label><PropertyName>ClientIpv4</PropertyName></ListItem>
              <ListItem><Label>UserName</Label><PropertyName>UserName</PropertyName></ListItem>
              <ListItem><Label>UserDisplayName</Label><PropertyName>UserDisplayName</PropertyName></ListItem>
            </ListItems>
          </ListEntry>
        </ListEntries>
      </ListControl>
    </View>

  </ViewDefinitions>
</Configuration>