xml/psRadiantOne.Format.Administration.ps1xml
|
<?xml version="1.0" encoding="utf-8"?> <Configuration> <ViewDefinitions> <!-- Administration: control panel users and roles, scheduled tasks, access control, feature flags, the file manager and the dashboard. --> <View> <Name>psRadiantOne.FIDUser</Name> <ViewSelectedBy> <TypeName>psRadiantOne.FIDUser</TypeName> </ViewSelectedBy> <TableControl> <TableHeaders> <TableColumnHeader> <Label>username</Label> <Width>20</Width> </TableColumnHeader> <TableColumnHeader> <Label>firstName</Label> <Width>16</Width> </TableColumnHeader> <TableColumnHeader> <Label>lastName</Label> <Width>16</Width> </TableColumnHeader> <TableColumnHeader> <Label>active</Label> <Width>7</Width> </TableColumnHeader> <TableColumnHeader> <Label>roles</Label> </TableColumnHeader> </TableHeaders> <TableRowEntries> <TableRowEntry> <TableColumnItems> <TableColumnItem> <PropertyName>username</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>firstName</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>lastName</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>active</PropertyName> </TableColumnItem> <TableColumnItem> <ScriptBlock>$_.roles -join ', '</ScriptBlock> </TableColumnItem> </TableColumnItems> </TableRowEntry> </TableRowEntries> </TableControl> </View> <View> <Name>psRadiantOne.FIDUser.List</Name> <ViewSelectedBy> <TypeName>psRadiantOne.FIDUser</TypeName> </ViewSelectedBy> <ListControl> <ListEntries> <ListEntry> <ListItems> <ListItem> <PropertyName>username</PropertyName> </ListItem> <ListItem> <PropertyName>firstName</PropertyName> </ListItem> <ListItem> <PropertyName>lastName</PropertyName> </ListItem> <ListItem> <PropertyName>email</PropertyName> </ListItem> <ListItem> <PropertyName>entryDn</PropertyName> </ListItem> <ListItem> <PropertyName>active</PropertyName> </ListItem> <ListItem> <Label>roles</Label> <ScriptBlock>$_.roles -join ', '</ScriptBlock> </ListItem> <ListItem> <PropertyName>assumeRole</PropertyName> </ListItem> <ListItem> <!-- Unlike every other date the API returns, this one is LDAP generalized time as a string, so it is parsed rather than cast. --> <Label>createdOn</Label> <ScriptBlock>if (-not ([string]::IsNullOrEmpty($_.createdOn))) { [datetime]::ParseExact($_.createdOn, 'yyyyMMddHHmmss.fff\Z', [cultureinfo]::InvariantCulture, [System.Globalization.DateTimeStyles]::AssumeUniversal -bor [System.Globalization.DateTimeStyles]::AdjustToUniversal).ToLocalTime().ToString('g') }</ScriptBlock> </ListItem> <ListItem> <PropertyName>organization</PropertyName> </ListItem> <ListItem> <PropertyName>server</PropertyName> </ListItem> </ListItems> </ListEntry> </ListEntries> </ListControl> </View> <View> <Name>psRadiantOne.FIDRole</Name> <ViewSelectedBy> <TypeName>psRadiantOne.FIDRole</TypeName> </ViewSelectedBy> <TableControl> <TableHeaders> <TableColumnHeader> <Label>name</Label> <Width>32</Width> </TableColumnHeader> <TableColumnHeader> <Label>default</Label> <Width>8</Width> </TableColumnHeader> <TableColumnHeader> <Label>browser</Label> <Width>8</Width> </TableColumnHeader> <TableColumnHeader> <Label>dashboard</Label> <Width>10</Width> </TableColumnHeader> <TableColumnHeader> <Label>tasks</Label> <Width>8</Width> </TableColumnHeader> <TableColumnHeader> <Label>files</Label> <Width>8</Width> </TableColumnHeader> <TableColumnHeader> <Label>identityManager</Label> </TableColumnHeader> </TableHeaders> <TableRowEntries> <TableRowEntry> <TableColumnItems> <TableColumnItem> <PropertyName>name</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>defaultRole</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>directoryBrowserPermission</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>dashboardPermission</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>tasksPermission</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>fileManagerPermission</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>identityManagerPermission</PropertyName> </TableColumnItem> </TableColumnItems> </TableRowEntry> </TableRowEntries> </TableControl> </View> <View> <Name>psRadiantOne.FIDRole.List</Name> <ViewSelectedBy> <TypeName>psRadiantOne.FIDRole</TypeName> </ViewSelectedBy> <!-- Seven of the twenty properties are objects holding a permission per control panel feature. Each is flattened to its set values, so the role reads as what it grants. --> <ListControl> <ListEntries> <ListEntry> <ListItems> <ListItem> <PropertyName>name</PropertyName> </ListItem> <ListItem> <PropertyName>entryDn</PropertyName> </ListItem> <ListItem> <PropertyName>defaultRole</PropertyName> </ListItem> <ListItem> <PropertyName>directoryBrowserPermission</PropertyName> </ListItem> <ListItem> <PropertyName>identityManagerPermission</PropertyName> </ListItem> <ListItem> <PropertyName>tasksPermission</PropertyName> </ListItem> <ListItem> <PropertyName>globalSyncPermission</PropertyName> </ListItem> <ListItem> <PropertyName>observabilityPermission</PropertyName> </ListItem> <ListItem> <PropertyName>dashboardPermission</PropertyName> </ListItem> <ListItem> <PropertyName>fileManagerPermission</PropertyName> </ListItem> <ListItem> <PropertyName>revokeTokenPermission</PropertyName> </ListItem> <ListItem> <Label>dataCatalogPermissions</Label> <ScriptBlock>($_.dataCatalogPermissions.PSObject.Properties | ForEach-Object { "$($_.Name) = $($_.Value -join ', ')" }) -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>directoryNamespacePermissions</Label> <ScriptBlock>($_.directoryNamespacePermissions.PSObject.Properties | ForEach-Object { "$($_.Name) = $($_.Value)" }) -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>securityPermissions</Label> <ScriptBlock>($_.securityPermissions.PSObject.Properties | ForEach-Object { "$($_.Name) = $($_.Value)" }) -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>administrationPermissions</Label> <ScriptBlock>($_.administrationPermissions.PSObject.Properties | ForEach-Object { "$($_.Name) = $($_.Value)" }) -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>settingsPermissions</Label> <ScriptBlock>($_.settingsPermissions.PSObject.Properties | ForEach-Object { "$($_.Name) = $($_.Value)" }) -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>tuningPermissions</Label> <ScriptBlock>($_.tuningPermissions.PSObject.Properties | ForEach-Object { "$($_.Name) = $($_.Value)" }) -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>exportImportPermissions</Label> <ScriptBlock>($_.exportImportPermissions.PSObject.Properties | ForEach-Object { "$($_.Name) = $($_.Value)" }) -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>classicControlPanelPermission</Label> <ScriptBlock>($_.classicControlPanelPermission.PSObject.Properties | ForEach-Object { "$($_.Name) = $($_.Value)" }) -join [System.Environment]::NewLine</ScriptBlock> </ListItem> </ListItems> </ListEntry> </ListEntries> </ListControl> </View> <View> <Name>psRadiantOne.Task</Name> <ViewSelectedBy> <TypeName>psRadiantOne.Task</TypeName> </ViewSelectedBy> <!-- A task carries its log inline, fifteen lines of it, which is what makes the default output of a task list unreadable. The log is in the list view below. --> <TableControl> <TableHeaders> <TableColumnHeader> <Label>name</Label> <Width>44</Width> </TableColumnHeader> <TableColumnHeader> <Label>status</Label> <Width>11</Width> </TableColumnHeader> <TableColumnHeader> <Label>recurrent</Label> <Width>10</Width> </TableColumnHeader> <TableColumnHeader> <Label>interval</Label> <Width>12</Width> </TableColumnHeader> <TableColumnHeader> <Label>lastExecution</Label> <Width>17</Width> </TableColumnHeader> <TableColumnHeader> <Label>nextExecution</Label> </TableColumnHeader> </TableHeaders> <TableRowEntries> <TableRowEntry> <TableColumnItems> <TableColumnItem> <PropertyName>name</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>status</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>recurrent</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>executionInterval</PropertyName> </TableColumnItem> <TableColumnItem> <ScriptBlock>if ($null -ne $_.lastExecution) { ([datetime]$_.lastExecution).ToLocalTime().ToString('g') }</ScriptBlock> </TableColumnItem> <TableColumnItem> <ScriptBlock>if ($null -ne $_.nextExecution) { ([datetime]$_.nextExecution).ToLocalTime().ToString('g') }</ScriptBlock> </TableColumnItem> </TableColumnItems> </TableRowEntry> </TableRowEntries> </TableControl> </View> <View> <Name>psRadiantOne.Task.List</Name> <ViewSelectedBy> <TypeName>psRadiantOne.Task</TypeName> </ViewSelectedBy> <ListControl> <ListEntries> <ListEntry> <ListItems> <ListItem> <PropertyName>name</PropertyName> </ListItem> <ListItem> <PropertyName>id</PropertyName> </ListItem> <ListItem> <PropertyName>description</PropertyName> </ListItem> <ListItem> <PropertyName>status</PropertyName> </ListItem> <ListItem> <PropertyName>recurrent</PropertyName> </ListItem> <ListItem> <PropertyName>executionInterval</PropertyName> </ListItem> <ListItem> <Label>lastExecution</Label> <ScriptBlock>if ($null -ne $_.lastExecution) { ([datetime]$_.lastExecution).ToLocalTime().ToString('g') }</ScriptBlock> </ListItem> <ListItem> <Label>lastTermination</Label> <ScriptBlock>if ($null -ne $_.lastTermination) { ([datetime]$_.lastTermination).ToLocalTime().ToString('g') }</ScriptBlock> </ListItem> <ListItem> <Label>nextExecution</Label> <ScriptBlock>if ($null -ne $_.nextExecution) { ([datetime]$_.nextExecution).ToLocalTime().ToString('g') }</ScriptBlock> </ListItem> <ListItem> <PropertyName>dedicatedJvm</PropertyName> </ListItem> <ListItem> <PropertyName>jvmParameters</PropertyName> </ListItem> <ListItem> <Label>logs</Label> <ScriptBlock>$_.logs -join [System.Environment]::NewLine</ScriptBlock> </ListItem> </ListItems> </ListEntry> </ListEntries> </ListControl> </View> <View> <Name>psRadiantOne.Aci</Name> <ViewSelectedBy> <TypeName>psRadiantOne.Aci</TypeName> </ViewSelectedBy> <!-- aciId leads because it is what Get-R1Aci, Set-R1Aci and Remove-R1Aci take. --> <TableControl> <TableHeaders> <TableColumnHeader> <Label>aciId</Label> <Width>12</Width> <Alignment>Right</Alignment> </TableColumnHeader> <TableColumnHeader> <Label>name</Label> <Width>28</Width> </TableColumnHeader> <TableColumnHeader> <Label>permsType</Label> <Width>10</Width> </TableColumnHeader> <TableColumnHeader> <Label>targetScope</Label> <Width>12</Width> </TableColumnHeader> <TableColumnHeader> <Label>parsable</Label> <Width>9</Width> </TableColumnHeader> <TableColumnHeader> <Label>targetDn</Label> </TableColumnHeader> </TableHeaders> <TableRowEntries> <TableRowEntry> <TableColumnItems> <TableColumnItem> <PropertyName>aciId</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>name</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>permsType</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>targetScope</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>parsable</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>targetDn</PropertyName> </TableColumnItem> </TableColumnItems> </TableRowEntry> </TableRowEntries> </TableControl> </View> <View> <Name>psRadiantOne.Aci.List</Name> <ViewSelectedBy> <TypeName>psRadiantOne.Aci</TypeName> </ViewSelectedBy> <ListControl> <ListEntries> <ListEntry> <ListItems> <ListItem> <PropertyName>aciId</PropertyName> </ListItem> <ListItem> <PropertyName>name</PropertyName> </ListItem> <ListItem> <PropertyName>parsable</PropertyName> </ListItem> <ListItem> <PropertyName>permsType</PropertyName> </ListItem> <ListItem> <Label>selectedOperations</Label> <ScriptBlock>$_.selectedOperations -join ', '</ScriptBlock> </ListItem> <ListItem> <PropertyName>targetDn</PropertyName> </ListItem> <ListItem> <PropertyName>targetScope</PropertyName> </ListItem> <ListItem> <PropertyName>targetFilter</PropertyName> </ListItem> <ListItem> <PropertyName>includeTargetAttributes</PropertyName> </ListItem> <ListItem> <Label>targetAttributes</Label> <ScriptBlock>$_.targetAttributes -join ', '</ScriptBlock> </ListItem> <ListItem> <Label>applyUserDns</Label> <ScriptBlock>$_.applyUserDns -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>applyGroupDns</Label> <ScriptBlock>$_.applyGroupDns -join [System.Environment]::NewLine</ScriptBlock> </ListItem> <ListItem> <Label>applyIps</Label> <ScriptBlock>$_.applyIps -join ', '</ScriptBlock> </ListItem> <ListItem> <Label>daysOfWeek</Label> <ScriptBlock>$_.daysOfWeek -join ', '</ScriptBlock> </ListItem> <ListItem> <Label>timeRanges</Label> <ScriptBlock>($_.timeRanges | ForEach-Object { "$($_.start) to $($_.end)" }) -join ', '</ScriptBlock> </ListItem> <ListItem> <PropertyName>loaOperator</PropertyName> </ListItem> <ListItem> <PropertyName>loaLevel</PropertyName> </ListItem> <ListItem> <PropertyName>aciString</PropertyName> </ListItem> </ListItems> </ListEntry> </ListEntries> </ListControl> </View> <View> <Name>psRadiantOne.FeatureFlag</Name> <ViewSelectedBy> <TypeName>psRadiantOne.FeatureFlag</TypeName> </ViewSelectedBy> <TableControl> <TableHeaders> <TableColumnHeader> <Label>flagId</Label> <Width>38</Width> </TableColumnHeader> <TableColumnHeader> <Label>value</Label> <Width>7</Width> </TableColumnHeader> <TableColumnHeader> <Label>whoDidIt</Label> <Width>16</Width> </TableColumnHeader> <TableColumnHeader> <Label>description</Label> </TableColumnHeader> </TableHeaders> <TableRowEntries> <TableRowEntry> <TableColumnItems> <TableColumnItem> <PropertyName>flagId</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>value</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>whoDidIt</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>description</PropertyName> </TableColumnItem> </TableColumnItems> </TableRowEntry> </TableRowEntries> </TableControl> </View> <View> <Name>psRadiantOne.Directory</Name> <ViewSelectedBy> <TypeName>psRadiantOne.Directory</TypeName> </ViewSelectedBy> <!-- id is the path, and the path is what -path takes, so it leads. --> <TableControl> <TableHeaders> <TableColumnHeader> <Label>id</Label> <Width>40</Width> </TableColumnHeader> <TableColumnHeader> <Label>directory</Label> <Width>10</Width> </TableColumnHeader> <TableColumnHeader> <Label>size</Label> <Width>10</Width> <Alignment>Right</Alignment> </TableColumnHeader> <TableColumnHeader> <Label>lastModified</Label> <Width>17</Width> </TableColumnHeader> <TableColumnHeader> <Label>editable</Label> <Width>9</Width> </TableColumnHeader> <TableColumnHeader> <Label>uploadAllowed</Label> </TableColumnHeader> </TableHeaders> <TableRowEntries> <TableRowEntry> <TableColumnItems> <TableColumnItem> <PropertyName>id</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>directory</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>size</PropertyName> </TableColumnItem> <TableColumnItem> <ScriptBlock>if ($null -ne $_.lastModified) { ([datetime]$_.lastModified).ToLocalTime().ToString('g') }</ScriptBlock> </TableColumnItem> <TableColumnItem> <PropertyName>editable</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>uploadAllowed</PropertyName> </TableColumnItem> </TableColumnItems> </TableRowEntry> </TableRowEntries> </TableControl> </View> <View> <Name>psRadiantOne.DashboardLink</Name> <ViewSelectedBy> <TypeName>psRadiantOne.DashboardLink</TypeName> </ViewSelectedBy> <TableControl> <TableHeaders> <TableColumnHeader> <Label>id</Label> <Width>4</Width> <Alignment>Right</Alignment> </TableColumnHeader> <TableColumnHeader> <Label>textOverlay</Label> <Width>14</Width> </TableColumnHeader> <TableColumnHeader> <Label>title</Label> <Width>26</Width> </TableColumnHeader> <TableColumnHeader> <Label>linkPath</Label> </TableColumnHeader> </TableHeaders> <TableRowEntries> <TableRowEntry> <TableColumnItems> <TableColumnItem> <PropertyName>id</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>textOverlay</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>title</PropertyName> </TableColumnItem> <TableColumnItem> <PropertyName>linkPath</PropertyName> </TableColumnItem> </TableColumnItems> </TableRowEntry> </TableRowEntries> </TableControl> </View> <View> <Name>psRadiantOne.DashboardItem</Name> <ViewSelectedBy> <TypeName>psRadiantOne.DashboardItem</TypeName> </ViewSelectedBy> <TableControl> <TableHeaders> <TableColumnHeader> <Label>type</Label> <Width>18</Width> </TableColumnHeader> <TableColumnHeader> <Label>layout</Label> <Width>16</Width> </TableColumnHeader> <TableColumnHeader> <Label>widgetUrl</Label> </TableColumnHeader> </TableHeaders> <TableRowEntries> <TableRowEntry> <TableColumnItems> <TableColumnItem> <PropertyName>type</PropertyName> </TableColumnItem> <TableColumnItem> <ScriptBlock>if ($null -ne $_.layout) { "$($_.layout.x),$($_.layout.y) $($_.layout.w)x$($_.layout.h)" }</ScriptBlock> </TableColumnItem> <TableColumnItem> <PropertyName>widgetUrl</PropertyName> </TableColumnItem> </TableColumnItems> </TableRowEntry> </TableRowEntries> </TableControl> </View> </ViewDefinitions> </Configuration> |