From d078052f97997304e37c4493cc5cd21e828796bd Mon Sep 17 00:00:00 2001 From: Pat Altimore Date: Tue, 1 Feb 2022 14:41:09 -0800 Subject: [PATCH 01/98] Add missing cmdlets and parameters --- .../Add-CauClusterRole.md | 245 +++++++++++++----- .../ClusterAwareUpdating.md | 8 +- .../Get-CauDeviceInfoForFeatureUpdates.md | 105 ++++++++ .../clusterawareupdating/Invoke-CauRun.md | 137 +++++++++- .../clusterawareupdating/Invoke-CauScan.md | 39 ++- .../Save-CauDebugTrace.md | 17 +- .../Set-CauClusterRole.md | 133 +++++++++- 7 files changed, 607 insertions(+), 77 deletions(-) create mode 100644 docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index 0e8ae12be0..46b4a7b34e 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -18,29 +18,37 @@ Adds the CAU clustered role that provides the self-updating functionality to the ### MonthlyDayOfWeek (Default) ``` -Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] - [-StartDate ] [-DaysOfWeek ] [-WeeksOfMonth ] - [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] - [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] - [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] - [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] - [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] - [-SuspendClusterNodeTimeoutMinutes ] [[-ClusterName] ] [[-Credential] ] - [-Force] [-WhatIf] [-Confirm] [] +Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-StartDate ] + [-DaysOfWeek ] [-WeeksOfMonth ] [-CauPluginName ] + [-CauPluginArguments ] [-MaxFailedNodes ] [-MaxRetriesPerNode ] + [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] [-ConfigurationName ] + [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] + [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] + [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] + [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] + [] ``` ### Weekly ``` -Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] - [-StartDate ] [-DaysOfWeek ] [-IntervalWeeks ] - [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] - [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] - [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] - [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] - [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] - [-SuspendClusterNodeTimeoutMinutes ] [[-ClusterName] ] [[-Credential] ] - [-Force] [-WhatIf] [-Confirm] [] +Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-StartDate ] + [-DaysOfWeek ] [-IntervalWeeks ] [-CauPluginName ] + [-CauPluginArguments ] [-MaxFailedNodes ] [-MaxRetriesPerNode ] + [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] [-ConfigurationName ] + [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] + [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] + [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] + [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] + [] +``` + +### DefaultParamSet +``` +Add-CauClusterRole [-AttemptSoftReboot] [[-ClusterName] ] [[-Credential] ] [-Force] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -146,6 +154,24 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ## PARAMETERS +### -AttemptSoftReboot +Indicates that the CAU clustered role attempts a Kernel Soft Reboot (KSR) for the failover cluster. + +KSR bypasses BIOS/firmware initialization. +You can only use KSR for updates that do not require a BIOS/firmware initialization. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -CauPluginArguments Specifies an array of name=value pairs (arguments) for each updating plug-in to use. @@ -195,8 +221,8 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: ```yaml Type: Hashtable[] -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -216,8 +242,8 @@ Server Update Services (WSUS) server. For more information about how plug-ins wo ```yaml Type: String[] -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -254,8 +280,8 @@ built into Windows PowerShell® is used. ```yaml Type: String -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -313,8 +339,8 @@ The acceptable values for this parameter are: ```yaml Type: Weekdays -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Accepted values: None, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday Required: False @@ -338,8 +364,8 @@ conflict with Group Policy settings that are configured for Windows Firewall. ```yaml Type: SwitchParameter -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -364,8 +390,8 @@ The default value is Immediate. ```yaml Type: FailbackType -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Accepted values: NoFailback, Immediate, Policy Required: False @@ -391,14 +417,66 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ForcePauseAndDrain +Indicates that the CAU cluster role forces cluster nodes to pause and drain roles. + +A forced drain moves the roles off of the draining node even if the group cannot move. +A group might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseDrainAndReboot +Indicates that the CAU cluster role forces cluster nodes to pause, drain roles, and restart. + +A forced drain moves the roles off of the draining node even if the group cannot move. +A group might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseNoDrain +Indicates that the CAU cluster role forces cluster nodes to pause. +The nodes are not drained. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -GroupName Specifies the NetBIOS name of the resource group for the CAU clustered role. ```yaml Type: String -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -434,8 +512,8 @@ The default for most clusters is approximately one-third of the number of nodes. ```yaml Type: Int32 -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -453,8 +531,8 @@ The maximum is 64 and the default is 3. ```yaml Type: Int32 -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -469,7 +547,7 @@ Specifies an array of cluster node names in the order that they should be update ```yaml Type: String[] -Parameter Sets: (All) +Parameter Sets: MonthlyDayOfWeek, Weekly Aliases: Required: False @@ -479,6 +557,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -OsRollingUpgrade +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -PostUpdateScript Specifies the path and file name for a Windows PowerShell script to run on each node after updating @@ -489,8 +582,8 @@ available network share, to ensure that the script is always accessible to all t ```yaml Type: String -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -510,8 +603,8 @@ pre-update script fails, the node isn't updated. ```yaml Type: String -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -527,8 +620,8 @@ complete within this time, then the Updating Run on that node will be marked as ```yaml Type: Int32 -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -544,8 +637,8 @@ begins. ```yaml Type: SwitchParameter -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -567,8 +660,8 @@ If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -589,7 +682,7 @@ If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: (All) +Parameter Sets: MonthlyDayOfWeek, Weekly Aliases: Required: False @@ -599,14 +692,46 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -SiteAwareUpdatingOrder +Specifies the order in which the CAU cluster role updates cluster nodes. + +By default, CAU selects the order of nodes to update based on the level of activity. + +```yaml +Type: String[] +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipUpdateChecks +Indicates that the CAU cluster role skips update checks. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -StartDate Specifies the earliest date on which the Updating Run can be triggered. ```yaml Type: DateTime -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -627,8 +752,8 @@ performing updates must be complete within this time limit. ```yaml Type: TimeSpan -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -646,8 +771,8 @@ a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -670,8 +795,8 @@ for this value for every node in the cluster in the worst case. ```yaml Type: Int32 -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -691,8 +816,8 @@ computer object in Active Directory. ```yaml Type: String -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named @@ -709,8 +834,8 @@ regardless of the time taken by the Updating Run. ```yaml Type: TimeSpan -Parameter Sets: (All) -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: Required: False Position: Named diff --git a/docset/winserver2022-ps/clusterawareupdating/ClusterAwareUpdating.md b/docset/winserver2022-ps/clusterawareupdating/ClusterAwareUpdating.md index 365bc997f0..d0dc4a2f3a 100644 --- a/docset/winserver2022-ps/clusterawareupdating/ClusterAwareUpdating.md +++ b/docset/winserver2022-ps/clusterawareupdating/ClusterAwareUpdating.md @@ -31,9 +31,11 @@ Exports one or more Updating Run reports into an HTML or CSV-formatted document. ### [Get-CauClusterRole](./Get-CauClusterRole.md) Gets configuration properties of the CAU clustered role on the specified cluster. -### [Get-CauPlugin](./Get-CauPlugin.md) -Gets information about one or more software updating plug-ins that are registered on the local -computer. +### [Get-CauDeviceInfoForFeatureUpdates](Get-CauDeviceInfoForFeatureUpdates.md) +Gets device information for feature updates to use with CAU. + +### [Get-CauPlugin](Get-CauPlugin.md) +Gets information about one or more software updating plug-ins that are registered on the local computer. ### [Get-CauReport](./Get-CauReport.md) Gets the Updating Run reports for all known Updating Runs, or all Updating Runs that match the diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md new file mode 100644 index 0000000000..4ca8b96ff9 --- /dev/null +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md @@ -0,0 +1,105 @@ +--- +description: The Get-CauDeviceInfoForFeatureUpdates cmdlet gets device information for feature updates to use with Cluster-Aware Updating (CAU). +external help file: ClusterAwareUpdating.dll-Help.xml +Module Name: ClusterAwareUpdating +ms.date: 09/17/2021 +online version: https://docs.microsoft.com/powershell/module/clusterawareupdating/get-caudeviceinfoforfeatureupdates?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-CauDeviceInfoForFeatureUpdates +--- + +# Get-CauDeviceInfoForFeatureUpdates + +## SYNOPSIS +Gets device information for feature updates to use with CAU. + +## SYNTAX + +``` +Get-CauDeviceInfoForFeatureUpdates [[-ClusterName] ] [-Credential ] + -PathToDirectory [] +``` + +## DESCRIPTION +The **Get-CauDeviceInfoForFeatureUpdates** cmdlet gets device information for feature updates to use with Cluster-Aware Updating (CAU). + +## EXAMPLES + +### Example 1: Get device information +```powershell +Get-CauDeviceInfoForFeatureUpdates -ClusterName "CONTOSO-FC1" -PathToDirectory "C:\temp\contoso-device-info" +``` + +This example gets device information for CAU for the specified cluster. + +## PARAMETERS + +### -ClusterName +Specifies the name of the cluster fow which to get device information. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential +Specifies the administrative credentials for the target cluster. + +```yaml +Type: PSCredential +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PathToDirectory +Specifies a directory. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.String + +### Microsoft.ClusterAwareUpdating.ActivityIdMap + +## NOTES + +## RELATED LINKS + +[Get-CauClusterRole](Get-CauClusterRole.md) + +[Get-CauPlugin](Get-CauPlugin.md) + +[Get-CauReport](Get-CauReport.md) + +[Get-CauRun](Get-CauRun.md) diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md index 972c4c784d..f8347ff06c 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md @@ -20,12 +20,20 @@ Performs a scan of cluster nodes for applicable updates and installs those updat ``` Invoke-CauRun [-MaxFailedNodes ] [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] [-ConfigurationName ] - [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] - [-RebootTimeoutMinutes ] [-SeparateReboots] [-EnableFirewallRules] - [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-Force] [[-ClusterName] -] [[-CauPluginName] ] [[-Credential] ] - [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] [-WhatIf] - [-Confirm] [] + [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] + [-SeparateReboots] [-EnableFirewallRules] [-FailbackMode ] + [-SuspendClusterNodeTimeoutMinutes ] [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] [[-ClusterName] ] + [[-CauPluginName] ] [[-Credential] ] [-CauPluginArguments ] + [-RunPluginsSerially] [-StopOnPluginFailure] [-OsRollingUpgrade] [-AttemptSoftReboot] [-WhatIf] [-Confirm] + [] +``` + +### RecoverParamSet +``` +Invoke-CauRun [-ForceRecovery] [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] + [-SkipUpdateChecks] [[-ClusterName] ] [[-Credential] ] [-WhatIf] [-Confirm] + [] ``` ### RecoverParamSet @@ -123,6 +131,24 @@ recovery is performed without confirmation prompts. ## PARAMETERS +### -AttemptSoftReboot +Indicates that command attempts a Kernel Soft Reboot (KSR) for the failover cluster. + +KSR bypasses BIOS/firmware initialization. +You can only use KSR for updates that do not require a BIOS/firmware initialization. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -CauPluginArguments Specifies a set of name=value pairs for each updating plug-in to use. @@ -336,6 +362,58 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ForcePauseAndDrain +Indicates that the command forces cluster nodes to pause and drain roles. + +A forced drain moves the roles off of the draining node even if the group cannot move. +A group might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseDrainAndReboot +Indicates that the command forces cluster nodes to pause, drain roles, and restart. + +A forced drain moves the roles off of the draining node even if the group cannot move. +A group might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseNoDrain +Indicates that the command forces cluster nodes to pause. +The nodes are not drained. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -ForceRecovery Indicates that the cmdlet recovers from a previous failed run that left the cluster in a Locked @@ -399,6 +477,21 @@ Specifies an array of cluster nodes names in the order that they are updated. ```yaml Type: String[] Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -OsRollingUpgrade +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet Aliases: Required: False @@ -527,6 +620,38 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -SiteAwareUpdatingOrder +Specifies the order in which the command updates cluster nodes. + +By default, CAU selects the order of nodes to update based on the level of activity. + +```yaml +Type: String[] +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipUpdateChecks +Indicates that the command skips update checks. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -StopAfter Specifies the time in minutes after which the updating run is canceled if it hasn't completed. The diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md index 13a4fda860..d4b1857fb9 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md @@ -17,9 +17,9 @@ updates that are applied to each node in a specified cluster. ## SYNTAX ``` -Invoke-CauScan [[-ClusterName] ] [[-CauPluginName] ] [[-Credential] -] [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] - [] +Invoke-CauScan [[-ClusterName] ] [[-CauPluginName] ] [[-Credential] ] + [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] [-OsRollingUpgrade] + [-AttemptSoftReboot] [] ``` ## DESCRIPTION @@ -78,6 +78,24 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ## PARAMETERS +### -AttemptSoftReboot +Indicates that command assumes a Kernel Soft Reboot (KSR) for the failover cluster. + +KSR bypasses BIOS/firmware initialization. +You can only use KSR for updates that do not require a BIOS/firmware initialization. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -CauPluginArguments Specifies a set of name=value pairs for each updating plug-in to use. @@ -195,6 +213,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -OsRollingUpgrade +Indicates that the CAU cluster role scans for upgrades to the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RunPluginsSerially Indicates that CAU scans each cluster node for applicable updates and stages the updates for each diff --git a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md index 9b6af814d9..c9c79bc50a 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md +++ b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md @@ -17,7 +17,7 @@ Saves CAU debug tracing information to a local zip file. ``` Save-CauDebugTrace [[-ClusterName] ] [[-FilePath] ] [-Credential ] - [-RunId ] [-Force] [] + [-RunId ] [-Force] [-FeatureUpdateLogs ] [] ``` ## DESCRIPTION @@ -68,6 +68,21 @@ Specifies the administrative credentials for the target cluster. ```yaml Type: PSCredential Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -FeatureUpdateLogs +Specifies feature update logs. + +```yaml +Type: FeatureUpdateLogs +Parameter Sets: (All) Aliases: Required: False diff --git a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md index 9a90b2dade..2504f7d8b7 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md @@ -25,8 +25,9 @@ Set-CauClusterRole [-UseDefault] [-StartDate ] [-DaysOfWeek [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] - [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] - [] + [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] + [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ### UpdateNow @@ -53,8 +54,15 @@ Set-CauClusterRole [-UseDefault] [-StartDate ] [-DaysOfWeek [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] - [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] - [] + [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] + [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] +``` + +### DefaultParamSet +``` +Set-CauClusterRole [-AttemptSoftReboot] [[-ClusterName] ] [[-Credential] ] [-Force] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -166,6 +174,24 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ## PARAMETERS +### -AttemptSoftReboot +Indicates that the CAU clustered role attempts a Kernel Soft Reboot (KSR) for the failover cluster. + +KSR bypasses BIOS/firmware initialization. +You can only use KSR for updates that do not require a BIOS/firmware initialization. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -CauPluginArguments Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. @@ -409,6 +435,58 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ForcePauseAndDrain +Indicates that the CAU cluster role forces cluster nodes to pause and drain roles. + +A forced drain moves the roles off of the draining node even if the group cannot move. +A group might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseDrainAndReboot +Indicates that the CAU cluster role forces cluster nodes to pause, drain roles, and restart. + +A forced drain moves the roles off of the draining node even if the group cannot move. +A group might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseNoDrain +Indicates that the CAU cluster role forces cluster nodes to pause. +The nodes are not drained. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -IntervalWeeks Specifies the interval between weeks when the task will be triggered. @@ -470,6 +548,21 @@ Specifies an array of cluster node names in the order that they should be update ```yaml Type: String[] Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -OsRollingUpgrade +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly Aliases: Required: False @@ -599,6 +692,38 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -SiteAwareUpdatingOrder +Specifies the order in which the CAU cluster role updates cluster nodes. + +By default, CAU selects the order of nodes to update based on the level of activity. + +```yaml +Type: String[] +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipUpdateChecks +Indicates that the CAU cluster role skips update checks. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -StartDate Specifies the earliest date on which the updating run can be triggered. From 400e672b42ac47c8db419db325555af3b3f8e063 Mon Sep 17 00:00:00 2001 From: Pat Altimore Date: Tue, 1 Feb 2022 14:42:17 -0800 Subject: [PATCH 02/98] Remove special character --- .../clusterawareupdating/Add-CauClusterRole.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index 46b4a7b34e..bea2fb8870 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -271,12 +271,17 @@ Accept wildcard characters: False ``` ### -ConfigurationName +<<<<<<< HEAD Specifies the Windows PowerShell session configuration that defines the session in which scripts, specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and can limit the cmdlets that are available to be run. If either a pre-update or post-update script is specified but a configuration name isn't specified, then the default session configuration that is built into Windows PowerShell® is used. +======= +Specifies the Windows PowerShell session configuration that defines the session in which scripts, specified by the *PreUpdateScript* and *PostUpdateScript* parameters, and cmdlets are run, and can limit the cmdlets that are available to be run. +If either a pre-update or post-update script is specified but a configuration name is not specified, then the default session configuration that is built into Windows PowerShell® is used. +>>>>>>> f65c35cc7 (Remove special character) ```yaml Type: String From 560610689253f33f5e841bd7cc76a08e1ec5ad74 Mon Sep 17 00:00:00 2001 From: robinharwood <19212983+robinharwood@users.noreply.github.com> Date: Tue, 21 Jun 2022 23:35:35 +0100 Subject: [PATCH 03/98] Build validation fixes and additional parameters --- .../Add-CauClusterRole.md | 59 ++++++-- .../clusterawareupdating/Invoke-CauRun.md | 57 +++++--- .../clusterawareupdating/Invoke-CauScan.md | 26 +++- .../Save-CauDebugTrace.md | 4 +- .../Set-CauClusterRole.md | 129 ++++++++++++------ 5 files changed, 198 insertions(+), 77 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index bea2fb8870..a8eb576a6b 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -26,8 +26,8 @@ Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [ [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] - [-OsRollingUpgrade] [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] - [] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ### Weekly @@ -41,14 +41,21 @@ Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [ [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] - [-OsRollingUpgrade] [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] - [] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` -### DefaultParamSet +### Once ``` -Add-CauClusterRole [-AttemptSoftReboot] [[-ClusterName] ] [[-Credential] ] [-Force] - [-WhatIf] [-Confirm] [] +Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-RunOnce] + [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] + [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] + [-ConfigurationName ] [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] + [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] + [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] + [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] + [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] + [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -271,17 +278,12 @@ Accept wildcard characters: False ``` ### -ConfigurationName -<<<<<<< HEAD Specifies the Windows PowerShell session configuration that defines the session in which scripts, specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and can limit the cmdlets that are available to be run. If either a pre-update or post-update script is specified but a configuration name isn't specified, then the default session configuration that is -built into Windows PowerShell® is used. -======= -Specifies the Windows PowerShell session configuration that defines the session in which scripts, specified by the *PreUpdateScript* and *PostUpdateScript* parameters, and cmdlets are run, and can limit the cmdlets that are available to be run. -If either a pre-update or post-update script is specified but a configuration name is not specified, then the default session configuration that is built into Windows PowerShell® is used. ->>>>>>> f65c35cc7 (Remove special character) +built into Windows PowerShell is used. ```yaml Type: String @@ -618,6 +620,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RebootMode +{{ Fill RebootMode Description }} + +```yaml +Type: RebootType +Parameter Sets: (All) +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RebootTimeoutMinutes Specifies the time in minutes that CAU allows for the restarting of a node. If the restart doesn't @@ -652,6 +670,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RunOnce +{{ Fill RunOnce Description }} + +```yaml +Type: SwitchParameter +Parameter Sets: Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RunPluginsSerially Indicates that the cmdlet CAU scans each cluster node for applicable updates and stages the updates diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md index f8347ff06c..9010e1ee02 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md @@ -23,24 +23,17 @@ Invoke-CauRun [-MaxFailedNodes ] [-MaxRetriesPerNode ] [-NodeOrder [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] - [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] [[-ClusterName] ] - [[-CauPluginName] ] [[-Credential] ] [-CauPluginArguments ] - [-RunPluginsSerially] [-StopOnPluginFailure] [-OsRollingUpgrade] [-AttemptSoftReboot] [-WhatIf] [-Confirm] - [] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-ForceSelfUpdate] [-SiteAwareUpdatingOrder ] + [[-ClusterName] ] [[-CauPluginName] ] [[-Credential] ] + [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] [-OsRollingUpgrade] + [-AttemptSoftReboot] [-RebootMode ] [-WhatIf] [-Confirm] [] ``` ### RecoverParamSet ``` -Invoke-CauRun [-ForceRecovery] [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] - [-SkipUpdateChecks] [[-ClusterName] ] [[-Credential] ] [-WhatIf] [-Confirm] - [] -``` - -### RecoverParamSet - -``` -Invoke-CauRun [-ForceRecovery] [-Force] [[-ClusterName] ] [[-Credential] ] - [-WhatIf] [-Confirm] [] +Invoke-CauRun [-ForceRecovery] [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-ForceSelfUpdate] [[-ClusterName] ] + [[-Credential] ] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -164,8 +157,9 @@ For instance: For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following arguments are optional: -- **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. -If not specified, the default value is **'False'**. +- **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates + will be applied in addition to important updates on each node. If not specified, the default value + is **'False'**. -- A standard Windows Update Agent query string that specifies criteria used by the Windows Update Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the @@ -434,6 +428,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ForceSelfUpdate +{{ Fill ForceSelfUpdate Description }} + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -MaxFailedNodes Specifies the maximum number of nodes on which updating can fail. @@ -542,6 +551,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RebootMode +{{ Fill RebootMode Description }} + +```yaml +Type: RebootType +Parameter Sets: DefaultParamSet +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RebootTimeoutMinutes Specifies the time in minutes that CAU allows for the restarting of a node. If the restart doesn't diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md index d4b1857fb9..f977753073 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md @@ -18,8 +18,8 @@ updates that are applied to each node in a specified cluster. ``` Invoke-CauScan [[-ClusterName] ] [[-CauPluginName] ] [[-Credential] ] - [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] [-OsRollingUpgrade] - [-AttemptSoftReboot] [] + [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [] ``` ## DESCRIPTION @@ -228,6 +228,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RebootMode +{{ Fill RebootMode Description }} + +```yaml +Type: RebootType +Parameter Sets: (All) +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RunPluginsSerially Indicates that CAU scans each cluster node for applicable updates and stages the updates for each @@ -284,7 +300,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### Microsoft.ClusterAwareUpdating.CauUpdateInfo +### Microsoft.ClusterAwareUpdating.UpdateInfo + +### Microsoft.ClusterAwareUpdating.ActivityIdMap + +### Microsoft.ClusterAwareUpdating.UpgradeSetupInfo ## NOTES diff --git a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md index c9c79bc50a..247e5e2f6c 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md +++ b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md @@ -154,7 +154,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### None +### Microsoft.ClusterAwareUpdating.ActivityIdMap + +### System.IO.FileInfo ## NOTES diff --git a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md index 2504f7d8b7..5e909e554a 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md @@ -26,8 +26,9 @@ Set-CauClusterRole [-UseDefault] [-StartDate ] [-DaysOfWeek [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] - [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [[-ClusterName] ] - [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] + [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [-AttemptSoftReboot] + [-RebootMode ] [[-ClusterName] ] [[-Credential] ] [-Force] + [-WhatIf] [-Confirm] [] ``` ### UpdateNow @@ -55,14 +56,23 @@ Set-CauClusterRole [-UseDefault] [-StartDate ] [-DaysOfWeek [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] - [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [[-ClusterName] ] - [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] + [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [-AttemptSoftReboot] + [-RebootMode ] [[-ClusterName] ] [[-Credential] ] [-Force] + [-WhatIf] [-Confirm] [] ``` -### DefaultParamSet +### Once ``` -Set-CauClusterRole [-AttemptSoftReboot] [[-ClusterName] ] [[-Credential] ] [-Force] - [-WhatIf] [-Confirm] [] +Set-CauClusterRole [-UseDefault] [-RunOnce] [-CauPluginName ] + [-CauPluginArguments ] [-MaxFailedNodes ] [-MaxRetriesPerNode ] + [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] + [-ConfigurationName ] [-RequireAllNodesOnline] [-WarnAfter ] + [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] + [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] + [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -385,8 +395,8 @@ settings that are configured for Windows Firewall. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -408,8 +418,8 @@ another node. The acceptable values for this parameter are: ```yaml Type: FailbackType -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Accepted values: NoFailback, Immediate, Policy Required: False @@ -443,7 +453,7 @@ A group might not be able to move because no other node can host the group or th ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -461,7 +471,7 @@ A group might not be able to move because no other node can host the group or th ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -477,7 +487,7 @@ The nodes are not drained. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -514,8 +524,8 @@ The default for most clusters is approximately one-third of the number of nodes. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -531,8 +541,8 @@ post-update scripts, is retried per node. The maximum is 64and the default is 3. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -547,7 +557,7 @@ Specifies an array of cluster node names in the order that they should be update ```yaml Type: String[] -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -562,8 +572,8 @@ Indicates that the CAU cluster role upgrades the operating system of the cluster ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -582,8 +592,8 @@ the cluster nodes. ```yaml Type: String -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -612,6 +622,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RebootMode +{{ Fill RebootMode Description }} + +```yaml +Type: RebootType +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RebootTimeoutMinutes Specifies the time in minutes that CAU will allow for the restarting of a node. If the restart doesn't @@ -619,8 +645,8 @@ complete within this time, then the updating run on that node is marked as faile ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -635,8 +661,23 @@ Indicates that all cluster nodes must be online and reachable before updating be ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RunOnce +{{ Fill RunOnce Description }} + +```yaml +Type: SwitchParameter +Parameter Sets: Once +Aliases: Required: False Position: Named @@ -660,8 +701,8 @@ single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -682,8 +723,8 @@ If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -699,7 +740,7 @@ By default, CAU selects the order of nodes to update based on the level of activ ```yaml Type: String[] -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -714,7 +755,7 @@ Indicates that the CAU cluster role skips update checks. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -752,8 +793,8 @@ performing updates must be complete within this time limit. ```yaml Type: TimeSpan -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -773,8 +814,8 @@ If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -798,8 +839,8 @@ for this value for every node in the cluster in the worst case. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -831,8 +872,8 @@ Indicates that default values are used for all parameters that don't have specif ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, UseDefault, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, UseDefault, Weekly, Once +Aliases: Required: False Position: Named @@ -849,8 +890,8 @@ of the time taken by the updating run. ```yaml Type: TimeSpan -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: Required: False Position: Named @@ -906,7 +947,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### None +### System.Object ## NOTES From 6e404dedc90f97ec92cd1ae63ef9a9e139791bf2 Mon Sep 17 00:00:00 2001 From: robinharwood <19212983+robinharwood@users.noreply.github.com> Date: Wed, 6 Jul 2022 16:45:16 +0100 Subject: [PATCH 04/98] Updated formatting --- .../Add-CauClusterRole.md | 40 +++++++++---------- 1 file changed, 19 insertions(+), 21 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index a8eb576a6b..567ed4121b 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -11,7 +11,7 @@ title: Add-CauClusterRole # Add-CauClusterRole ## SYNOPSIS -Adds the CAU clustered role that provides the self-updating functionality to the specified cluster. +Adds the Cluster Aware Updating (CAU) clustered role that provides the self-updating functionality to the specified cluster. ## SYNTAX @@ -72,7 +72,6 @@ Mode (HTTP-In) firewall exception is enabled on each node. ## EXAMPLES ### Example 1: Add a CAU clustered role on the specified cluster at a specific interval - ```powershell $parameters = @{ ClusterName = 'CONTOSO-FC1' @@ -164,8 +163,8 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ### -AttemptSoftReboot Indicates that the CAU clustered role attempts a Kernel Soft Reboot (KSR) for the failover cluster. -KSR bypasses BIOS/firmware initialization. -You can only use KSR for updates that do not require a BIOS/firmware initialization. +KSR bypasses BIOS/firmware initialization. You can only use KSR for updates that do not require a +BIOS/firmware initialization. ```yaml Type: SwitchParameter @@ -245,7 +244,7 @@ values separated with commas. The default is the Microsoft.WindowsUpdatePlugin p coordinates the Windows Update Agent software resident on each cluster node, the same software that is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with CAU, see -[How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +[How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: String[] @@ -280,9 +279,9 @@ Accept wildcard characters: False ### -ConfigurationName Specifies the Windows PowerShell session configuration that defines the session in which scripts, -specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and can -limit the cmdlets that are available to be run. If either a pre-update or post-update script is -specified but a configuration name isn't specified, then the default session configuration that is +specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and +can limit the cmdlets that are available to be run. If either a pre-update or post-update script is +specified but a configuration name is not specified, then the default session configuration that is built into Windows PowerShell is used. ```yaml @@ -336,13 +335,13 @@ Multiple values can be specified either separated with commas or as a hexadecima The acceptable values for this parameter are: -- **Sunday:** (0x01) -- **Monday:** (0x02) -- **Tuesday:** (0x04) -- **Wednesday:** (0x08) -- **Thursday:** (0x10) -- **Friday:** (0x20) -- **Saturday:** (0x40) +- `Sunday` or 0x01 +- `Monday` or 0x02 +- `Tuesday` or 0x04 +- `Wednesday` or 0x08 +- `Thursday` or 0x10 +- `Friday` or 0x20 +- `Saturday` or 0x40 ```yaml Type: Weekdays @@ -389,11 +388,11 @@ another node. The acceptable values for this parameter are: -- NoFailback -- Immediate -- Policy +- `NoFailback` +- `Immediate` +- `Policy` -The default value is Immediate. +The default value is `Immediate`. ```yaml Type: FailbackType @@ -820,7 +819,6 @@ Accept wildcard characters: False ``` ### -SuspendClusterNodeTimeoutMinutes - Specifies the maximum amount of time CAU should wait for the `Suspend-ClusterNode` cmdlet to succeed if the underlying clustered space is in degraded condition. @@ -847,7 +845,7 @@ Accept wildcard characters: False Specifies the name of a pre-staged virtual computer object that is used by the CAU clustered role. For more information, see -[Steps to create computer objects in Active Directory](https://go.microsoft.com/fwlink/p/?LinkId=237624). +[Steps to create computer objects in Active Directory](/windows-server/failover-clustering/configure-ad-accounts). If not specified, then a virtual computer object is created using a generated name. Generating a name automatically requires the cluster name object to have permissions to create the virtual computer object in Active Directory. From f20a65cbc186cbc7cb8d79b8f2dd1477038232b6 Mon Sep 17 00:00:00 2001 From: robinharwood <19212983+robinharwood@users.noreply.github.com> Date: Wed, 13 Jul 2022 12:00:24 +0100 Subject: [PATCH 05/98] Formatting and metadata updates --- .../Add-CauClusterRole.md | 61 ++++++++++--------- .../Disable-CauClusterRole.md | 1 - .../Enable-CauClusterRole.md | 5 +- .../clusterawareupdating/Export-CauReport.md | 1 - .../Get-CauClusterRole.md | 1 - .../Get-CauDeviceInfoForFeatureUpdates.md | 16 ++++- .../clusterawareupdating/Get-CauPlugin.md | 1 - .../clusterawareupdating/Get-CauReport.md | 23 +++---- .../clusterawareupdating/Get-CauRun.md | 1 - .../clusterawareupdating/Invoke-CauRun.md | 11 ++-- .../clusterawareupdating/Invoke-CauScan.md | 8 ++- .../Register-CauPlugin.md | 4 +- .../Remove-CauClusterRole.md | 1 - .../Save-CauDebugTrace.md | 1 - .../Set-CauClusterRole.md | 28 ++++----- .../clusterawareupdating/Stop-CauRun.md | 1 - .../clusterawareupdating/Test-CauSetup.md | 1 - .../Unregister-CauPlugin.md | 1 - 18 files changed, 85 insertions(+), 81 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index 567ed4121b..9f77043412 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -18,44 +18,48 @@ Adds the Cluster Aware Updating (CAU) clustered role that provides the self-upda ### MonthlyDayOfWeek (Default) ``` -Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-StartDate ] - [-DaysOfWeek ] [-WeeksOfMonth ] [-CauPluginName ] - [-CauPluginArguments ] [-MaxFailedNodes ] [-MaxRetriesPerNode ] - [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] [-ConfigurationName ] - [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] - [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] - [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] - [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] - [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] - [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] +Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] +[-StartDate ] [-DaysOfWeek ] [-WeeksOfMonth ] +[-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] +[-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] +[-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] +[-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] +[-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] +[-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] +[-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] +[-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] +[[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ### Weekly ``` -Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-StartDate ] - [-DaysOfWeek ] [-IntervalWeeks ] [-CauPluginName ] - [-CauPluginArguments ] [-MaxFailedNodes ] [-MaxRetriesPerNode ] - [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] [-ConfigurationName ] - [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] - [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] - [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] - [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] - [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] - [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] +Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] +[-StartDate ] [-DaysOfWeek ] [-IntervalWeeks ] +[-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] +[-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] +[-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] +[-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] +[-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] +[-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] +[-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] +[-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] +[[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ### Once + ``` Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-RunOnce] - [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] - [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] - [-ConfigurationName ] [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] - [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] - [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] - [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] - [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] - [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] +[-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] +[-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] +[-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] +[-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] +[-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] +[-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] +[-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] +[-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] +[[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -72,6 +76,7 @@ Mode (HTTP-In) firewall exception is enabled on each node. ## EXAMPLES ### Example 1: Add a CAU clustered role on the specified cluster at a specific interval + ```powershell $parameters = @{ ClusterName = 'CONTOSO-FC1' diff --git a/docset/winserver2022-ps/clusterawareupdating/Disable-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Disable-CauClusterRole.md index 54013402ce..b45def11c8 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Disable-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Disable-CauClusterRole.md @@ -124,7 +124,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md index c4cb36bb1b..3149e9f77a 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md @@ -35,8 +35,8 @@ Enable-CauClusterRole -ClusterName "CONTOSO-FC1" -Force ``` This command enables the CAU clustered role on the CONTOSO-FC1 cluster to begin performing Updating -Runs. The cmdlet changes the status of the CAU clustered role to Running. Because the command -specified the **Force** parameter, the cmdlet runs without displaying confirmation prompts. +Runs. The cmdlet changes the status of the CAU clustered role to Running. The cmdlet runs without +displaying confirmation prompts, as the **Force** parameter was used. ## PARAMETERS @@ -124,7 +124,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Export-CauReport.md b/docset/winserver2022-ps/clusterawareupdating/Export-CauReport.md index 7a4d0b3068..e1322574c3 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Export-CauReport.md +++ b/docset/winserver2022-ps/clusterawareupdating/Export-CauReport.md @@ -179,7 +179,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauClusterRole.md index f65df26cff..d1153cda3e 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauClusterRole.md @@ -71,7 +71,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md index 4ca8b96ff9..7673d5a738 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md @@ -26,11 +26,18 @@ The **Get-CauDeviceInfoForFeatureUpdates** cmdlet gets device information for fe ## EXAMPLES ### Example 1: Get device information + ```powershell -Get-CauDeviceInfoForFeatureUpdates -ClusterName "CONTOSO-FC1" -PathToDirectory "C:\temp\contoso-device-info" +$Parameters = @{ + ClusterName = 'CONTOSO-FC1' + PathToDirectory = 'C:\temp\contoso-device-info' +} +Get-CauDeviceInfoForFeatureUpdates $Parameters ``` -This example gets device information for CAU for the specified cluster. +This example gets device information for CAU for the specified cluster. This example uses +splatting to pass parameter values from the `$Parameters` variable to the command. Learn more about +[Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). ## PARAMETERS @@ -80,7 +87,10 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). ## INPUTS diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauPlugin.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauPlugin.md index f5c80a68db..e6fd6b5f4e 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauPlugin.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauPlugin.md @@ -63,7 +63,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauReport.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauReport.md index 7596f4fc77..a9c976a799 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauReport.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauReport.md @@ -19,38 +19,40 @@ specified dates or other specified parameters. ### AllParamsSet (Default) ``` -Get-CauReport [[-ClusterName] ] [-Detailed] [-Credential ] [] +Get-CauReport [[-ClusterName] ] [-Detailed] [-Credential ] +[] ``` ### RangeParamSet ``` -Get-CauReport [[-ClusterName] ] [[-StartDate] ] [[-EndDate] ] [-Detailed] - [-Credential ] [] +Get-CauReport [[-ClusterName] ] [[-StartDate] ] [[-EndDate] ] +[-Detailed] [-Credential ] [] ``` ### LastParamSet ``` -Get-CauReport [[-ClusterName] ] [-Last] [-Detailed] [-Credential ] [] +Get-CauReport [[-ClusterName] ] [-Last] [-Detailed] [-Credential ] +[] ``` ### SpecificReportParamSet ``` Get-CauReport [[-ClusterName] ] [-Report ] [-Credential ] - [] +[] ``` ## DESCRIPTION The `Get-CauReport` cmdlet gets the Updating Run reports for all known Updating Runs, or all Updating Runs that match the specified dates or other specified parameters. This cmdlet can return a -list of all Updating Run reports between the specified **StartDate** and **EndDate** parameters, or if -the **Last** parameter is specified instead of dates, then the cmdlet returns the most recent Updating -Run report. By default, the report contains summaries only, but more detail can be obtained with the -**Detailed** parameter or by using the **Report** parameter and specifying a Cluster-Aware Updating -(CAU) report summary object. +list of all Updating Run reports between the specified **StartDate** and **EndDate** parameters, or +if the **Last** parameter is specified instead of dates, then the cmdlet returns the most recent +Updating Run report. By default, the report contains summaries only, but more detail can be obtained +with the **Detailed** parameter or by using the **Report** parameter and specifying a Cluster-Aware +Updating (CAU) report summary object. ## EXAMPLES @@ -202,7 +204,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauRun.md index 2c1e0ae6a8..6170d73c00 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauRun.md @@ -166,7 +166,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md index 9010e1ee02..e0b03f4073 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md @@ -160,11 +160,11 @@ The following arguments are optional: - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is **'False'**. --- A standard Windows Update Agent query string that specifies criteria used by the Windows Update -Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and -for a value, enclose the full query in quotation marks. If not specified, then the -**Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` +- A standard Windows Update Agent query string that specifies criteria used by the Windows Update + Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and + for a value, enclose the full query in quotation marks. If not specified, then the + **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: + - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see @@ -782,7 +782,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md index f977753073..dec03d52a8 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md @@ -110,6 +110,7 @@ For instance: - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. + The following arguments are optional: - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value @@ -118,7 +119,7 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` + - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see @@ -163,7 +164,9 @@ Specifies one or more plug-ins to use when performing scans. You can specify mul separated with commas. The default is the **Microsoft.WindowsUpdatePlugin** plug-in. This plug-in coordinates the Windows Update Agent software resident on each cluster node, the same software that is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows -Server Update Services (WSUS) server. For more information about how plug-ins work with +Server Update Services (WSUS) server. + +For more information about how plug-ins work with Cluster-Aware Updating (CAU), see [Cluster-Aware Updating plug-ins](https://go.microsoft.com/fwlink/p/?LinkId=235333). @@ -288,7 +291,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md b/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md index 18b955519b..92bd0623d4 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md +++ b/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md @@ -40,8 +40,8 @@ Register-CauPlugin -Path "C:\PluginDevelopment\Plugin01.dll" -Force ``` The command registers a plug-in called Plugin01.dll located in the C:\PluginDevelopment folder. -Because the command specifies the **Force** parameter, the cmdlet runs without displaying confirmation -prompts. +Because the command specifies the **Force** parameter, the cmdlet runs without displaying +confirmation prompts. ## PARAMETERS diff --git a/docset/winserver2022-ps/clusterawareupdating/Remove-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Remove-CauClusterRole.md index e14961750c..94160caf59 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Remove-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Remove-CauClusterRole.md @@ -128,7 +128,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md index 247e5e2f6c..622d967a0f 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md +++ b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md @@ -142,7 +142,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md index 5e909e554a..108e0a7b2c 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md @@ -224,10 +224,11 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more - information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the - criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). + - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` + +For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in +and the criteria such as IsInstalled that can be included in the query strings, see +[IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a @@ -389,9 +390,9 @@ Indicates that this cmdlet enables the **Remote Shutdown** Windows Firewall rule cluster node, if it isn't already enabled, each time the CAU clustered role performs an Updating Run. Enabling this rule group permits inbound communication to each cluster node during each Updating Run that allows CAU to shut down and restart the node remotely. If Windows Firewall is in -use on the cluster nodes and the rule group isn't enabled, the updating run will fail. The **Remote -Shutdown** Windows Firewall rule group isn't enabled when it will conflict with Group Policy -settings that are configured for Windows Firewall. +use on the cluster nodes and the rule group is not enabled, the updating run will fail. The +**Remote Shutdown** Windows Firewall rule group is not enabled when it will conflict with Group +Policy settings that are configured for Windows Firewall. ```yaml Type: SwitchParameter @@ -498,10 +499,8 @@ Accept wildcard characters: False ``` ### -IntervalWeeks - -Specifies the interval between weeks when the task will be triggered. -An interval of 1 produces a weekly schedule. -An interval of 2 produces an every-other week schedule. +Specifies the interval between weeks when the task will be triggered. An interval of 1 produces a +weekly schedule. An interval of 2 produces an every-other week schedule. ```yaml Type: Int32 @@ -689,15 +688,15 @@ Accept wildcard characters: False ### -RunPluginsSerially Indicates that CAU scans each cluster node for applicable updates and stage the updates for each -plug-in in the plug-in order passed into the*CauPluginName* parameter, when multiple plug-ins are +plug-in in the plug-in order passed into the**CauPluginName** parameter, when multiple plug-ins are used during an updating run. By default, CAU scans and stages the applicable updates for all plug-ins in parallel. Regardless of the configuration of this parameter, CAU installs the applicable updates for each plug-in sequentially. -The parameter is valid only when multiple plug-ins are specified in the **CauPluginName** parameter. If a -single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified in the **CauPluginName** parameter. +If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -935,7 +934,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Stop-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Stop-CauRun.md index 825862afaf..9fe872bb79 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Stop-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Stop-CauRun.md @@ -108,7 +108,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Test-CauSetup.md b/docset/winserver2022-ps/clusterawareupdating/Test-CauSetup.md index 40418c7e25..d454ca1497 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Test-CauSetup.md +++ b/docset/winserver2022-ps/clusterawareupdating/Test-CauSetup.md @@ -76,7 +76,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Unregister-CauPlugin.md b/docset/winserver2022-ps/clusterawareupdating/Unregister-CauPlugin.md index bb4ee98a39..18830dc142 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Unregister-CauPlugin.md +++ b/docset/winserver2022-ps/clusterawareupdating/Unregister-CauPlugin.md @@ -88,7 +88,6 @@ Accept wildcard characters: False ``` ### CommonParameters - This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see From 8c32009155e98bcea9163389ce8b44c5ae29393e Mon Sep 17 00:00:00 2001 From: robinharwood <19212983+robinharwood@users.noreply.github.com> Date: Wed, 13 Jul 2022 15:54:47 +0100 Subject: [PATCH 06/98] Updated outputs --- .../Add-CauClusterRole.md | 48 +++++++++---------- .../Enable-CauClusterRole.md | 2 +- 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index 9f77043412..65a93a1168 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -375,7 +375,7 @@ conflict with Group Policy settings that are configured for Windows Firewall. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -401,7 +401,7 @@ The default value is `Immediate`. ```yaml Type: FailbackType -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Accepted values: NoFailback, Immediate, Policy @@ -436,7 +436,7 @@ A group might not be able to move because no other node can host the group or th ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -454,7 +454,7 @@ A group might not be able to move because no other node can host the group or th ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -470,7 +470,7 @@ The nodes are not drained. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -486,7 +486,7 @@ Specifies the NetBIOS name of the resource group for the CAU clustered role. ```yaml Type: String -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -523,7 +523,7 @@ The default for most clusters is approximately one-third of the number of nodes. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -542,7 +542,7 @@ The maximum is 64 and the default is 3. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -558,8 +558,8 @@ Specifies an array of cluster node names in the order that they should be update ```yaml Type: String[] -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: (All) +Aliases: Required: False Position: Named @@ -614,7 +614,7 @@ pre-update script fails, the node isn't updated. ```yaml Type: String -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -647,7 +647,7 @@ complete within this time, then the Updating Run on that node will be marked as ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -664,7 +664,7 @@ begins. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -702,7 +702,7 @@ If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -724,8 +724,8 @@ If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly -Aliases: +Parameter Sets: (All) +Aliases: Required: False Position: Named @@ -741,7 +741,7 @@ By default, CAU selects the order of nodes to update based on the level of activ ```yaml Type: String[] -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -756,7 +756,7 @@ Indicates that the CAU cluster role skips update checks. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -794,7 +794,7 @@ performing updates must be complete within this time limit. ```yaml Type: TimeSpan -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -813,7 +813,7 @@ a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -836,7 +836,7 @@ for this value for every node in the cluster in the worst case. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -857,7 +857,7 @@ computer object in Active Directory. ```yaml Type: String -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -875,7 +875,7 @@ regardless of the time taken by the Updating Run. ```yaml Type: TimeSpan -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: (All) Aliases: Required: False @@ -932,7 +932,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### None +### System.Object ## NOTES diff --git a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md index 3149e9f77a..7f19e6d1d4 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md @@ -135,7 +135,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### None +### System.Object ## NOTES From 0c65f2b639255fafcda8c76e939048554c6d40ec Mon Sep 17 00:00:00 2001 From: robinharwood <19212983+robinharwood@users.noreply.github.com> Date: Wed, 19 Oct 2022 00:19:50 +0100 Subject: [PATCH 07/98] Fixing formatting --- .../Add-CauClusterRole.md | 68 +++++++++++-------- .../Disable-CauClusterRole.md | 1 + .../Enable-CauClusterRole.md | 1 + .../clusterawareupdating/Export-CauReport.md | 1 + .../Get-CauClusterRole.md | 1 + .../Get-CauDeviceInfoForFeatureUpdates.md | 7 +- .../clusterawareupdating/Get-CauPlugin.md | 1 + .../clusterawareupdating/Get-CauReport.md | 9 +-- .../clusterawareupdating/Get-CauRun.md | 1 + .../clusterawareupdating/Invoke-CauRun.md | 11 +++ .../clusterawareupdating/Invoke-CauScan.md | 4 ++ .../Remove-CauClusterRole.md | 1 + .../Save-CauDebugTrace.md | 2 + .../Set-CauClusterRole.md | 13 ++++ .../clusterawareupdating/Stop-CauRun.md | 1 + .../clusterawareupdating/Test-CauSetup.md | 1 + .../Unregister-CauPlugin.md | 1 + 17 files changed, 90 insertions(+), 34 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index 65a93a1168..f7fea7b583 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -19,47 +19,47 @@ Adds the Cluster Aware Updating (CAU) clustered role that provides the self-upda ``` Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] -[-StartDate ] [-DaysOfWeek ] [-WeeksOfMonth ] -[-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] -[-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] -[-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] -[-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] -[-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] -[-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] -[-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] -[-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] -[[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] + [-StartDate ] [-DaysOfWeek ] [-WeeksOfMonth ] + [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] + [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] + [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] + [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] + [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] + [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ### Weekly ``` Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] -[-StartDate ] [-DaysOfWeek ] [-IntervalWeeks ] -[-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] -[-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] -[-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] -[-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] -[-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] -[-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] -[-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] -[-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] -[[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] + [-StartDate ] [-DaysOfWeek ] [-IntervalWeeks ] + [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] + [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] + [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] + [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] + [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] + [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ### Once ``` Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-RunOnce] -[-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] -[-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] -[-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] -[-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] -[-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] -[-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] -[-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] -[-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] -[[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] + [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] + [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] + [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] + [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] + [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] + [-SuspendClusterNodeTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -166,6 +166,7 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ## PARAMETERS ### -AttemptSoftReboot + Indicates that the CAU clustered role attempts a Kernel Soft Reboot (KSR) for the failover cluster. KSR bypasses BIOS/firmware initialization. You can only use KSR for updates that do not require a @@ -429,6 +430,7 @@ Accept wildcard characters: False ``` ### -ForcePauseAndDrain + Indicates that the CAU cluster role forces cluster nodes to pause and drain roles. A forced drain moves the roles off of the draining node even if the group cannot move. @@ -447,6 +449,7 @@ Accept wildcard characters: False ``` ### -ForcePauseDrainAndReboot + Indicates that the CAU cluster role forces cluster nodes to pause, drain roles, and restart. A forced drain moves the roles off of the draining node even if the group cannot move. @@ -465,6 +468,7 @@ Accept wildcard characters: False ``` ### -ForcePauseNoDrain + Indicates that the CAU cluster role forces cluster nodes to pause. The nodes are not drained. @@ -569,6 +573,7 @@ Accept wildcard characters: False ``` ### -OsRollingUpgrade + Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. ```yaml @@ -625,6 +630,7 @@ Accept wildcard characters: False ``` ### -RebootMode + {{ Fill RebootMode Description }} ```yaml @@ -675,6 +681,7 @@ Accept wildcard characters: False ``` ### -RunOnce + {{ Fill RunOnce Description }} ```yaml @@ -735,6 +742,7 @@ Accept wildcard characters: False ``` ### -SiteAwareUpdatingOrder + Specifies the order in which the CAU cluster role updates cluster nodes. By default, CAU selects the order of nodes to update based on the level of activity. @@ -752,6 +760,7 @@ Accept wildcard characters: False ``` ### -SkipUpdateChecks + Indicates that the CAU cluster role skips update checks. ```yaml @@ -824,6 +833,7 @@ Accept wildcard characters: False ``` ### -SuspendClusterNodeTimeoutMinutes + Specifies the maximum amount of time CAU should wait for the `Suspend-ClusterNode` cmdlet to succeed if the underlying clustered space is in degraded condition. diff --git a/docset/winserver2022-ps/clusterawareupdating/Disable-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Disable-CauClusterRole.md index b45def11c8..54013402ce 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Disable-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Disable-CauClusterRole.md @@ -124,6 +124,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md index 7f19e6d1d4..7634c34aa0 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md @@ -124,6 +124,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Export-CauReport.md b/docset/winserver2022-ps/clusterawareupdating/Export-CauReport.md index e1322574c3..7a4d0b3068 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Export-CauReport.md +++ b/docset/winserver2022-ps/clusterawareupdating/Export-CauReport.md @@ -179,6 +179,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauClusterRole.md index d1153cda3e..f65df26cff 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauClusterRole.md @@ -71,6 +71,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md index 7673d5a738..59bfe3bf4a 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md @@ -21,7 +21,8 @@ Get-CauDeviceInfoForFeatureUpdates [[-ClusterName] ] [-Credential ] [-Detailed] [-Credential ] -[] + [] ``` ### RangeParamSet ``` Get-CauReport [[-ClusterName] ] [[-StartDate] ] [[-EndDate] ] -[-Detailed] [-Credential ] [] + [-Detailed] [-Credential ] [] ``` ### LastParamSet ``` Get-CauReport [[-ClusterName] ] [-Last] [-Detailed] [-Credential ] -[] + [] ``` ### SpecificReportParamSet ``` Get-CauReport [[-ClusterName] ] [-Report ] [-Credential ] -[] + [] ``` ## DESCRIPTION @@ -204,6 +204,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauRun.md index 6170d73c00..2c1e0ae6a8 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauRun.md @@ -166,6 +166,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md index e0b03f4073..2a07458316 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md @@ -30,6 +30,7 @@ Invoke-CauRun [-MaxFailedNodes ] [-MaxRetriesPerNode ] [-NodeOrder ``` ### RecoverParamSet + ``` Invoke-CauRun [-ForceRecovery] [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-ForceSelfUpdate] [[-ClusterName] ] @@ -125,6 +126,7 @@ recovery is performed without confirmation prompts. ## PARAMETERS ### -AttemptSoftReboot + Indicates that command attempts a Kernel Soft Reboot (KSR) for the failover cluster. KSR bypasses BIOS/firmware initialization. @@ -357,6 +359,7 @@ Accept wildcard characters: False ``` ### -ForcePauseAndDrain + Indicates that the command forces cluster nodes to pause and drain roles. A forced drain moves the roles off of the draining node even if the group cannot move. @@ -375,6 +378,7 @@ Accept wildcard characters: False ``` ### -ForcePauseDrainAndReboot + Indicates that the command forces cluster nodes to pause, drain roles, and restart. A forced drain moves the roles off of the draining node even if the group cannot move. @@ -393,6 +397,7 @@ Accept wildcard characters: False ``` ### -ForcePauseNoDrain + Indicates that the command forces cluster nodes to pause. The nodes are not drained. @@ -429,6 +434,7 @@ Accept wildcard characters: False ``` ### -ForceSelfUpdate + {{ Fill ForceSelfUpdate Description }} ```yaml @@ -496,6 +502,7 @@ Accept wildcard characters: False ``` ### -OsRollingUpgrade + Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. ```yaml @@ -552,6 +559,7 @@ Accept wildcard characters: False ``` ### -RebootMode + {{ Fill RebootMode Description }} ```yaml @@ -646,6 +654,7 @@ Accept wildcard characters: False ``` ### -SiteAwareUpdatingOrder + Specifies the order in which the command updates cluster nodes. By default, CAU selects the order of nodes to update based on the level of activity. @@ -663,6 +672,7 @@ Accept wildcard characters: False ``` ### -SkipUpdateChecks + Indicates that the command skips update checks. ```yaml @@ -782,6 +792,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md index dec03d52a8..190c4148a3 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md @@ -79,6 +79,7 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ## PARAMETERS ### -AttemptSoftReboot + Indicates that command assumes a Kernel Soft Reboot (KSR) for the failover cluster. KSR bypasses BIOS/firmware initialization. @@ -217,6 +218,7 @@ Accept wildcard characters: False ``` ### -OsRollingUpgrade + Indicates that the CAU cluster role scans for upgrades to the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. ```yaml @@ -232,6 +234,7 @@ Accept wildcard characters: False ``` ### -RebootMode + {{ Fill RebootMode Description }} ```yaml @@ -291,6 +294,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Remove-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Remove-CauClusterRole.md index 94160caf59..e14961750c 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Remove-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Remove-CauClusterRole.md @@ -128,6 +128,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md index 622d967a0f..c471a63977 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md +++ b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md @@ -78,6 +78,7 @@ Accept wildcard characters: False ``` ### -FeatureUpdateLogs + Specifies feature update logs. ```yaml @@ -142,6 +143,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md index 108e0a7b2c..861d5dfb12 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md @@ -62,6 +62,7 @@ Set-CauClusterRole [-UseDefault] [-StartDate ] [-DaysOfWeek ``` ### Once + ``` Set-CauClusterRole [-UseDefault] [-RunOnce] [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] [-MaxRetriesPerNode ] @@ -112,6 +113,7 @@ This example uses splatting to pass parameter values from the `$parameters` vari Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). ### Example 2: Configure settings for a CAU cluster role on the specified cluster on the second week of the month + ```powershell $parameters = @{ ClusterName = 'CONTOSO-FC1' @@ -185,6 +187,7 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ## PARAMETERS ### -AttemptSoftReboot + Indicates that the CAU clustered role attempts a Kernel Soft Reboot (KSR) for the failover cluster. KSR bypasses BIOS/firmware initialization. @@ -447,6 +450,7 @@ Accept wildcard characters: False ``` ### -ForcePauseAndDrain + Indicates that the CAU cluster role forces cluster nodes to pause and drain roles. A forced drain moves the roles off of the draining node even if the group cannot move. @@ -465,6 +469,7 @@ Accept wildcard characters: False ``` ### -ForcePauseDrainAndReboot + Indicates that the CAU cluster role forces cluster nodes to pause, drain roles, and restart. A forced drain moves the roles off of the draining node even if the group cannot move. @@ -483,6 +488,7 @@ Accept wildcard characters: False ``` ### -ForcePauseNoDrain + Indicates that the CAU cluster role forces cluster nodes to pause. The nodes are not drained. @@ -499,6 +505,7 @@ Accept wildcard characters: False ``` ### -IntervalWeeks + Specifies the interval between weeks when the task will be triggered. An interval of 1 produces a weekly schedule. An interval of 2 produces an every-other week schedule. @@ -567,6 +574,7 @@ Accept wildcard characters: False ``` ### -OsRollingUpgrade + Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. ```yaml @@ -622,6 +630,7 @@ Accept wildcard characters: False ``` ### -RebootMode + {{ Fill RebootMode Description }} ```yaml @@ -671,6 +680,7 @@ Accept wildcard characters: False ``` ### -RunOnce + {{ Fill RunOnce Description }} ```yaml @@ -733,6 +743,7 @@ Accept wildcard characters: False ``` ### -SiteAwareUpdatingOrder + Specifies the order in which the CAU cluster role updates cluster nodes. By default, CAU selects the order of nodes to update based on the level of activity. @@ -750,6 +761,7 @@ Accept wildcard characters: False ``` ### -SkipUpdateChecks + Indicates that the CAU cluster role skips update checks. ```yaml @@ -934,6 +946,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Stop-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Stop-CauRun.md index 9fe872bb79..825862afaf 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Stop-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Stop-CauRun.md @@ -108,6 +108,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Test-CauSetup.md b/docset/winserver2022-ps/clusterawareupdating/Test-CauSetup.md index d454ca1497..40418c7e25 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Test-CauSetup.md +++ b/docset/winserver2022-ps/clusterawareupdating/Test-CauSetup.md @@ -76,6 +76,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see diff --git a/docset/winserver2022-ps/clusterawareupdating/Unregister-CauPlugin.md b/docset/winserver2022-ps/clusterawareupdating/Unregister-CauPlugin.md index 18830dc142..bb4ee98a39 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Unregister-CauPlugin.md +++ b/docset/winserver2022-ps/clusterawareupdating/Unregister-CauPlugin.md @@ -88,6 +88,7 @@ Accept wildcard characters: False ``` ### CommonParameters + This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see From acca68a2eac0a108c6094cb4a99425dcb525f503 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20=CF=80?= <57874058+thegraffix@users.noreply.github.com> Date: Mon, 4 Mar 2024 17:27:29 -0800 Subject: [PATCH 08/98] Update Get-VMNetworkAdapter.md Removed the extra ". " after the first sentence in the -VM parameter description. --- docset/winserver2012-ps/hyper-v/Get-VMNetworkAdapter.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2012-ps/hyper-v/Get-VMNetworkAdapter.md b/docset/winserver2012-ps/hyper-v/Get-VMNetworkAdapter.md index 60498ae978..4e144f39b5 100644 --- a/docset/winserver2012-ps/hyper-v/Get-VMNetworkAdapter.md +++ b/docset/winserver2012-ps/hyper-v/Get-VMNetworkAdapter.md @@ -132,7 +132,7 @@ Accept wildcard characters: False ### -VM Specifies the virtual machine whose virtual network adapters are to be retrieved. -. The asterisk, "*", is the wildcard. +The asterisk, "*", is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. ```yaml From 87c815958b2d17da54b233724152b781a72a6cb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20=CF=80?= <57874058+thegraffix@users.noreply.github.com> Date: Mon, 4 Mar 2024 17:30:05 -0800 Subject: [PATCH 09/98] Update Get-VMNetworkAdapter.md Removed extra ". " after the first sentence in the -VM parameter description. --- docset/winserver2012r2-ps/hyper-v/Get-VMNetworkAdapter.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2012r2-ps/hyper-v/Get-VMNetworkAdapter.md b/docset/winserver2012r2-ps/hyper-v/Get-VMNetworkAdapter.md index 88e0c19d8b..50aa2fb27b 100644 --- a/docset/winserver2012r2-ps/hyper-v/Get-VMNetworkAdapter.md +++ b/docset/winserver2012r2-ps/hyper-v/Get-VMNetworkAdapter.md @@ -167,7 +167,7 @@ Accept wildcard characters: False ### -VM Specifies the virtual machine whose virtual network adapters are to be retrieved. -. The asterisk, "*", is the wildcard. +The asterisk, "*", is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. ```yaml From 2dbfcfec373ed3f0b88621ac9410a94a7eb86abc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20=CF=80?= <57874058+thegraffix@users.noreply.github.com> Date: Mon, 4 Mar 2024 17:31:01 -0800 Subject: [PATCH 10/98] Update Get-VMNetworkAdapter.md Removed the extra ". " after the first sentence in the -VM parameter description. --- docset/winserver2016-ps/hyper-v/Get-VMNetworkAdapter.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2016-ps/hyper-v/Get-VMNetworkAdapter.md b/docset/winserver2016-ps/hyper-v/Get-VMNetworkAdapter.md index 8c22b96d92..9ac6fab263 100644 --- a/docset/winserver2016-ps/hyper-v/Get-VMNetworkAdapter.md +++ b/docset/winserver2016-ps/hyper-v/Get-VMNetworkAdapter.md @@ -203,7 +203,7 @@ Accept wildcard characters: False ### -VM Specifies the virtual machine whose virtual network adapters are to be retrieved. -. The asterisk, "*", is the wildcard. +The asterisk, "*", is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. ```yaml From 9d87cb6a6743178578fd82f39cdcf4b466f8db84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20=CF=80?= <57874058+thegraffix@users.noreply.github.com> Date: Mon, 4 Mar 2024 17:31:35 -0800 Subject: [PATCH 11/98] Update Get-VMNetworkAdapter.md Removed the extra ". " after the first sentence in the -VM parameter description. --- docset/winserver2019-ps/hyper-v/Get-VMNetworkAdapter.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2019-ps/hyper-v/Get-VMNetworkAdapter.md b/docset/winserver2019-ps/hyper-v/Get-VMNetworkAdapter.md index 48b82a48ca..85aada7085 100644 --- a/docset/winserver2019-ps/hyper-v/Get-VMNetworkAdapter.md +++ b/docset/winserver2019-ps/hyper-v/Get-VMNetworkAdapter.md @@ -203,7 +203,7 @@ Accept wildcard characters: False ### -VM Specifies the virtual machine whose virtual network adapters are to be retrieved. -. The asterisk, "*", is the wildcard. +The asterisk, "*", is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. ```yaml From b23f371f108d007fa7b678143ea3db14ea66e029 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20=CF=80?= <57874058+thegraffix@users.noreply.github.com> Date: Mon, 4 Mar 2024 17:32:20 -0800 Subject: [PATCH 12/98] Update Get-VMNetworkAdapter.md Removed the extra ". " after the first sentence in the -VM parameter description. --- docset/winserver2022-ps/hyper-v/Get-VMNetworkAdapter.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMNetworkAdapter.md b/docset/winserver2022-ps/hyper-v/Get-VMNetworkAdapter.md index 42f8d2c5ae..8cc8748459 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMNetworkAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMNetworkAdapter.md @@ -203,7 +203,7 @@ Accept wildcard characters: False ### -VM Specifies the virtual machine whose virtual network adapters are to be retrieved. -. The asterisk, "*", is the wildcard. +The asterisk, "*", is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. ```yaml From 3fc69146118c4563e73fb9f37d16ca4b635dcceb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20=CF=80?= <57874058+thegraffix@users.noreply.github.com> Date: Mon, 4 Mar 2024 17:32:53 -0800 Subject: [PATCH 13/98] Update Get-VMNetworkAdapter.md --- docset/winserver2025-ps/hyper-v/Get-VMNetworkAdapter.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2025-ps/hyper-v/Get-VMNetworkAdapter.md b/docset/winserver2025-ps/hyper-v/Get-VMNetworkAdapter.md index dd23bd621a..2c816c8876 100644 --- a/docset/winserver2025-ps/hyper-v/Get-VMNetworkAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Get-VMNetworkAdapter.md @@ -203,7 +203,7 @@ Accept wildcard characters: False ### -VM Specifies the virtual machine whose virtual network adapters are to be retrieved. -. The asterisk, "*", is the wildcard. +The asterisk, "*", is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. ```yaml From 7b4cc686c6b5595d3916d7b5a76d8b16dd66b88c Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Thu, 13 Jun 2024 16:24:04 -0400 Subject: [PATCH 14/98] Updated VMAssignableDevice command set --- .../hyper-v/Add-VMAssignableDevice.md | 275 ++++++++++++++++++ .../hyper-v/Get-VMAssignableDevice.md | 194 ++++++++++++ .../hyper-v/Remove-VMAssignableDevice.md | 244 ++++++++++++++++ 3 files changed, 713 insertions(+) create mode 100644 docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md create mode 100644 docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md create mode 100644 docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md diff --git a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md new file mode 100644 index 0000000000..7cd0cdacc9 --- /dev/null +++ b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md @@ -0,0 +1,275 @@ +--- +description: Assign's a device to a virtual machine. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/add-vmassignabledevice?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Add-VMAssignableDevice +--- + +# Add-VMAssignableDevice + +## SYNOPSIS +Adds assignable devices to a specific virtual machine. + +## SYNTAX + +### VMName (Default) + +``` +Add-VMAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-VMName] [-InstancePath ] + [-LocationPath ] [-VirtualFunction ] [-ResourcePoolName ] [-Passthru] + [-WhatIf] [-Confirm] [] +``` + +### VMObject + +``` +Add-VMAssignableDevice [-VM] [-InstancePath ] [-LocationPath ] + [-VirtualFunction ] [-ResourcePoolName ] [-Passthru] [-WhatIf] [-Confirm] + [] +``` + +## DESCRIPTION + +The `Add-VMAssignableDevice` cmdlet assigns a physical device to a specified virtual machine (VM). +This is commonly used for tasks such as attaching GPUs or network adapters directly to a VM to +enhance performance for specific applications or workloads. The device can be specified through its +instance path, location path, or assignable device object. + +## EXAMPLES + +### Example 1 + +```powershell +Add-VMAssignableDevice -VMName "MyVM" -InstancePath "PCIROOT(0)#PCI(0300)#PCI(0000)" +``` + +This example attaches a physical device, identified by its instance path, to the virtual machine +named **MyVM**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Passthru + +Returns an object for each process that the cmdlet started. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourcePoolName + +Specifies the name of the resource pool to which the device is to be assigned. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VirtualFunction + +Specifies the number of the virtual function (VF) of an SR-IOV-capable network adapter assigned to +the virtual machine. + +```yaml +Type: UInt16 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VM + +Specifies the virtual machine on which the device is to be assigned. + +```yaml +Type: VirtualMachine[] +Parameter Sets: VMObject +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -VMName + +Specifies the name of the virtual machine where a device is to be assigned. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VirtualMachine[] + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMAssignedDevice + +## NOTES + +## RELATED LINKS + +- [Get-VMAssignableDevice](Get-VMAssignableDevice.md) + +- [Remove-VMAssignableDevice](Remove-VMAssignableDevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md new file mode 100644 index 0000000000..431345cddc --- /dev/null +++ b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md @@ -0,0 +1,194 @@ +--- +description: Retrieves information about a device assigned to a virtual machine. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/get-vmassignabledevice?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-VMAssignableDevice +--- + +# Get-VMAssignableDevice + +## SYNOPSIS +Retrieves information about the assignable devices from a specific virtual machine. + +## SYNTAX + +### VMName (Default) + +``` +Get-VMAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-VMName] [-InstancePath ] + [-LocationPath ] [] +``` + +### VMObject + +``` +Get-VMAssignableDevice [-VM] [-InstancePath ] [-LocationPath ] + [] +``` + +## DESCRIPTION + +The `Get-VMAssignableDevice` cmdlet retrieves information about the assignable devices that are +associated with a specific virtual machine (VM). This cmdlet can be used to list all assignable +devices that can be attached to a VM or to retrieve details about specific devices that are already +assigned. The retrieved information can include the device's instance path, location path, and +other relevant properties. + +## EXAMPLES + +### Example 1 + +```powershell +Get-VMAssignableDevice -VMName "MyVM" +``` + +This example retrieves all assignable devices associated with the virtual machine named **MyVM**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Retrieves one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VM + +Retrieves the network adapter assigned to the virtual machine. + +```yaml +Type: VirtualMachine[] +Parameter Sets: VMObject +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -VMName + +Retrieves the name of the virtual machine which the network adapter is assigned. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.HyperV.PowerShell.VirtualMachine[] + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMAssignedDevice + +## NOTES + +## RELATED LINKS + +- [Add-VMAssignableDevice](Add-VMAssignableDevice.md) + +- [Remove-VMAssignableDevice](Remove-VMAssignableDevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md new file mode 100644 index 0000000000..6055887121 --- /dev/null +++ b/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md @@ -0,0 +1,244 @@ +--- +description: Removes a device assigned to a virtual machine. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/remove-vmassignabledevice?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Remove-VMAssignableDevice +--- + +# Remove-VMAssignableDevice + +## SYNOPSIS +Removes information about the assignable devices from a specific virtual machine. + +## SYNTAX + +### VMName (Default) + +``` +Remove-VMAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-VMName] [-InstancePath ] + [-LocationPath ] [-Passthru] [-WhatIf] [-Confirm] [] +``` + +### Object + +``` +Remove-VMAssignableDevice [-VMAssignableDevice] [-Passthru] [-WhatIf] + [-Confirm] [] +``` + +## DESCRIPTION + +The `Remove-VMAssignableDevice` cmdlet removes an assignable device from a specified virtual +machine (VM). This is often used in scenarios where a physical device, such as a GPU or network +adapter, was previously assigned to a VM and needs to be unassigned. + +## EXAMPLES + +### Example 1 + +```powershell +$params = @{ +VMName = "MyVM" +InstancePath = "PCIROOT(0)#PCI(0300)#PCI(0000)#PCI(0800)#PCI(0000)#PCI(1000)" +} +Remove-VMAssignableDevice $params +``` + +This example removes a specific assignable device, identified by its instance path, from the +virtual machine named **MyVM**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Removes the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Passthru + +Returns an object for each process that the cmdlet started. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VMAssignableDevice + +Specifies the assignable device object that you want to remove from the virtual machine. This is +usually an object retrieved from a cmdlet like `Get-VMAssignableDevice`. + +```yaml +Type: VMAssignedDevice[] +Parameter Sets: Object +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -VMName + +Specifies the name of the virtual machine from which you want to remove the assignable device. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VMAssignedDevice[] + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMAssignedDevice + +## NOTES + +## RELATED LINKS + +- [Add-VMAssignableDevice](Add-VMAssignableDevice.md) + +- [Get-VMAssignableDevice](Get-VMAssignableDevice.md) From e9c7649cb7aa5923b5671e170f1f7d4cb15e09b2 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 18 Jun 2024 12:29:40 -0400 Subject: [PATCH 15/98] Updated VMHostAssignableDevice command set --- .../hyper-v/Add-VMHostAssignableDevice.md | 216 +++++++++++++++ .../Dismount-VMHostAssignableDevice.md | 218 +++++++++++++++ .../hyper-v/Get-VMHostAssignableDevice.md | 178 +++++++++++++ .../hyper-v/Mount-VMHostAssignableDevice.md | 232 ++++++++++++++++ .../hyper-v/Remove-VMHostAssignableDevice.md | 248 ++++++++++++++++++ 5 files changed, 1092 insertions(+) create mode 100644 docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md create mode 100644 docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md create mode 100644 docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md create mode 100644 docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md create mode 100644 docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md diff --git a/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md new file mode 100644 index 0000000000..ffc0a3b2f8 --- /dev/null +++ b/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md @@ -0,0 +1,216 @@ +--- +description: Assigns a device to a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/add-vmhostassignabledevice?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Add-VMHostAssignableDevice +--- + +# Add-VMHostAssignableDevice + +## SYNOPSIS +Adds an assignable device to a virtual machine (VM) host. + +## SYNTAX + +### Path (Default) + +``` +Add-VMHostAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-Force] [-InstancePath ] [-LocationPath ] + -ResourcePoolName [] +``` + +### Object + +``` +Add-VMHostAssignableDevice [-Force] [-HostAssignableDevice] + -ResourcePoolName [] +``` + +## DESCRIPTION + +The `Add-VMHostAssignableDevice` cmdlet assigns a hardware device to a virtual machine host. You +can add devices to the VM host by providing either the instance or location path of the device, or +by specifying an existing host-assignable device object. + +## EXAMPLES + +### Example 1 + +```powershell +$params = @{ +ComputerName = "MyVM01" +InstancePath = "PCI\VEN_8086&DEV_0F48&SUBSYS_72708086&REV_0B\3&11583659&0&D8" +ResourcePoolName = "MyResourcePool" +} +Add-VMHostAssignableDevice $params +``` + +This example assigns a device identified by its instance path to VM host **MyVM01** within the +resource pool **MyResourcePool**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -HostAssignableDevice + +Specifies the device object to be assigned to the virtual machine. + +```yaml +Type: VMHostAssignableDevice[] +Parameter Sets: Object +Aliases: VMHostAssignableDevice + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourcePoolName + +Specifies the name of the resource pool to which the device is assigned. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice[] + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +- [Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) + +- [Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) + +- [Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) + +- [Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md new file mode 100644 index 0000000000..9544a9d126 --- /dev/null +++ b/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md @@ -0,0 +1,218 @@ +--- +description: Dismounts an assigned device from a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/dismount-vmhostassignabledevice?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Dismount-VMHostAssignableDevice +--- + +# Dismount-VMHostAssignableDevice + +## SYNOPSIS +Dismounts a device from a virtual machine (VM) host. + +## SYNTAX + +``` +Dismount-VMHostAssignableDevice [-InstancePath ] [-LocationPath ] [-Force] + [-Passthru] [-CimSession ] [-ComputerName ] [-Credential ] + [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Dismount-VMHostAssignableDevice` cmdlet is used to dismount an assignable device from the +virtual machine host. Use this cmdlet when you need to reassign a device or resolve conflicts +between devices and virtual machines. + +## EXAMPLES + +### Example 1 + +```powershell +Dismount-VMHostAssignableDevice -InstancePath "PCIROOT(0)#PCI(1D02)#PCI(0000)" +``` + +This example dismounts the device with the specified instance path from the host, making it +available for reassignment to another virtual machine. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Passthru + +Returns an object for each process that the cmdlet started. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice + +## NOTES + +## RELATED LINKS + +- [Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) + +- [Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) + +- [Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) + +- [Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md new file mode 100644 index 0000000000..21668a174a --- /dev/null +++ b/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md @@ -0,0 +1,178 @@ +--- +description: Retrieves information about a device assigned to a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/get-vmhostassignabledevice?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-VMHostAssignableDevice +--- + +# Get-VMHostAssignableDevice + +## SYNOPSIS +Retrieves device information assigned to a virtual machine (VM) host. + +## SYNTAX + +``` +Get-VMHostAssignableDevice [-InstancePath ] [-LocationPath ] + [-ResourcePoolName ] [-CimSession ] [-ComputerName ] + [-Credential ] [] +``` + +## DESCRIPTION + +The `Get-VMHostAssignableDevice` cmdlet retrieves information about devices that can be assigned to +a virtual machine host. This can include devices such as GPUs, network adapters, or storage +controllers that are physically present on the host system. The cmdlet can filter devices by their +instance path or location path. + +## EXAMPLES + +### Example 1 + +```powershell +Get-VMHostAssignableDevice +``` + +This example retrieves all assignable devices on the host computer. + +### Example 2 + +```powershell +Get-VMHostAssignableDevice -ComputerName "MyHost" +``` + +In this example, the cmdlet retrieves all assignable devices from the computer named **MyHost**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourcePoolName + +Retrieves the name of the resource pool to which the device is assigned. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice + +## NOTES + +## RELATED LINKS + +- [Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) + +- [Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) + +- [Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) + +- [Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md new file mode 100644 index 0000000000..db57546b50 --- /dev/null +++ b/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md @@ -0,0 +1,232 @@ +--- +description: Mounts an assigned device to a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/mount-vmhostassignabledevice?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Mount-VMHostAssignableDevice +--- + +# Mount-VMHostAssignableDevice + +## SYNOPSIS +Mounts a device to a virtual machine (VM) host. + +## SYNTAX + +### Path (Default) + +``` +Mount-VMHostAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-InstancePath ] [-LocationPath ] [-Passthru] + [-WhatIf] [-Confirm] [] +``` + +### Object + +``` +Mount-VMHostAssignableDevice [-HostAssignableDevice] [-Passthru] + [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Mount-VMHostAssignableDevice` cmdlet mounts a device such as GPUs, network adapters, or storage +controllers that are physically present on the virtual machine host. + +## EXAMPLES + +### Example 1 + +```powershell +$device = Get-VMHostAssignableDevice -InstancePath "PCIROOT(0)#PCI(0300)#PCI(0000)" +$params = @{ +HostAssignableDevice = $device +VMName = "MyVM" +} +Mount-VMHostAssignableDevice @params +``` + +In this example, the `Get-VMHostAssignableDevice` cmdlet retrieves the device with the specified +instance path and stores it in the `$device` variable. The `Mount-VMHostAssignableDevice` cmdlet +then assigns this device to the virtual machine named **MyVM**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -HostAssignableDevice + +Specifies the device object to be assigned to the virtual machine. + +```yaml +Type: VMHostAssignableDevice[] +Parameter Sets: Object +Aliases: VMHostAssignableDevice + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Passthru + +Returns an object for each process that the cmdlet started. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice[] + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice + +## NOTES + +## RELATED LINKS + +- [Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) + +- [Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) + +- [Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) + +- [Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md new file mode 100644 index 0000000000..ed24303a5c --- /dev/null +++ b/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md @@ -0,0 +1,248 @@ +--- +description: Removes an assigned device from a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/remove-vmhostassignabledevice?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Remove-VMHostAssignableDevice +--- + +# Remove-VMHostAssignableDevice + +## SYNOPSIS +Removes a device assigned to a virtual machine (VM) host. + +## SYNTAX + +### Path (Default) + +``` +Remove-VMHostAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-InstancePath ] [-LocationPath ] + -ResourcePoolName [-Force] [-WhatIf] [-Confirm] [] +``` + +### Object + +``` +Remove-VMHostAssignableDevice [-HostAssignableDevice] + -ResourcePoolName [-Force] [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Remove-VMHostAssignableDevice` cmdlet removes a device that is assigned to a virtual machine +host. Depending on the parameters specified, you can remove devices by providing either the +instance or location path of the device. + +## EXAMPLES + +### Example 1 + +```powershell +$params = @{ +InstancePath = "PCIROOT(0)#PCI(0300)#PCI(0000)" +ResourcePoolName = "MyResourcePool" +} +Remove-VMHostAssignableDevice $params +``` + +This example removes the device with the specified instance path from the resource pool named +**MyResourcePool**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -HostAssignableDevice + +Specifies the device object to be removed. You can get this object using +`Get-VMHostAssignableDevice`. + +```yaml +Type: VMHostAssignableDevice[] +Parameter Sets: Object +Aliases: VMHostAssignableDevice + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -InstancePath + +Specifies the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourcePoolName + +Specifies the name of the resource pool to which the device is assigned. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice[] + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +- [Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) + +- [Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) + +- [Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) + +- [Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) From 13696e090866b731faa45165937cf80ed4622a8b Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 18 Jun 2024 12:59:03 -0400 Subject: [PATCH 16/98] Updated VMAssignableDevice command set --- docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md | 4 ++-- docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md index 7cd0cdacc9..2158849971 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md @@ -1,5 +1,5 @@ --- -description: Assign's a device to a virtual machine. +description: Assigns a device to a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V ms.date: 06/12/2024 @@ -11,7 +11,7 @@ title: Add-VMAssignableDevice # Add-VMAssignableDevice ## SYNOPSIS -Adds assignable devices to a specific virtual machine. +Adds an assignable device to a specific virtual machine. ## SYNTAX diff --git a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md index 431345cddc..e62f6543e7 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md @@ -11,7 +11,7 @@ title: Get-VMAssignableDevice # Get-VMAssignableDevice ## SYNOPSIS -Retrieves information about the assignable devices from a specific virtual machine. +Retrieves information about the assignable device from a specific virtual machine. ## SYNTAX From 196cf3ac191ad175f1311cdb7a67638c09abaf26 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 18 Jun 2024 13:28:20 -0400 Subject: [PATCH 17/98] Updated VMAssignablePartitionableGpu command set --- .../hyper-v/Get-VMHostPartitionableGpu.md | 57 ++++++++++++------- .../hyper-v/Set-VMHostPartitionableGpu.md | 51 ++++++++++++----- 2 files changed, 75 insertions(+), 33 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md b/docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md index c22e441be3..c436d9573f 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md @@ -2,7 +2,7 @@ description: Gets the host machine’s partitionable GPU. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/get-vmhostpartitionablegpu?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Get-VMHostPartitionableGpu @@ -16,49 +16,59 @@ Gets the host machine’s partitionable GPU. ## SYNTAX ### ComputerName (Default) + ``` -Get-VMHostPartitionableGpu [[-ComputerName] ] [[-Credential] ] [-Name ] - [] +Get-VMHostPartitionableGpu [[-ComputerName] ] [[-Credential] ] + [-Name ] [] ``` ### CimSession + ``` Get-VMHostPartitionableGpu [-CimSession] [-Name ] [] ``` ## DESCRIPTION -The 'Get-VMHostPartitionableGpu' cmdlet gets the host machine’s partitionable graphic processing unit. -This displays the information of the GPU as provided by the manufacturer's driver. + +The `Get-VMHostPartitionableGpu` cmdlet gets the host machine’s partitionable graphic processing +unit. This displays the information of the GPU as provided by the manufacturer's driver. ## EXAMPLES ### Example 1 -``` + +```powershell Get-VMHostPartitionableGpu ``` This example gets the details of the local partitionable graphic processing unit on the host. ### Example 2 + ```powershell -Get-VMHostPartitionableGpu -ComputerName "SampleHost" +Get-VMHostPartitionableGpu -ComputerName "MyHost" ``` -This example gets a partitionable GPU by using the host name. This command will display all the GPU devices available for partitioning in the host. +This example gets a partitionable GPU by using the host name. This command will display all the GPU +devices available for partitioning in the host. ### Example 3 + ```powershell -Get-VMHostPartitionableGpu -name "SampleGPUDeviceIDName" +Get-VMHostPartitionableGpu -Name "GPUDeviceIDName" ``` -Displays a partitionable GPU by using the specific GPU device name. The result will show the details of the specific GPU listed. +Displays a partitionable GPU by using the specific GPU device name. The result will show the +details of the specific GPU listed. ## PARAMETERS ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -73,10 +83,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts that run this cmdlet. -NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts that run this cmdlet. NetBIOS names, IP addresses, and fully +qualified domain names are allowed. The default is the local computer. Use localhost or a dot (`.`) +to specify the local computer explicitly. ```yaml Type: String[] @@ -91,7 +101,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -106,6 +118,7 @@ Accept wildcard characters: False ``` ### -Name + Specifies the name of the graphic processing unit to be retrieved. ```yaml @@ -121,7 +134,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -134,3 +151,5 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Set-VMHostPartitionableGpu](set-vmhostpartitionablegpu.md) diff --git a/docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md b/docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md index 6cca814585..18d7b5f8fa 100644 --- a/docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md +++ b/docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md @@ -2,7 +2,7 @@ description: Configures the host partitionable GPU to the number of partitions supported by the manufacturer. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 10/21/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/set-vmhostpartitionablegpu?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Set-VMHostPartitionableGpu @@ -16,44 +16,51 @@ Configures the host partitionable GPU to the number of partitions supported by t ## SYNTAX ### ComputerName (Default) + ``` Set-VMHostPartitionableGpu [[-ComputerName] ] [[-Credential] ] [-Passthru] [-PartitionCount ] [] ``` ### CimSession + ``` Set-VMHostPartitionableGpu [-CimSession] [-Passthru] [-PartitionCount ] [] ``` ### Object + ``` Set-VMHostPartitionableGpu [-HostPartitionableGpu] [-Passthru] [-PartitionCount ] [] ``` ### Name + ``` Set-VMHostPartitionableGpu [-Passthru] [-Name ] [-PartitionCount ] [] ``` ## DESCRIPTION + The `Set-VMHostPartitionableGpu` cmdlet configures the host partitionable GPU to the number of partitions supported by the manufacturer. ## EXAMPLES ### Example 1 + ```powershell -Set-VMHostPartitionableGpu -ComputerName SampleHost -partitioncount 8 +Set-VMHostPartitionableGpu -ComputerName "MyHost" -PartitionCount 8 ``` This example partitions a GPU in a specific host into eight partitions. ### Example 2 + ```powershell -$GPU = Get-VMHostPartitionableGpu -name "SampleGPUDeviceIDName" -Set-VMHostPartitionableGpu -Name $GPU -partitionCount 4 +$GPU = Get-VMHostPartitionableGpu -Name "GPUDeviceIDName" +Set-VMHostPartitionableGpu -Name $GPU -PartitionCount 4 ``` This example partitions a GPU in a host into four partitions by using the GPU device ID name. @@ -61,8 +68,11 @@ This example partitions a GPU in a host into four partitions by using the GPU de ## PARAMETERS ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -77,9 +87,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -94,8 +105,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. -The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -110,7 +122,8 @@ Accept wildcard characters: False ``` ### -HostPartitionableGpu -Full GPU object, obtained by executing 'Get-VMHostPartitionableGpu'. + +Full GPU object, obtained by executing `Get-VMHostPartitionableGpu`. ```yaml Type: VMHostPartitionableGpu[] @@ -125,6 +138,7 @@ Accept wildcard characters: False ``` ### -Name + Specifies the name of the GPU. ```yaml @@ -140,7 +154,9 @@ Accept wildcard characters: False ``` ### -PartitionCount -Specifies the number of partitions that the GPU will assign. The number of partitions is defined by the manufacturer. + +Specifies the number of partitions that the GPU will assign. The number of partitions is defined by +the manufacturer. ```yaml Type: UInt16 @@ -155,6 +171,7 @@ Accept wildcard characters: False ``` ### -Passthru + Returns an object for each process that the cmdlet started. ```yaml @@ -170,7 +187,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -185,3 +206,5 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Get-VMHostPartitionableGpu](get-vmhostpartitionablegpu.md) From adad7bc06cc96a8a2b1a3f5ba66a3823cd86d693 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 18 Jun 2024 14:02:30 -0400 Subject: [PATCH 18/98] Updated VMGpuPartitionAdapter command set --- .../hyper-v/Add-VMGpuPartitionAdapter.md | 108 ++++++++++++------ .../hyper-v/Get-VMGpuPartitionAdapter.md | 50 +++++--- .../hyper-v/Remove-VMGpuPartitionAdapter.md | 67 ++++++++--- .../hyper-v/Set-VMGpuPartitionAdapter.md | 107 ++++++++++++----- 4 files changed, 238 insertions(+), 94 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md index e86a3aa1c8..59ee2f6747 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md @@ -2,7 +2,7 @@ description: Adds a GPU partition adapter to a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/add-vmgpupartitionadapter?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Add-VMGpuPartitionAdapter @@ -16,53 +16,59 @@ Adds a GPU partition adapter to a virtual machine. ## SYNTAX ### VMName (Default) + ``` Add-VMGpuPartitionAdapter [-CimSession ] [-ComputerName ] [-Credential ] [-VMName] [-Passthru] [-InstancePath ] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] [-Confirm] [] ``` ### VMObject + ``` Add-VMGpuPartitionAdapter [-VM] [-Passthru] [-InstancePath ] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The 'Add-VMGpuPartitionAdapter' cmdlet adds a GPU partition adapter to a virtual machine. With no parameter, it assigns a full partition from an assignable GPU to a VM. + +The `Add-VMGpuPartitionAdapter` cmdlet adds a GPU partition adapter to a virtual machine. With no parameter, it assigns a full partition from an assignable GPU to a VM. ## EXAMPLES ### Example 1 + ```powershell -$vm = Get-VM -name "TestVM" +$vm = Get-VM -Name "TestVM" Add-VMGpuPartitionAdapter -VM $vm ``` This example assigns a partition to a specific VM object. ### Example 2 + ```powershell -$vm = Get-VM -name "TestVM" -Add-VMGpuPartitionAdapter -VM $vm -Instancepath "SampleGPUInstancePath" +$vm = Get-VM -Name "TestVM" +Add-VMGpuPartitionAdapter -VM $vm -InstancePath "GPUInstancePath" ``` -This example assigns a partition from a specific GPU to a VM where the instance path is the GPU device ID name on the host. +This example assigns a partition from a specific GPU to a VM where the instance path is the GPU +device ID name on the host. ## PARAMETERS ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -77,10 +83,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts from which virtual machines are to be retrieved. -NetBIOS names, IP addresses, and fully qualified domain names are allowable. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts from which virtual machines are to be retrieved. NetBIOS names, +IP addresses, and fully qualified domain names are allowable. The default is the local computer. +Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -95,8 +101,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. -The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -111,7 +118,9 @@ Accept wildcard characters: False ``` ### -InstancePath -Represents the Device Instance path of a GPU in the host. This value can be obtained from the "Name" property of the command 'Get-VMHostPartitionableGpu'. + +Represents the Device Instance path of a GPU in the host. This value can be obtained from the +"Name" property of the command `Get-VMHostPartitionableGpu`. ```yaml Type: String @@ -126,7 +135,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionCompute -The maximum number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -141,7 +152,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionDecode -The maximum number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -156,7 +169,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionEncode -The maximum number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -171,6 +186,7 @@ Accept wildcard characters: False ``` ### -MaxPartitionVRAM + The maximum VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -186,7 +202,9 @@ Accept wildcard characters: False ``` ### -MinPartitionCompute -The minimum number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -201,7 +219,9 @@ Accept wildcard characters: False ``` ### -MinPartitionDecode -The minimum number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -216,7 +236,9 @@ Accept wildcard characters: False ``` ### -MinPartitionEncode -The minimum number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -231,6 +253,7 @@ Accept wildcard characters: False ``` ### -MinPartitionVRAM + The minimum VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -246,7 +269,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionCompute -The optimal number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -261,7 +286,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionDecode -The optimal number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -276,7 +303,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionEncode -The optimal number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -291,6 +320,7 @@ Accept wildcard characters: False ``` ### -OptimalPartitionVRAM + The optimal VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -306,6 +336,7 @@ Accept wildcard characters: False ``` ### -Passthru + Returns an object for each process that the cmdlet started. ```yaml @@ -321,6 +352,7 @@ Accept wildcard characters: False ``` ### -VM + Specifies the virtual machine on which the network adapter is to be added. ```yaml @@ -336,6 +368,7 @@ Accept wildcard characters: False ``` ### -VMName + Specifies the name of the virtual machine on which the network adapter is to be added. ```yaml @@ -351,6 +384,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -366,8 +400,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -382,7 +416,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -397,3 +435,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) + +- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) + +- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md index 5df16d8162..32775b771d 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md @@ -2,7 +2,7 @@ description: Gets the information of assigned GPU partitions to a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/get-vmgpupartitionadapter?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Get-VMGpuPartitionAdapter @@ -16,24 +16,29 @@ Gets the information of assigned GPU partitions to a virtual machine. ## SYNTAX ### VMName (Default) + ``` Get-VMGpuPartitionAdapter [-CimSession ] [-ComputerName ] [-Credential ] [-VMName] [-AdapterId ] [] ``` ### VMObject + ``` Get-VMGpuPartitionAdapter [-VM] [-AdapterId ] [] ``` ## DESCRIPTION -The 'Get-VMGpuPartitionAdapter' cmdlet gets the information of assigned graphic processing unit partitions to a virtual machine. + +The `Get-VMGpuPartitionAdapter` cmdlet gets the information of assigned graphic processing unit +partitions to a virtual machine. ## EXAMPLES ### Example 1 + ```powershell -$testvm = get-VM "TestVM" +$testvm = Get-VM "TestVM" Get-VMGpuPartitionAdapter -VM $testvm ``` @@ -42,7 +47,9 @@ This example gets the GPU information assigned to a VM object. ## PARAMETERS ### -AdapterId -This is a VM's GPU partition identification number used to display the GPU information assigned to a VM. + +This is a VM's GPU partition identification number used to display the GPU information assigned to a +VM. ```yaml Type: String @@ -57,9 +64,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -74,10 +83,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. -NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -92,8 +101,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. -The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -108,6 +118,7 @@ Accept wildcard characters: False ``` ### -VM + Specifies the virtual machine whose virtual network adapters are to be retrieved. The asterisk (`*`) is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. @@ -125,6 +136,7 @@ Accept wildcard characters: True ``` ### -VMName + Specifies the name of the virtual machine whose network adapters are to be retrieved. ```yaml @@ -140,7 +152,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -155,3 +171,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) + +- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) + +- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2022-ps/hyper-v/Remove-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Remove-VMGpuPartitionAdapter.md index 0815ce1194..503ba2b8cb 100644 --- a/docset/winserver2022-ps/hyper-v/Remove-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Remove-VMGpuPartitionAdapter.md @@ -2,7 +2,7 @@ description: Removes an assigned GPU partition from a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/remove-vmgpupartitionadapter?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Remove-VMGpuPartitionAdapter @@ -16,30 +16,36 @@ Removes an assigned GPU partition from a virtual machine. ## SYNTAX ### VMName (Default) + ``` Remove-VMGpuPartitionAdapter [-CimSession ] [-ComputerName ] - [-Credential ] [-VMName] [-Passthru] [-AdapterId ] [-WhatIf] [-Confirm] - [] + [-Credential ] [-VMName] [-Passthru] [-AdapterId ] [-WhatIf] + [-Confirm] [] ``` ### VMObject + ``` -Remove-VMGpuPartitionAdapter [-VM] [-Passthru] [-AdapterId ] [-WhatIf] [-Confirm] - [] +Remove-VMGpuPartitionAdapter [-VM] [-Passthru] [-AdapterId ] [-WhatIf] + [-Confirm] [] ``` ### Object + ``` -Remove-VMGpuPartitionAdapter [-VMGpuPartitionAdapter] [-Passthru] [-WhatIf] - [-Confirm] [] +Remove-VMGpuPartitionAdapter [-VMGpuPartitionAdapter] [-Passthru] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The 'Remove-VMGpuPartitionAdapter' cmdlet removes an assigned graphic processing unit partition from a virtual machine and releases that partition back to the host GPU. + +The `Remove-VMGpuPartitionAdapter` cmdlet removes an assigned graphic processing unit partition from +a virtual machine and releases that partition back to the host GPU. ## EXAMPLES ### Example 1 + ```powershell $testvm = Get-VM "TestVM" Remove-VMGpuPartitionAdapter -VM $testvm @@ -48,6 +54,7 @@ Remove-VMGpuPartitionAdapter -VM $testvm This example removes a partition assigned to a specific VM object. ### Example 2 + ```powershell $testvm = Get-VM "TestVM" $GPUpartition = Get-VMGpuPartitionAdapter -VM $testvm @@ -59,7 +66,8 @@ This example removes a specific partition object from a specific VM. ## PARAMETERS ### -AdapterId -This is a VM's GPU partition identification number used to remove a GPU from a VM. + +This is a VM's GPU partition identification number used to remove a GPU from a VM. ```yaml Type: String @@ -74,9 +82,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -91,8 +101,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer.Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer.Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -107,7 +119,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -122,6 +136,7 @@ Accept wildcard characters: False ``` ### -Passthru + Returns an object for each process that the cmdlet started. ```yaml @@ -137,6 +152,7 @@ Accept wildcard characters: False ``` ### -VM + Specifies the virtual machine whose virtual network adapters are to be retrieved. The asterisk (`*`) is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. @@ -154,7 +170,8 @@ Accept wildcard characters: False ``` ### -VMGpuPartitionAdapter -GPU partition object obtained from 'Get-VMGpuPartitionAdapter'. + +GPU partition object obtained from `Get-VMGpuPartitionAdapter`. ```yaml Type: VMGpuPartitionAdapter[] @@ -169,6 +186,7 @@ Accept wildcard characters: False ``` ### -VMName + Specifies the name of the virtual machine whose network adapters are to be retrieved. ```yaml @@ -184,6 +202,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -199,8 +218,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -215,7 +234,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -230,3 +253,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) + +- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) + +- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md index e6311979a5..58446c4185 100644 --- a/docset/winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md @@ -2,7 +2,7 @@ description: Assigns a partition of a GPU to a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/set-vmgpupartitionadapter?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Set-VMGpuPartitionAdapter @@ -16,44 +16,51 @@ Assigns a partition of a GPU to a virtual machine. ## SYNTAX ### VMName (Default) + ``` Set-VMGpuPartitionAdapter [-CimSession ] [-ComputerName ] [-Credential ] [-VMName] [-Passthru] [-AdapterId ] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ### VMObject + ``` Set-VMGpuPartitionAdapter [-VM] [-Passthru] [-AdapterId ] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ### Object + ``` Set-VMGpuPartitionAdapter [-VMGpuPartitionAdapter] [-Passthru] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The 'Set-VMGpuPartitionAdapter' cmdlet assigns a partition of a GPU to a virtual machine. Running the command against a virtual machine assigns a full partition. Additional parameters exist to assign more specific options to a VM. + +The `Set-VMGpuPartitionAdapter` cmdlet assigns a partition of a GPU to a virtual machine. Running +the command against a virtual machine assigns a full partition. Additional parameters exist to +assign more specific options to a VM. ## EXAMPLES ### Example 1 + ```powershell -$vm = get-vm test +$vm = Get-VM "Test" Set-VMGpuPartitionAdapter -VM $vm ``` @@ -62,6 +69,7 @@ This example assign a partition to a VM passing a VM object. ## PARAMETERS ### -AdapterId + A VM's GPU partition identification number used to display the GPU information assigned to a VM. ```yaml @@ -77,8 +85,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -93,9 +104,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -110,8 +122,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. -The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -126,7 +139,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionCompute -The maximum number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -141,7 +156,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionDecode -The maximum number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -156,7 +173,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionEncode -The maximum number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -171,6 +190,7 @@ Accept wildcard characters: False ``` ### -MaxPartitionVRAM + The maximum VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -186,7 +206,9 @@ Accept wildcard characters: False ``` ### -MinPartitionCompute -The minimum number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -201,7 +223,9 @@ Accept wildcard characters: False ``` ### -MinPartitionDecode -The minimum number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -216,7 +240,9 @@ Accept wildcard characters: False ``` ### -MinPartitionEncode -The minimum number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -231,6 +257,7 @@ Accept wildcard characters: False ``` ### -MinPartitionVRAM + The minimum VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -246,7 +273,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionCompute -The optimal number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -261,7 +290,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionDecode -The optimal number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -276,7 +307,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionEncode -The optimal number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -291,6 +324,7 @@ Accept wildcard characters: False ``` ### -OptimalPartitionVRAM + The optimal VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -306,6 +340,7 @@ Accept wildcard characters: False ``` ### -Passthru + Returns an object for each process that the cmdlet started. ```yaml @@ -321,6 +356,7 @@ Accept wildcard characters: False ``` ### -VM + Specifies the virtual machine whose virtual network adapters are to be retrieved. The asterisk (`*`) is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. @@ -338,7 +374,8 @@ Accept wildcard characters: False ``` ### -VMGpuPartitionAdapter -GPU partition object obtained from 'Get-VMGpuPartitionAdapter'. + +GPU partition object obtained from `Get-VMGpuPartitionAdapter`. ```yaml Type: VMGpuPartitionAdapter[] @@ -353,6 +390,7 @@ Accept wildcard characters: False ``` ### -VMName + Specifies the name of the virtual machine whose network adapters are to be retrieved. ```yaml @@ -368,6 +406,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -383,8 +422,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -399,7 +438,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -416,3 +459,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) + +- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) + +- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) From eb2401f5f1b80e08a19f9147946d4644c35df9ea Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 18 Jun 2024 14:04:19 -0400 Subject: [PATCH 19/98] Minor edit --- .../hyper-v/Add-VMGpuPartitionAdapter.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md index 59ee2f6747..a94f869a7c 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md @@ -23,7 +23,8 @@ Add-VMGpuPartitionAdapter [-CimSession ] [-ComputerName [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ### VMObject @@ -33,12 +34,14 @@ Add-VMGpuPartitionAdapter [-VM] [-Passthru] [-InstancePath ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The `Add-VMGpuPartitionAdapter` cmdlet adds a GPU partition adapter to a virtual machine. With no parameter, it assigns a full partition from an assignable GPU to a VM. +The `Add-VMGpuPartitionAdapter` cmdlet adds a GPU partition adapter to a virtual machine. With no +parameter, it assigns a full partition from an assignable GPU to a VM. ## EXAMPLES From 10e0d914579489799a14e5cb5d966ea7dab53d11 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 18 Jun 2024 14:20:21 -0400 Subject: [PATCH 20/98] Updated hyperlinks --- docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md | 4 ++-- docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md | 4 ++-- docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md index 2158849971..d09e4fbf32 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md @@ -270,6 +270,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Get-VMAssignableDevice](Get-VMAssignableDevice.md) +- [Get-VMAssignableDevice](get-vmassignabledevice.md) -- [Remove-VMAssignableDevice](Remove-VMAssignableDevice.md) +- [Remove-VMAssignableDevice](remove-vmassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md index e62f6543e7..8a2ef945df 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md @@ -189,6 +189,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMAssignableDevice](Add-VMAssignableDevice.md) +- [Add-VMAssignableDevice](add-vmassignabledevice.md) -- [Remove-VMAssignableDevice](Remove-VMAssignableDevice.md) +- [Remove-VMAssignableDevice](remove-vmassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md index 6055887121..31f45152d7 100644 --- a/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md @@ -239,6 +239,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMAssignableDevice](Add-VMAssignableDevice.md) +- [Add-VMAssignableDevice](add-vmassignabledevice.md) -- [Get-VMAssignableDevice](Get-VMAssignableDevice.md) +- [Get-VMAssignableDevice](get-vmassignabledevice.md) From 3f08ba4add34e8ea492f2f537963855ffec8deaa Mon Sep 17 00:00:00 2001 From: "Steve DiAcetis (MSFT)" <52939067+SteveDiAcetis@users.noreply.github.com> Date: Fri, 28 Jun 2024 12:49:22 -0700 Subject: [PATCH 21/98] Update Get-WindowsReservedStorageState.md Fixing example, it fails with -Online. --- docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md b/docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md index ed7c3ff534..d993d4eec0 100644 --- a/docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md +++ b/docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md @@ -24,7 +24,7 @@ Gets the current state of reserved storage. This command is supported with the o ### Example 1 ```powershell -PS C:\> Get-WindowsReservedStorageState -Online +PS C:\> Get-WindowsReservedStorageState ``` This command gets the Windows reserved storage state on the local host. From 0ef629c7553637806686ed131682ffcf51318971 Mon Sep 17 00:00:00 2001 From: "Steve DiAcetis (MSFT)" <52939067+SteveDiAcetis@users.noreply.github.com> Date: Mon, 1 Jul 2024 11:30:13 -0700 Subject: [PATCH 22/98] Update Get-WindowsReservedStorageState.md --- docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md b/docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md index d993d4eec0..586d6c1108 100644 --- a/docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md +++ b/docset/winserver2022-ps/dism/Get-WindowsReservedStorageState.md @@ -18,7 +18,7 @@ Get-WindowsReservedStorageState [-LogPath ] [-ScratchDirectory ] ``` ## DESCRIPTION -Gets the current state of reserved storage. This command is supported with the online Windows image. +Gets the current state of reserved storage. This command is only supported with the online Windows image. ## EXAMPLES From afcaccb1b009fdf4c364cb667ae41afe5b5cb711 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 2 Jul 2024 16:53:17 -0400 Subject: [PATCH 23/98] Updated new CAU cmdlets & parameters --- .../Add-CauClusterRole.md | 377 +++++++++++--- .../Get-CauDeviceInfoForFeatureUpdates.md | 133 +++++ .../Get-ClusterlessCauRun.md | 103 ++++ .../clusterawareupdating/Invoke-CauRun.md | 460 ++++++++++++++---- .../clusterawareupdating/Invoke-CauScan.md | 134 +++-- .../Invoke-ClusterlessCauRun.md | 454 +++++++++++++++++ .../Save-CauDebugTrace.md | 37 +- .../Set-CauClusterRole.md | 412 ++++++++++++---- 8 files changed, 1785 insertions(+), 325 deletions(-) create mode 100644 docset/winserver2025-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md create mode 100644 docset/winserver2025-ps/clusterawareupdating/Get-ClusterlessCauRun.md create mode 100644 docset/winserver2025-ps/clusterawareupdating/Invoke-ClusterlessCauRun.md diff --git a/docset/winserver2025-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2025-ps/clusterawareupdating/Add-CauClusterRole.md index 76b7ae0a82..41b408ea08 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2025-ps/clusterawareupdating/Add-CauClusterRole.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: ClusterAwareUpdating.dll-Help.xml Module Name: ClusterAwareUpdating -ms.date: 09/27/2022 +ms.date: 07/01/2024 online version: https://learn.microsoft.com/powershell/module/clusterawareupdating/add-cauclusterrole?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Add-CauClusterRole @@ -23,10 +23,14 @@ Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] - [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] - [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] - [-SuspendClusterNodeTimeoutMinutes ] [[-ClusterName] ] [[-Credential] ] - [-Force] [-WhatIf] [-Confirm] [] + [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] + [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] + [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] + [-SuspendRetriesPerNode ] [-WaitForStorageRepairTimeoutMinutes ] [-ForcePauseNoDrain] + [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] + [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [-AttemptSoftReboot] + [-RebootMode ] [[-ClusterName] ] [[-Credential] ] [-Force] + [-WhatIf] [-Confirm] [] ``` ### Weekly @@ -39,8 +43,27 @@ Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] - [-SuspendClusterNodeTimeoutMinutes ] [[-ClusterName] ] [[-Credential] ] - [-Force] [-WhatIf] [-Confirm] [] + [-SuspendClusterNodeTimeoutMinutes ] [-SuspendRetriesPerNode ] + [-WaitForStorageRepairTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] +``` + +### Once + +``` +Add-CauClusterRole [-VirtualComputerObjectName ] [-GroupName ] [-RunOnce] + [-CauPluginName ] [-CauPluginArguments ] [-MaxFailedNodes ] + [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] + [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] + [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] + [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] + [-SuspendClusterNodeTimeoutMinutes ] [-SuspendRetriesPerNode ] + [-WaitForStorageRepairTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -50,9 +73,9 @@ the self-updating functionality to the specified cluster. When the CAU clustered to a cluster, the failover cluster can update itself on the schedule that is specified by the user, without requiring an external computer to coordinate the cluster updating process. -To run this cmdlet, Windows PowerShell® remoting must be enabled on each node. To do this, run the -`Enable-PSRemoting` cmdlet. In addition, ensure that the Windows Remote Management - Compatibility -Mode (HTTP-In) firewall exception is enabled on each node. +To run this cmdlet, Windows PowerShell remoting must be enabled on each node. To do this, run the +`Enable-PSRemoting` cmdlet. In addition, ensure that the **Windows Remote Management - Compatibility +Mode (HTTP-In)** firewall exception is enabled on each node. ## EXAMPLES @@ -75,14 +98,14 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called CONTOSO-FC1. +This command adds the CAU clustered role, using a default name, on the cluster called `CONTOSO-FC1`. The CAU clustered role is configured to perform Updating Runs on Tuesdays and Saturdays on the -second and fourth weeks of each month. In an Updating Run, the maximum number of failed nodes is two -and the maximum number of retries per node is two. A script called verifyupdatesinstalled.ps1 runs -on each node after it has been fully updated. Before an Updating Run can begin, all the nodes of -that cluster must be running. If it isn't already enabled, the Remote Shutdown Windows Firewall -rule group will be enabled on each cluster node. Because the command uses the **Force** parameter, the -cmdlet runs without displaying confirmation prompts. +second and fourth weeks of each month. In an Updating Run, the maximum number of failed nodes is +two and the maximum number of retries per node is two. A script called `verifyupdatesinstalled.ps1` +runs on each node after it has been fully updated. Before an Updating Run can begin, all the nodes +of that cluster must be running. If it isn't already enabled, the Remote Shutdown Windows Firewall +rule group will be enabled on each cluster node. Because the command uses the **Force** parameter, +the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -103,7 +126,7 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called CONTOSO-FC1. +This command adds the CAU clustered role, using a default name, on the cluster called `CONTOSO-FC1`. The CAU clustered role is configured to perform Updating Runs on Tuesdays and Saturdays at an interval of every three weeks. In an Updating Run, the maximum number of failed nodes is two and the maximum number of retries per node is two. Updating Runs can begin even when the nodes of the @@ -131,9 +154,9 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called CONTOSO-FC1. +This command adds the CAU clustered role, using a default name, on the cluster called `CONTOSO-FC1`. The CAU clustered role is configured to perform updates using the **Microsoft.WindowsUpdatePlugin** -plug-in with the optional **IncludeRecommendedUpdates** parameter set to True, and using the +plug-in with the optional **IncludeRecommendedUpdates** parameter set to `True`, and using the **Microsoft.HotfixPlugin plug-in** using the hotfix root folder `\\CauHotfixSrv\shareName` and the default hotfix configuration file. If a failure occurs during the installation of updates on a node by **Microsoft.WindowsUpdatePlugin**, updates are applied by **Microsoft.HotfixPlugin plug-in**. If @@ -146,9 +169,29 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ## PARAMETERS +### -AttemptSoftReboot + +Indicates that the CAU clustered role attempts a Kernel Soft Reboot (KSR) for the failover cluster. + +KSR bypasses BIOS/firmware initialization. You can only use KSR for updates that do not require a +BIOS/firmware initialization. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -CauPluginArguments -Specifies an array of name=value pairs (arguments) for each updating plug-in to use. +Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + For instance, to specify a Domain argument for one plug-in: - `@{Domain=Domain.local}` You can specify multiple pairs in a set separated with semicolons. @@ -171,10 +214,9 @@ The following arguments are optional: - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). + [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). -For the **Microsoft.HotfixPlugin** plug-in. -the following argument is required: +For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a structure that contains the updates to apply and that contains the hotfix configuration file @@ -183,15 +225,15 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled for either SMB signing or SMB Encryption. -- **DisableAclChecks=\**: Boolean value to indicate that the plug-in checks for sufficient - permissions on the hotfix root folder and the hotfix configuration file. If not specified, the - default value is False. +- **DisableAclChecks=\**: Boolean value to indicate that the plug-in will check for + sufficient permissions on the hotfix root folder and the hotfix configuration file. If not + specified, the default value is False. - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfigFile.xml is used. For more information about required and optional + default name DefaultHotfixConfig.xml is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see - [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] @@ -212,7 +254,7 @@ values separated with commas. The default is the Microsoft.WindowsUpdatePlugin p coordinates the Windows Update Agent software resident on each cluster node, the same software that is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with CAU, see -[How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +[How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: String[] @@ -247,10 +289,10 @@ Accept wildcard characters: False ### -ConfigurationName Specifies the Windows PowerShell session configuration that defines the session in which scripts, -specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and can -limit the cmdlets that are available to be run. If either a pre-update or post-update script is +specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and +can limit the cmdlets that are available to be run. If either a pre-update or post-update script is specified but a configuration name isn't specified, then the default session configuration that is -built into Windows PowerShell® is used. +built into Windows PowerShell is used. ```yaml Type: String @@ -275,7 +317,7 @@ Aliases: cf Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` @@ -298,8 +340,8 @@ Accept wildcard characters: False ### -DaysOfWeek -Specifies the days of the week on which the updating task will be triggered. -Multiple values can be specified either separated with commas or as a hexadecimal sum. +Specifies the days of the week on which the updating task will be triggered. Multiple values can be +specified either separated with commas or as a hexadecimal sum. The acceptable values for this parameter are: @@ -313,7 +355,7 @@ The acceptable values for this parameter are: ```yaml Type: Weekdays -Parameter Sets: (All) +Parameter Sets: MonthlyDayOfWeek, Weekly Aliases: Accepted values: None, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday @@ -326,15 +368,17 @@ Accept wildcard characters: False ### -EnableFirewallRules -Indicates that the cmdlet enables the Remote Shutdown Windows Firewall rule group on each cluster -node, if it isn't already enabled. If the **EnableFirewallRules** parameter is specified, CAU will -also automatically re-enable the Remote Shutdown rule group each time the CAU clustered role -performs an Updating Run, in case the rules are disabled manually in the intervening time. Enabling -this rule group permits inbound communication to each cluster node during each Updating Run that -allows CAU to shut down and restart the node remotely (if the installation of an update requires a -restart). If Windows Firewall is in use on the cluster nodes and the rule group isn't enabled, the -Updating Run will fail. The Remote Shutdown Windows Firewall rule group isn't enabled when it will -conflict with Group Policy settings that are configured for Windows Firewall. +Indicates that the cmdlet enables the **Remote Shutdown** Windows Firewall rule group on each +cluster node, if it isn't already enabled. If the **EnableFirewallRules** parameter is specified, +CAU will also automatically re-enable the **Remote Shutdown** rule group each time the CAU +clustered role performs an Updating Run, in case the rules are disabled manually in the intervening +time. + +Enabling this rule group permits inbound communication to each cluster node during each Updating +Run that allows CAU to shut down and restart the node remotely (if the installation of an update +requires a restart). If Windows Firewall is in use on the cluster nodes and the rule group isn't +enabled, the Updating Run will fail. The Remote Shutdown Windows Firewall rule group isn't enabled +when it will conflict with Group Policy settings that are configured for Windows Firewall. ```yaml Type: SwitchParameter @@ -360,7 +404,7 @@ The acceptable values for this parameter are: - Immediate - Policy -The default value is Immediate. +The default value is **Immediate**. ```yaml Type: FailbackType @@ -391,6 +435,60 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ForcePauseAndDrain + +Indicates that the CAU cluster role forces cluster nodes to pause and drain roles. + +A forced drain moves the roles off of the draining node even if the group cannot move. A group +might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseDrainAndReboot + +Indicates that the CAU cluster role forces cluster nodes to pause, drain roles, and restart. + +A forced drain moves the roles off of the draining node even if the group cannot move. A group +might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseNoDrain + +Indicates that the CAU cluster role forces cluster nodes to pause. The nodes are not drained. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -GroupName Specifies the NetBIOS name of the resource group for the CAU clustered role. @@ -409,9 +507,8 @@ Accept wildcard characters: False ### -IntervalWeeks -Specifies the interval between weeks when the task will be triggered. -An interval of 1 produces a weekly schedule. -An interval of 2 produces an every-other week schedule. +Specifies the interval between weeks when the task will be triggered. An interval of 1 produces a +weekly schedule. An interval of 2 produces an every-other week schedule. ```yaml Type: Int32 @@ -427,10 +524,9 @@ Accept wildcard characters: False ### -MaxFailedNodes -Specifies the maximum number of nodes on which updating can fail. -If one more than this number of nodes fails, then the Updating Run is stopped. -The range is from 0 through 1, less than the number of cluster nodes. -The default for most clusters is approximately one-third of the number of nodes. +Specifies the maximum number of nodes on which updating can fail. If one more than this number of +nodes fails, then the Updating Run is stopped. The range is from 0 through 1, less than the number +of cluster nodes. The default for most clusters is approximately one-third of the number of nodes. ```yaml Type: Int32 @@ -446,10 +542,9 @@ Accept wildcard characters: False ### -MaxRetriesPerNode -Specifies the maximum number of times that the update process attempts to run. -This includes any pre-update and post-update scripts. -The update process is retried per node. -The maximum is 64 and the default is 3. +Specifies the maximum number of times that the update process attempts to run. This includes any +pre-update and post-update scripts. The update process is retried per node. The maximum is **64** +and the default is **3**. ```yaml Type: Int32 @@ -479,11 +574,28 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -OsRollingUpgrade + +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without +stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -PostUpdateScript Specifies the path and file name for a Windows PowerShell script to run on each node after updating finishes, and just after the node is brought out of Maintenance mode. The file name extension must -be .ps1 and the total length of the path plus the file name must be no longer than 260 characters. +be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, or at a highly available network share, to ensure that the script is always accessible to all the cluster nodes. @@ -502,7 +614,7 @@ Accept wildcard characters: False ### -PreUpdateScript Specifies the path and file name for a Windows PowerShell script to run on each node before updating -begins, and before the node is put into Maintenance mode. The file name extension must be .ps1 and +begins, and before the node is put into Maintenance mode. The file name extension must be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, or at a highly available network share, to ensure that the script is always accessible to all the cluster nodes. If a @@ -520,6 +632,30 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RebootMode + +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- ClusProp +- FullReboot +- SoftReboot +- PluginCustomReboot +- OrchestratorDefault + +```yaml +Type: RebootType +Parameter Sets: (All) +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RebootTimeoutMinutes Specifies the time in minutes that CAU allows for the restarting of a node. If the restart doesn't @@ -554,6 +690,23 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RunOnce + +Specifies that the CAU run should only be performed once, rather than on a recurring schedule. This +can be useful if you only need to perform a one-time update of your cluster nodes. + +```yaml +Type: SwitchParameter +Parameter Sets: Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RunPluginsSerially Indicates that the cmdlet CAU scans each cluster node for applicable updates and stages the updates @@ -599,13 +752,47 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -SiteAwareUpdatingOrder + +Specifies the order in which the CAU cluster role updates cluster nodes. + +By default, CAU selects the order of nodes to update based on the level of activity. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipUpdateChecks + +Indicates that the CAU cluster role skips update checks. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -StartDate Specifies the earliest date on which the Updating Run can be triggered. ```yaml Type: DateTime -Parameter Sets: (All) +Parameter Sets: MonthlyDayOfWeek, Weekly Aliases: Required: False @@ -640,9 +827,10 @@ Accept wildcard characters: False ### -StopOnPluginFailure Indicates that this cmdlet coordinates subsequent updates on the node when plug-ins are stopped. -When multiple plug-ins are used during an updating run, by default, a failure by one plug-in doesn't affect the application of updates on a node by other plug-ins. This parameter is valid only when -multiple plug-ins are specified in the **CauPluginName** parameter. If a single plug-in is specified, -a warning appears. +When multiple plug-ins are used during an updating run, by default, a failure by one plug-in +doesn't affect the application of updates on a node by other plug-ins. This parameter is valid only +when multiple plug-ins are specified in the **CauPluginName** parameter. If a single plug-in is +specified, a warning appears. ```yaml Type: SwitchParameter @@ -662,8 +850,8 @@ Specifies the maximum amount of time CAU should wait for the `Suspend-ClusterNod succeed if the underlying clustered space is in degraded condition. If `Suspend-ClusterNode` fails with ERROR_CLUSTER_SPACE_DEGRADED error, CAU will keep retrying for -**SuspendClusterNodeTimeoutMinutes** or suspend the call if the command succeeds. The retries for this -error don't count towards the **MaxRetriesPerNode** parameter set by the user. +**SuspendClusterNodeTimeoutMinutes** or suspend the call if the command succeeds. The retries for +this error don't count towards the **MaxRetriesPerNode** parameter set by the user. The timeout value is per cluster node. So CAU could potentially spend the amount of time specified for this value for every node in the cluster in the worst case. @@ -680,6 +868,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -SuspendRetriesPerNode + +Specifies the number of times to retry suspending a node before moving on to the next node. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -VirtualComputerObjectName Specifies the name of a pre-staged virtual computer object that is used by the CAU clustered role. @@ -701,6 +905,23 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -WaitForStorageRepairTimeoutMinutes + +Specifies the amount of time in minutes to wait for storage to be repaired on a node before +continuing with an update. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WarnAfter Specifies the time in minutes after which a warning will be logged if the Updating Run (including @@ -721,8 +942,8 @@ Accept wildcard characters: False ### -WeeksOfMonth -Specifies the weeks of the month when the Updating Run should be run. -The value `5` represents the last week of the month. +Specifies the weeks of the month when the Updating Run should be run. The value `5` represents the +last week of the month. ```yaml Type: Int32[] @@ -738,8 +959,7 @@ Accept wildcard characters: False ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet isn't run. +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -748,7 +968,7 @@ Aliases: wi Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` @@ -758,7 +978,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -766,19 +986,18 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### None +### System.Object ## NOTES ## RELATED LINKS -[Disable-CauClusterRole](./Disable-CauClusterRole.md) - -[Enable-CauClusterRole](./Enable-CauClusterRole.md) +[Disable-CauClusterRole](disable-cauclusterrole.md) -[Get-CauClusterRole](./Get-CauClusterRole.md) +[Enable-CauClusterRole](enable-cauclusterrole.md) -[Remove-CauClusterRole](./Remove-CauClusterRole.md) +[Get-CauClusterRole](get-cauclusterrole.md) -[Set-CauClusterRole](./Set-CauClusterRole.md) +[Remove-CauClusterRole](remove-cauclusterrole.md) +[Set-CauClusterRole](set-cauclusterrole.md) diff --git a/docset/winserver2025-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md b/docset/winserver2025-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md new file mode 100644 index 0000000000..d912749f08 --- /dev/null +++ b/docset/winserver2025-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md @@ -0,0 +1,133 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: ClusterAwareUpdating.dll-Help.xml +Module Name: ClusterAwareUpdating +ms.date: 07/01/2024 +online version: https://learn.microsoft.com/powershell/module/clusterawareupdating/get-caudeviceinfoforfeatureupdates?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-CauDeviceInfoForFeatureUpdates +--- + +# Get-CauDeviceInfoForFeatureUpdates + +## SYNOPSIS +Retrieves device information for feature updates from a specified directory. + +## SYNTAX + +``` +Get-CauDeviceInfoForFeatureUpdates [[-ClusterName] ] [-Credential ] + -PathToDirectory [-PathToDeploymentCab ] [] +``` + +## DESCRIPTION + +The `Get-CauDeviceInfoForFeatureUpdates` cmdlet retrieves device information for feature updates +from a specified directory. + +## EXAMPLES + +### Example 1 + +```powershell +$parameters = @{ +ClusterName = "CONTOSO-FC1" +PathToDirectory = "C:\Updates" +PathToDeploymentCab = "C:\Deployment\FeatureUpdate.cab" +} +Get-CauDeviceInfoForFeatureUpdates $parameters +``` + +This command retrieves device information for feature updates from the `C:\Updates` directory for +the cluster named `CONTOSO-FC1`. It also specifies the path to the deployment cab file that will be +created for the update in `C:\Deployment\FeatureUpdate.cab`. + +## PARAMETERS + +### -ClusterName + +Specifies the name of the cluster on which to create the CAU clustered role. This parameter is only +required when this cmdlet isn't run on a failover cluster node, or this cmdlet is used to reference +a failover cluster different from where the cmdlet is run. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies the administrative credentials for the target cluster. + +```yaml +Type: PSCredential +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PathToDeploymentCab + +Specifies the path to the deployment cab file that will be created for the update. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PathToDirectory + +Specifies the path to the directory that contains the device information files. This parameter is +required. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### System.String + +### Microsoft.ClusterAwareUpdating.ActivityIdMap + +## NOTES + +## RELATED LINKS diff --git a/docset/winserver2025-ps/clusterawareupdating/Get-ClusterlessCauRun.md b/docset/winserver2025-ps/clusterawareupdating/Get-ClusterlessCauRun.md new file mode 100644 index 0000000000..4f2abaeaf9 --- /dev/null +++ b/docset/winserver2025-ps/clusterawareupdating/Get-ClusterlessCauRun.md @@ -0,0 +1,103 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: ClusterAwareUpdating.dll-Help.xml +Module Name: ClusterAwareUpdating +ms.date: 07/01/2024 +online version: https://learn.microsoft.com/powershell/module/clusterawareupdating/get-clusterlesscaurun?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-ClusterlessCauRun +--- + +# Get-ClusterlessCauRun + +## SYNOPSIS +Retrieves information about a Cluster-Aware Updating (CAU) run not associated with a cluster. + +## SYNTAX + +### DefaultParamSet (Default) + +``` +Get-ClusterlessCauRun [-Credential ] [] +``` + +### ShowClusterNodeState + +``` +Get-ClusterlessCauRun [-Credential ] [-ShowClusterNodeState] [] +``` + +## DESCRIPTION + +The `Get-ClusterlessCauRun` cmdlet retrieves information about a Cluster-Aware Updating (CAU) run +that is not associated with a cluster. + +## EXAMPLES + +### Example 1 + +```powershell +Get-ClusterlessCauRun +``` + +This example displays information about the current CAU run, including the status of each node that +is being updated. + +## PARAMETERS + +### -Credential + +Specifies the administrative credentials for the target cluster. + +```yaml +Type: PSCredential +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ShowClusterNodeState + +Displays detailed information about the state of each node in the CAU run. + +```yaml +Type: SwitchParameter +Parameter Sets: ShowClusterNodeState +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### Microsoft.ClusterAwareUpdating.CauWmiObject + +### Microsoft.ClusterAwareUpdating.ClusterlessCauRun + +### Microsoft.ClusterAwareUpdating.RunState + +## NOTES + +## RELATED LINKS + +[Invoke-ClusterlessCauRun](invoke-clusterlesscaurun.md) diff --git a/docset/winserver2025-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2025-ps/clusterawareupdating/Invoke-CauRun.md index 6a185b4894..835a3d20fc 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2025-ps/clusterawareupdating/Invoke-CauRun.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: ClusterAwareUpdating.dll-Help.xml Module Name: ClusterAwareUpdating -ms.date: 09/27/2022 +ms.date: 07/01/2024 online version: https://learn.microsoft.com/powershell/module/clusterawareupdating/invoke-caurun?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Invoke-CauRun @@ -11,7 +11,7 @@ title: Invoke-CauRun # Invoke-CauRun ## SYNOPSIS -Performs a scan of cluster nodes for applicable updates and installs those updates through an updating run on the specified cluster. +Performs a scan of cluster nodes for applicable updates and installs those updates through an Updating Run on the specified cluster. ## SYNTAX @@ -22,41 +22,62 @@ Invoke-CauRun [-MaxFailedNodes ] [-MaxRetriesPerNode ] [-NodeOrder [-PreUpdateScript ] [-PostUpdateScript ] [-ConfigurationName ] [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-EnableFirewallRules] - [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-Force] [[-ClusterName] -] [[-CauPluginName] ] [[-Credential] ] - [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] [-WhatIf] - [-Confirm] [] + [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] + [-SuspendRetriesPerNode ] [-WaitForStorageRepairTimeoutMinutes ] [-Force] + [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] + [-ForceSelfUpdate] [-SiteAwareUpdatingOrder ] [[-ClusterName] ] + [-AttemptSoftReboot] [-CauPluginName ] [-Credential ] + [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] + [-OsRollingUpgrade] [-RebootMode ] [-WhatIf] [-Confirm] [] ``` ### RecoverParamSet ``` -Invoke-CauRun [-ForceRecovery] [-Force] [[-ClusterName] ] [[-Credential] ] - [-WhatIf] [-Confirm] [] +Invoke-CauRun [-ForceRecovery] [-ClearCorruptReports] [-Force] [-ForcePauseNoDrain] + [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-ForceSelfUpdate] + [[-ClusterName] ] [-Credential ] [-WhatIf] [-Confirm] [] +``` + +### SuspendNodeParamSet + +``` +Invoke-CauRun -SuspendNode [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-ForceSelfUpdate] [[-ClusterName] ] + [-Credential ] [-WhatIf] [-Confirm] [] +``` + +### ResumeNodeParamSet + +``` +Invoke-CauRun -ResumeNode [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-ForceSelfUpdate] [[-ClusterName] ] + [-Credential ] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION The `Invoke-CauRun` cmdlet performs a scan of cluster nodes for applicable updates and installs -those updates through an updating run on the specified cluster. The updating run process includes +those updates through an Updating Run on the specified cluster. The Updating Run process includes the following: + - Scanning for and downloading applicable updates on each cluster node. - Moving currently running clustered roles off each cluster node. - Installing the updates on each cluster node. - Restarting cluster nodes if required by the installed updates. - Moving the clustered roles back to the original nodes. -- The updating run process also includes ensuring that quorum is maintained, checking for additional +- The Updating Run process also includes ensuring that quorum is maintained, checking for additional updates that can only be installed after the initial set of updates are installed, and saving a report of the actions taken. -To run this cmdlet with the **PostUpdateScript** or **PreUpdateScript** parameter, Windows PowerShell -remoting must be enabled on each node. To do this, run the `Enable-PSRemoting` cmdlet. In -addition, ensure that the **Windows Remote Management - Compatibility Mode (HTTP-In)** firewall +To run this cmdlet with the **PostUpdateScript** or **PreUpdateScript** parameter, Windows +PowerShell remoting must be enabled on each node. To do this, run the `Enable-PSRemoting` cmdlet. +In addition, ensure that the **Windows Remote Management - Compatibility Mode (HTTP-In)** firewall exception is enabled on each node. ## EXAMPLES -### Example 1: Preform a scan and a full updating run on the specified cluster +### Example 1: Perform a scan and a full Updating Run on the specified cluster ```powershell $parameters = @{ @@ -70,17 +91,17 @@ $parameters = @{ Invoke-CauRun @parameters ``` -This command performs a scan and a full updating run on the cluster named CONTOSO-FC1. This cmdlet -uses the **Microsoft.WindowsUpdatePlugin** plug-in and requires that all cluster nodes be online -before the running this cmdlet. In addition, this cmdlet allows no more than three retries per node -before marking the node as failed, and allows no more than one node to fail before marking the -entire updating run as failed. Because the command specifies the **Force** parameter, the cmdlet runs -without displaying confirmation prompts. +This command performs a scan and a full Updating Run on the cluster named `CONTOSO-FC1`. This +cmdlet uses the **Microsoft.WindowsUpdatePlugin** plug-in and requires that all cluster nodes be +online before the running this cmdlet. In addition, this cmdlet allows no more than three retries +per node before marking the node as failed, and allows no more than one node to fail before marking +the entire Updating Run as failed. Because the command specifies the **Force** parameter, the +cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). -### Example 2: Preform a scan and a full updating run on the specified cluster using multiple plug-ins +### Example 2: Perform a scan and full Updating Run on the specified cluster using multiple plug-ins ```powershell $parameters = @{ @@ -97,11 +118,11 @@ $parameters = @{ Invoke-CauRun @parameters ``` -This command performs a scan and a full updating run on the cluster named CONTOSO-FC1. This cmdlet +This command performs a scan and a full Updating Run on the cluster named `CONTOSO-FC1`. This cmdlet uses the **Microsoft.WindowsUpdatePlugin** plug-in with the default configuration, and the **Microsoft.HotfixPlugin** plug-in using the hotfix root folder `\\CauHotfixSrv\shareName` and the default hotfix configuration file. If it isn't already enabled, the **Remote Shutdown** Windows -Firewall rule group is enabled on each cluster node before the updating run. If a failure occurs +Firewall rule group is enabled on each cluster node before the Updating Run. If a failure occurs during the installation of updates on a node by **Microsoft.WindowsUpdatePlugin**, updates aren't applied by **Microsoft.HotfixPlugin plug-in**. If the installation of updates by **Microsoft.WindowsUpdatePlugin** requires a node to restart, the node restarts before @@ -111,64 +132,83 @@ parameter, the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). -### Example 3: Recover from a previous updating run that failed on the specified cluster +### Example 3: Recover from a previous Updating Run that failed on the specified cluster ```powershell -Invoke-CauRun -ClusterName "CONTOSO-FC1"-ForceRecovery -Force +Invoke-CauRun -ClusterName "CONTOSO-FC1" -ForceRecovery -Force ``` -This command recovers from a previous updating run that failed and left the cluster in a Locked -state for the cluster named CONTOSO-FC1. Because the command specifies the **Force** parameter, the -recovery is performed without confirmation prompts. +This command recovers from a previous Updating Run that failed and left the cluster in a Locked +state for the cluster named `CONTOSO-FC1`. Because the command specifies the **Force** parameter, +the recovery is performed without confirmation prompts. ## PARAMETERS +### -AttemptSoftReboot + +Indicates that command attempts a Kernel Soft Reboot (KSR) for the failover cluster. + +KSR bypasses BIOS/firmware initialization. You can only use KSR for updates that do not require a +BIOS/firmware initialization. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -CauPluginArguments -Specifies a set of name=value pairs for each updating plug-in to use. +Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + For instance, to specify a Domain argument for one plug-in: - `@{Domain=Domain.local}` You can specify multiple pairs in a set separated with semicolons. For instance: - `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** that you specify. If you specify arguments for more than one plug-in, provide - the sets of name=value pairs in the order that you pass values in **CauPluginName**, separated by - commas. For instance: + **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, + provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, + separated by commas. For instance: - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following arguments are optional: -- **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. -If not specified, the default value is **'False'**. --- A standard Windows Update Agent query string that specifies criteria used by the Windows Update -Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and -for a value, enclose the full query in quotation marks. If not specified, then the -**Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` - -For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in -and the criteria such as IsInstalled that can be included in the query strings, see -[IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). +- **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates + will be applied in addition to important updates on each node. If not specified, the default value + is False. +- A standard Windows Update Agent query string that specifies criteria used by the Windows Update + Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and + for a value, enclose the full query in quotation marks. If not specified, then the + **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more + information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the + criteria such as IsInstalled that can be included in the query strings, see + [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: -- **HotfixRootFolderPath**: The UNC path to a hotfix root folder in an SMB share with a structure - that contains the updates to apply and that contains the hotfix configuration file. +- **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a + structure that contains the updates to apply and that contains the hotfix configuration file The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: -- **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption is enforced for - data accessed from the SMB share. If not specified, the default value is False. To ensure the +- **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced + for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled for either SMB signing or SMB Encryption. -- **DisableAclChecks=\**: Boolean value to indicate that the plug-in checks for sufficient - permissions on the hotfix root folder and the hotfix configuration file. If not specified, the - default value is False. +- **DisableAclChecks=\**: Boolean value to indicate that the plug-in will check for + sufficient permissions on the hotfix root folder and the hotfix configuration file. If not + specified, the default value is False. - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. -- **HotfixConfigFileName=\**: Name for the hotfix configuration file. -If not specified, the default name DefaultHotfixConfig.xml is used. - -For more information about required and optional arguments for the **Microsoft.HotfixPlugin** -plug-in, see [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +- **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the + default name DefaultHotfixConfig.xml is used. For more information about required and optional + arguments for the **Microsoft.HotfixPlugin** plug-in, see + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] @@ -189,7 +229,7 @@ separated with commas. The default is the **Microsoft.WindowsUpdatePlugin** plug coordinates the Windows Update Agent software resident on each cluster node, the same software that is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with CAU, see -[How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +[How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: String[] @@ -197,7 +237,24 @@ Parameter Sets: DefaultParamSet Aliases: Required: False -Position: 1 +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ClearCorruptReports + +Specifies whether to clear any corrupt reports that were generated during a previous run of the +Cluster-Aware Updating (CAU) tool to recover from a failed or interrupted update run. + +```yaml +Type: SwitchParameter +Parameter Sets: RecoverParamSet +Aliases: + +Required: False +Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False @@ -250,7 +307,7 @@ Aliases: cf Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` @@ -265,7 +322,7 @@ Parameter Sets: (All) Aliases: Required: False -Position: 2 +Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False @@ -275,13 +332,14 @@ Accept wildcard characters: False Enables the **Remote Shutdown** Windows Firewall rule group on each cluster node, if it isn't already enabled. If the **EnableFirewallRules** parameter is specified, CAU automatically re-enables -the **Remote Shutdown** rule group each time the CAU clustered role performs an updating run, in -case the rules are disabled manually in the intervening time. Enabling this rule group permits -inbound communication to each cluster node during each updating run that allows CAU to shut down and -restart the node remotely (if the installation of an update requires a restart). If Windows Firewall -is in use on the cluster nodes and the rule group isn't enabled, the updating run will fail. The -**Remote Shutdown** Windows Firewall rule group isn't enabled when it will conflict with Group -Policy settings that are configured for Windows Firewall. +the **Remote Shutdown** rule group each time the CAU clustered role performs an Updating Run, in +case the rules are disabled manually in the intervening time. + +Enabling this rule group permits inbound communication to each cluster node during each updating +run that allows CAU to shut down and restart the node remotely (if the installation of an update +requires a restart). If Windows Firewall is in use on the cluster nodes and the rule group isn't +enabled, the Updating Run will fail. The **Remote Shutdown** Windows Firewall rule group isn't +enabled when it will conflict with Group Policy settings that are configured for Windows Firewall. ```yaml Type: SwitchParameter @@ -305,7 +363,7 @@ another node. The acceptable values for this parameter are: - Immediate - Policy -The default value is Immediate. +The default value is **Immediate**. ```yaml Type: FailbackType @@ -336,6 +394,60 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ForcePauseAndDrain + +Indicates that the command forces cluster nodes to pause and drain roles. + +A forced drain moves the roles off of the draining node even if the group cannot move. A group +might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseDrainAndReboot + +Indicates that the command forces cluster nodes to pause, drain roles, and restart. + +A forced drain moves the roles off of the draining node even if the group cannot move. A group +might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseNoDrain + +Indicates that the command forces cluster nodes to pause. The nodes are not drained. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -ForceRecovery Indicates that the cmdlet recovers from a previous failed run that left the cluster in a Locked @@ -356,12 +468,28 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ForceSelfUpdate + +Specifies whether to update the CAU plugin on the local computer before running the update. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -MaxFailedNodes -Specifies the maximum number of nodes on which updating can fail. -If one more than this number of nodes fails, then the updating run is stopped. -The range is from zero (0) through 1 less than the number of cluster nodes. -The default for most clusters is approximately one-third of the number of nodes. +Specifies the maximum number of nodes on which updating can fail. If one more than this number of +nodes fails, then the Updating Run is stopped. The range is from zero (0) through 1 less than the +number of cluster nodes. The default for most clusters is approximately one-third of the number of +nodes. ```yaml Type: Int32 @@ -378,7 +506,7 @@ Accept wildcard characters: False ### -MaxRetriesPerNode Specifies the maximum number of times that the update process (including any pre-update and -post-update scripts) is retried per node. The maximum is 64 and the default is 3. +post-update scripts) is retried per node. The maximum is **64** and the default is **3**. ```yaml Type: Int32 @@ -408,11 +536,28 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -OsRollingUpgrade + +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without +stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -PostUpdateScript Specifies the path and file name for a Windows PowerShell script to run on each node after updating finishes, and just after the node is brought out of Maintenance mode. The file name extension must -be .ps1 and the total length of the path plus the file name must be no longer than 260 characters. +be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, or at a highly available network share, to ensure that it is always accessible to all the cluster nodes. @@ -431,7 +576,7 @@ Accept wildcard characters: False ### -PreUpdateScript Specifies the path and file name for a Windows PowerShell script to run on each node before updating -begins, and before the node is put into Maintenance mode. The file name extension must be .ps1 and +begins, and before the node is put into Maintenance mode. The file name extension must be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, or at a highly available network share, to ensure that the script is always accessible to all the cluster nodes. If a @@ -449,10 +594,34 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RebootMode + +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- ClusProp +- FullReboot +- SoftReboot +- PluginCustomReboot +- OrchestratorDefault + +```yaml +Type: RebootType +Parameter Sets: DefaultParamSet +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RebootTimeoutMinutes Specifies the time in minutes that CAU allows for the restarting of a node. If the restart doesn't -complete within this time, then the updating run on that node is marked as failed. +complete within this time, then the Updating Run on that node is marked as failed. ```yaml Type: Int32 @@ -482,16 +651,32 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ResumeNode + +Specifies the name of a node in the cluster to resume updating if it was previously suspended. + +```yaml +Type: String +Parameter Sets: ResumeNodeParamSet +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RunPluginsSerially Indicates that CAU will scan each cluster node for applicable updates and stage the updates for each plug-in in the plug-in order passed into the **CauPluginName** parameter when multiple plug-ins are -used during an updating run. By default, CAU scans and stages the applicable updates for all +used during an Updating Run. By default, CAU scans and stages the applicable updates for all plug-ins in parallel. Regardless of the configuration of this parameter, CAU installs the applicable updates for each plug-in sequentially. -The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -509,11 +694,11 @@ Accept wildcard characters: False Indicates that CAU will shut down and restart a cluster node after each plug-in installs updates on the node, if the installation of an update by a plug-in requires a restart when multiple plug-ins -are used during an updating run. By default, during an updating run, all plug-ins complete the +are used during an Updating Run. By default, during an Updating Run, all plug-ins complete the installation of updates on a cluster node before the node restarts one time. -The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -527,11 +712,45 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -SiteAwareUpdatingOrder + +Specifies the order in which the command updates cluster nodes. + +By default, CAU selects the order of nodes to update based on the level of activity. + +```yaml +Type: String[] +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipUpdateChecks + +Indicates that the command skips update checks. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -StopAfter -Specifies the time in minutes after which the updating run is canceled if it hasn't completed. The +Specifies the time in minutes after which the Updating Run is canceled if it hasn't completed. The time span can be expressed in the standard ways available in Windows PowerShell, for instance, -01:30:00 represents one hour and thirty minutes. By default, the updating run is allowed an +01:30:00 represents one hour and thirty minutes. By default, the Updating Run is allowed an unlimited amount of time to complete. If pre-update or post-update scripts are specified, then the entire process of running scripts and @@ -553,11 +772,11 @@ Accept wildcard characters: False Indicates that if a failure occurs during the application of updates on a node by any plug-in, subsequent updates on the node that are coordinated by the remaining plug-ins are stopped when -multiple plug-ins are used during an updating run. By default, a failure by one plug-in doesn't +multiple plug-ins are used during an Updating Run. By default, a failure by one plug-in doesn't affect the application of updates on a node by other plug-ins. -The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -596,11 +815,60 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -SuspendNode + +Specifies the name of a node in the cluster to suspend updating. + +```yaml +Type: String +Parameter Sets: SuspendNodeParamSet +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SuspendRetriesPerNode + +Specifies the number of times to retry suspending a node before moving on to the next node. + +```yaml +Type: Int32 +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WaitForStorageRepairTimeoutMinutes + +Specifies the amount of time in minutes to wait for storage to be repaired on a node before +continuing with an update. + +```yaml +Type: Int32 +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WarnAfter -Specifies the time in minutes after which a warning is logged if the updating run, including any +Specifies the time in minutes after which a warning is logged if the Updating Run, including any pre-update and post-update scripts, hasn't completed. By default, no warning is logged, regardless -of the time taken by the updating run. +of the time taken by the Updating Run. ```yaml Type: TimeSpan @@ -616,8 +884,7 @@ Accept wildcard characters: False ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet isn't run. +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -626,7 +893,7 @@ Aliases: wi Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` @@ -636,7 +903,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -654,17 +921,16 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ### Microsoft.ClusterAwareUpdating.UpdateInfo -### Microsoft.ClusterAwareUpdating.UpdateInstallResult - ### Microsoft.ClusterAwareUpdating.UpdateStagingResult ## NOTES ## RELATED LINKS -[Add-CauClusterRole](./Add-CauClusterRole.md) +[Add-CauClusterRole](add-cauclusterrole.md) -[Get-CauRun](./Get-CauRun.md) +[Get-CauRun](get-caurun.md) -[Stop-CauRun](./Stop-CauRun.md) +[Invoke-CauScan](invoke-causcan.md) +[Stop-CauRun](stop-caurun.md) diff --git a/docset/winserver2025-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2025-ps/clusterawareupdating/Invoke-CauScan.md index 2e2af36bd6..59bd53ff87 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2025-ps/clusterawareupdating/Invoke-CauScan.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: ClusterAwareUpdating.dll-Help.xml Module Name: ClusterAwareUpdating -ms.date: 09/27/2022 +ms.date: 07/01/2024 online version: https://learn.microsoft.com/powershell/module/clusterawareupdating/invoke-causcan?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Invoke-CauScan @@ -11,15 +11,14 @@ title: Invoke-CauScan # Invoke-CauScan ## SYNOPSIS -Performs a scan of cluster nodes for applicable updates and gets a list of the initial set of -updates that are applied to each node in a specified cluster. +Performs a scan of cluster nodes for applicable updates and gets a list of the initial set of updates that are applied to each node in a specified cluster. ## SYNTAX ``` -Invoke-CauScan [[-ClusterName] ] [[-CauPluginName] ] [[-Credential] -] [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] - [] +Invoke-CauScan [[-ClusterName] ] [-AttemptSoftReboot] [-CauPluginName ] + [-Credential ] [-CauPluginArguments ] [-RunPluginsSerially] + [-StopOnPluginFailure] [-OsRollingUpgrade] [-RebootMode ] [] ``` ## DESCRIPTION @@ -43,7 +42,7 @@ Invoke-CauScan -ClusterName "CONTOSO-FC1" -CauPluginName "Microsoft.WindowsUpdat ``` This command gets a detailed list of the initial set of updates that would currently be applied to -each node in the cluster named CONTOSO-FC1. The list is based on the updates that would be applied +each node in the cluster named `CONTOSO-FC1`. The list is based on the updates that would be applied by the **Microsoft.WindowsUpdatePlugin** plug-in, which is the default plug-in. The preview list includes only an initial set of updates, and doesn't include updates that might become applicable only after the initial updates are installed. @@ -67,28 +66,48 @@ Invoke-CauScan $parameters -Credential $Cred ``` This example gets a detailed list of the initial set of updates that would currently be applied to -each node in the cluster named CONTOSO-FC1. The list is based on the updates that would be applied +each node in the cluster named `CONTOSO-FC1`. The list is based on the updates that would be applied by the **Microsoft.WindowsUpdatePlugin** plug-in, using a specified query string, and the **Microsoft.HotfixPlugin**, after the necessary hotfixes and the hotfix configuration file have been downloaded to `\\CauHotfixSrv\shareName`. This example also shows how to pass the administrative -credentials for cluster CONTOSO-FC1 to the cmdlet. +credentials for cluster `CONTOSO-FC1` to the cmdlet. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). ## PARAMETERS +### -AttemptSoftReboot + +Indicates that command assumes a Kernel Soft Reboot (KSR) for the failover cluster. + +KSR bypasses BIOS/firmware initialization. You can only use KSR for updates that do not require a +BIOS/firmware initialization. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -CauPluginArguments -Specifies a set of name=value pairs for each updating plug-in to use. -For instance, to specify a **Domain** argument for one plug-in: +Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + +For instance, to specify a Domain argument for one plug-in: - `@{Domain=Domain.local}` You can specify multiple pairs in a set separated with semicolons. For instance: - `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values into the **CauPluginName** - parameter, separated by commas. For instance: + provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, + separated by commas. For instance: - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. @@ -100,14 +119,12 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more + information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the + criteria such as IsInstalled that can be included in the query strings, see + [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). -For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in -and the criteria such as IsInstalled that can be included in the query strings, see -[IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). - -For the **Microsoft.HotfixPlugin** plug-in. -the following argument is required: +For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a structure that contains the updates to apply and that contains the hotfix configuration file @@ -122,10 +139,9 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfig.xml is used. - -For more information about required and optional arguments for the **Microsoft.HotfixPlugin** -plug-in, see [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). + default name DefaultHotfixConfig.xml is used. For more information about required and optional + arguments for the **Microsoft.HotfixPlugin** plug-in, see + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] @@ -147,7 +163,7 @@ coordinates the Windows Update Agent software resident on each cluster node, the is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with Cluster-Aware Updating (CAU), see -[Cluster-Aware Updating plug-ins](https://go.microsoft.com/fwlink/p/?LinkId=235333). +[How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: String[] @@ -155,7 +171,7 @@ Parameter Sets: (All) Aliases: Required: False -Position: 1 +Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False @@ -189,7 +205,48 @@ Parameter Sets: (All) Aliases: Required: False -Position: 2 +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -OsRollingUpgrade + +Indicates that the CAU cluster role scans for upgrades to the operating system of the cluster nodes +without stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RebootMode + +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- ClusProp +- FullReboot +- SoftReboot +- PluginCustomReboot +- OrchestratorDefault + +```yaml +Type: RebootType +Parameter Sets: (All) +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault + +Required: False +Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False @@ -199,11 +256,11 @@ Accept wildcard characters: False Indicates that CAU scans each cluster node for applicable updates and stages the updates for each plug-in in the plug-in order passed into the **CauPluginName** parameter then multiple plug-ins are -used during a scan for updates +used during a scan for updates. -By default, CAU scans and stages the applicable updates for all plug-ins in parallel. -This parameter is valid only when multiple plug-ins are specified in the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +By default, CAU scans and stages the applicable updates for all plug-ins in parallel. This +parameter is valid only when multiple plug-ins are specified in the **CauPluginName** parameter. If +a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -243,7 +300,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -251,11 +308,20 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### Microsoft.ClusterAwareUpdating.CauUpdateInfo +### Microsoft.ClusterAwareUpdating.ActivityIdMap + +### Microsoft.ClusterAwareUpdating.UpdateInfo + +### Microsoft.ClusterAwareUpdating.UpgradeSetupInfo ## NOTES ## RELATED LINKS -[Invoke-CauRun](./Invoke-CauRun.md) +[Add-CauClusterRole](add-cauclusterrole.md) + +[Get-CauRun](get-caurun.md) + +[Invoke-CauRun](invoke-caurun.md) +[Stop-CauRun](stop-caurun.md) diff --git a/docset/winserver2025-ps/clusterawareupdating/Invoke-ClusterlessCauRun.md b/docset/winserver2025-ps/clusterawareupdating/Invoke-ClusterlessCauRun.md new file mode 100644 index 0000000000..7b4cce9751 --- /dev/null +++ b/docset/winserver2025-ps/clusterawareupdating/Invoke-ClusterlessCauRun.md @@ -0,0 +1,454 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: ClusterAwareUpdating.dll-Help.xml +Module Name: ClusterAwareUpdating +ms.date: 07/01/2024 +online version: https://learn.microsoft.com/powershell/module/clusterawareupdating/invoke-clusterlesscaurun?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Invoke-ClusterlessCauRun +--- + +# Invoke-ClusterlessCauRun + +## SYNOPSIS +Performs a Cluster-Aware Updating (CAU) run on a set of nodes that are not associated with a cluster. + +## SYNTAX + +### DefaultParamSet (Default) + +``` +Invoke-ClusterlessCauRun [-MaxRetries ] [-RebootTimeoutMinutes ] + [-EnableFirewallRules] [-PreUpdateScript ] [-PostUpdateScript ] + [-ConfigurationName ] [-Force] [-CauPluginName ] [-Credential ] + [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] + [-OsRollingUpgrade] [-RebootMode ] [-WhatIf] [-Confirm] [] +``` + +### RecoverParamSet + +``` +Invoke-ClusterlessCauRun [-ForceRecovery] [-Force] [-Credential ] [-WhatIf] [-Confirm] + [] +``` + +## DESCRIPTION + +The `Invoke-ClusterlessCauRun` cmdlet performs a CAU run on a set of nodes that are not associated +with a cluster. This cmdlet can be used to update standalone servers or groups of servers that are +not part of a cluster. + +## EXAMPLES + +### Example 1 + +```powershell +Invoke-ClusterlessCauRun -MaxRetries 3 +``` + +This example performs a CAU run on the specified nodes, with a maximum of 3 retries for each node +that fails to update. + +## PARAMETERS + +### -CauPluginArguments + +Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + +For instance, to specify a Domain argument for one plug-in: +- `@{Domain=Domain.local}` +You can specify multiple pairs in a set separated with semicolons. +For instance: +- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the + **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, + provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, + separated by commas. For instance: +- `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` + +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. +The following arguments are optional: +- **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates + will be applied in addition to important updates on each node. If not specified, the default value + is False. +- A standard Windows Update Agent query string that specifies criteria used by the Windows Update + Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and + for a value, enclose the full query in quotation marks. If not specified, then the + **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more + information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the + criteria such as IsInstalled that can be included in the query strings, see + [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). + +For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: +- **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a + structure that contains the updates to apply and that contains the hotfix configuration file + +The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: +- **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced + for accessing data from the SMB share. If not specified, the default value is False. To ensure the + integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled + for either SMB signing or SMB Encryption. +- **DisableAclChecks=\**: Boolean value to indicate that the plug-in will check for + sufficient permissions on the hotfix root folder and the hotfix configuration file. If not + specified, the default value is False. +- **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in + allows the hotfix installer process to return. If not specified, the default value is 30 minutes. +- **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the + default name DefaultHotfixConfig.xml is used. For more information about required and optional + arguments for the **Microsoft.HotfixPlugin** plug-in, see + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). + +```yaml +Type: Hashtable[] +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CauPluginName + +Specifies one or more plug-ins to use when performing scans. You can specify multiple values +separated with commas. The default is the **Microsoft.WindowsUpdatePlugin** plug-in. This plug-in +coordinates the Windows Update Agent software resident on each cluster node, the same software that +is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows +Server Update Services (WSUS) server. For more information about how plug-ins work with +Cluster-Aware Updating (CAU), see +[How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). + +```yaml +Type: String[] +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ConfigurationName + +Specifies the Windows PowerShell session configuration that defines the session in which scripts, +specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and +can limit the cmdlets that are available to be run. If either a pre-update or post-update script is +specified but a configuration name isn't specified, then the default session configuration that is +built into Windows PowerShell is used. + +```yaml +Type: String +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies the administrative credentials for the target cluster. + +```yaml +Type: PSCredential +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -EnableFirewallRules + +Enables the **Remote Shutdown** Windows Firewall rule group on each cluster node, if it isn't +already enabled. If the **EnableFirewallRules** parameter is specified, CAU automatically re-enables +the **Remote Shutdown** rule group each time the CAU clustered role performs an Updating Run, in +case the rules are disabled manually in the intervening time. + +Enabling this rule group permits inbound communication to each cluster node during each updating +run that allows CAU to shut down and restart the node remotely (if the installation of an update +requires a restart). If Windows Firewall is in use on the cluster nodes and the rule group isn't +enabled, the Updating Run will fail. The **Remote Shutdown** Windows Firewall rule group isn't +enabled when it will conflict with Group Policy settings that are configured for Windows Firewall. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: f + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForceRecovery + +Indicates that the cmdlet recovers from a previous failed run that left the cluster in a Locked +state. + +This switch defeats the synchronization mechanism used to prevent two update coordinators from +accidentally updating the same cluster at the same time. Use with care. + +```yaml +Type: SwitchParameter +Parameter Sets: RecoverParamSet +Aliases: Recover + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -MaxRetries + +Specifies the maximum number of times that a node should be retried if an update fails. This can be +useful if you want to ensure that all nodes are updated. + +```yaml +Type: Int32 +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -OsRollingUpgrade + +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without +stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PostUpdateScript + +Specifies the path and file name for a Windows PowerShell script to run on each node after updating +finishes, and just after the node is brought out of Maintenance mode. The file name extension must +be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. +As a best practice, the script should be located on a disk in cluster storage, or at a highly +available network share, to ensure that it is always accessible to all the cluster nodes. + +```yaml +Type: String +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PreUpdateScript + +Specifies the path and file name for a Windows PowerShell script to run on each node before updating +begins, and before the node is put into Maintenance mode. The file name extension must be `.ps1` and +the total length of the path plus the file name must be no longer than 260 characters. As a best +practice, the script should be located on a disk in cluster storage, or at a highly available +network share, to ensure that the script is always accessible to all the cluster nodes. If a +pre-update script fails, the node isn't updated. + +```yaml +Type: String +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RebootMode + +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- ClusProp +- FullReboot +- SoftReboot +- PluginCustomReboot +- OrchestratorDefault + +```yaml +Type: RebootType +Parameter Sets: DefaultParamSet +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RebootTimeoutMinutes + +Specifies the time in minutes that CAU allows for the restarting of a node. If the restart doesn't +complete within this time, then the Updating Run on that node will be marked as failed. + +```yaml +Type: Int32 +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RunPluginsSerially + +Indicates that CAU will scan each cluster node for applicable updates and stage the updates for each +plug-in in the plug-in order passed into the **CauPluginName** parameter when multiple plug-ins are +used during an Updating Run. By default, CAU scans and stages the applicable updates for all +plug-ins in parallel. Regardless of the configuration of this parameter, CAU installs the applicable +updates for each plug-in sequentially. + +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StopOnPluginFailure + +Indicates that if a failure occurs during the application of updates on a node by any plug-in, +subsequent updates on the node that are coordinated by the remaining plug-ins are stopped when +multiple plug-ins are used during an Updating Run. By default, a failure by one plug-in doesn't +affect the application of updates on a node by other plug-ins. + +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. + +```yaml +Type: SwitchParameter +Parameter Sets: DefaultParamSet +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### Microsoft.ClusterAwareUpdating.ActivityIdMap + +### Microsoft.ClusterAwareUpdating.NodeResult + +### Microsoft.ClusterAwareUpdating.NodeStatusNotification + +### Microsoft.ClusterAwareUpdating.UpdateInfo + +### Microsoft.ClusterAwareUpdating.UpdateInstallResult + +### Microsoft.ClusterAwareUpdating.UpdateStagingResult + +## NOTES + +## RELATED LINKS + +[Get-ClusterlessCauRun](get-clusterlesscaurun.md) diff --git a/docset/winserver2025-ps/clusterawareupdating/Save-CauDebugTrace.md b/docset/winserver2025-ps/clusterawareupdating/Save-CauDebugTrace.md index 4cb73b6224..4120300ecc 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Save-CauDebugTrace.md +++ b/docset/winserver2025-ps/clusterawareupdating/Save-CauDebugTrace.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: ClusterAwareUpdating.dll-Help.xml Module Name: ClusterAwareUpdating -ms.date: 09/27/2022 +ms.date: 07/01/2024 online version: https://learn.microsoft.com/powershell/module/clusterawareupdating/save-caudebugtrace?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Save-CauDebugTrace @@ -17,7 +17,7 @@ Saves CAU debug tracing information to a local zip file. ``` Save-CauDebugTrace [[-ClusterName] ] [[-FilePath] ] [-Credential ] - [-RunId ] [-Force] [] + [-RunId ] [-Force] [-FeatureUpdateLogs {None | FailedSetup | All}] [] ``` ## DESCRIPTION @@ -38,8 +38,8 @@ Compatibility Mode (HTTP-In)** firewall exception is enabled on each node. Save-CauDebugTrace -ClusterName "CONTOSO-FC1" -FilePath "C:\temp\testrun.zip" ``` -This command saves the debug tracing information for the cluster named CONTOSO-FC1, to a trace file -called `testrun.zip` in the `C:\temp` folder. +This command saves the debug tracing information for the cluster named `CONTOSO-FC1`, to a trace +file called `testrun.zip` in the `C:\temp` folder. ## PARAMETERS @@ -77,6 +77,28 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -FeatureUpdateLogs + +Specifies the level of detail to include in the debug trace for feature updates. The acceptable +values for this parameter are: + +- **None**: No feature update logs will be included in the debug trace. +- **FailedSetup**: Only logs related to failed feature updates will be included in the debug trace. +- **All**: All feature update logs will be included in the debug trace. + +```yaml +Type: FeatureUpdateLogs +Parameter Sets: (All) +Aliases: +Accepted values: None, FailedSetup, All + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -FilePath Specifies the name of the file to which to save the tracing information, such as `MyTrace.zip`. @@ -131,7 +153,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -139,11 +161,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### None +### Microsoft.ClusterAwareUpdating.ActivityIdMap + +### System.IO.FileInfo ## NOTES ## RELATED LINKS [Invoke-CauRun](./Invoke-CauRun.md) - diff --git a/docset/winserver2025-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2025-ps/clusterawareupdating/Set-CauClusterRole.md index 8e48358c3a..35334f34a9 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2025-ps/clusterawareupdating/Set-CauClusterRole.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: ClusterAwareUpdating.dll-Help.xml Module Name: ClusterAwareUpdating -ms.date: 09/27/2022 +ms.date: 07/01/2024 online version: https://learn.microsoft.com/powershell/module/clusterawareupdating/set-cauclusterrole?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Set-CauClusterRole @@ -25,8 +25,11 @@ Set-CauClusterRole [-UseDefault] [-StartDate ] [-DaysOfWeek [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] - [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] - [] + [-SuspendRetriesPerNode ] [-WaitForStorageRepairTimeoutMinutes ] [-ForcePauseNoDrain] + [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] + [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [-AttemptSoftReboot] + [-RebootMode ] [[-ClusterName] ] [[-Credential] ] [-Force] + [-WhatIf] [-Confirm] [] ``` ### UpdateNow @@ -53,19 +56,38 @@ Set-CauClusterRole [-UseDefault] [-StartDate ] [-DaysOfWeek [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] - [[-ClusterName] ] [[-Credential] ] [-Force] [-WhatIf] [-Confirm] - [] + [-SuspendRetriesPerNode ] [-WaitForStorageRepairTimeoutMinutes ] [-ForcePauseNoDrain] + [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] + [-SiteAwareUpdatingOrder ] [-OsRollingUpgrade] [-AttemptSoftReboot] + [-RebootMode ] [[-ClusterName] ] [[-Credential] ] [-Force] + [-WhatIf] [-Confirm] [] +``` + +### Once + +``` +Set-CauClusterRole [-UseDefault] [-RunOnce] [-CauPluginName ] + [-CauPluginArguments ] [-MaxFailedNodes ] [-MaxRetriesPerNode ] + [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] + [-ConfigurationName ] [-RequireAllNodesOnline] [-WarnAfter ] + [-StopAfter ] [-RebootTimeoutMinutes ] [-SeparateReboots] [-RunPluginsSerially] + [-StopOnPluginFailure] [-EnableFirewallRules] [-FailbackMode ] + [-SuspendClusterNodeTimeoutMinutes ] [-SuspendRetriesPerNode ] + [-WaitForStorageRepairTimeoutMinutes ] [-ForcePauseNoDrain] [-ForcePauseAndDrain] + [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-SiteAwareUpdatingOrder ] + [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [[-ClusterName] ] + [[-Credential] ] [-Force] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION The `Set-CauClusterRole` cmdlet sets configuration properties for the Cluster-Aware Updating (CAU) clustered role on the specified cluster. This cmdlet can specify properties such as the updating -schedule and updating run parameters. +schedule and Updating Run parameters. -To run this cmdlet with the **PostUpdateScript** or **PreUpdateScript** parameters, Windows PowerShell -remoting must be enabled on each node. To do this, use the `Enable-PSRemoting` cmdlet. In -addition, ensure that the **Windows Remote Management - Compatibility Mode (HTTP-In)** firewall +To run this cmdlet with the **PostUpdateScript** or **PreUpdateScript** parameters, Windows +PowerShell remoting must be enabled on each node. To do this, use the `Enable-PSRemoting` cmdlet. +In addition, ensure that the **Windows Remote Management - Compatibility Mode (HTTP-In)** firewall exception is enabled on each node. ## EXAMPLES @@ -83,17 +105,18 @@ $parameters = @{ Set-CauClusterRole $parameters ``` -This command configures settings for the CAU clustered role on the cluster named CONTOSO-FC1. The -CAU clustered role is configured to perform updating runs on Tuesdays on the first and second weeks +This command configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. The +CAU clustered role is configured to perform Updating Runs on Tuesdays on the first and second weeks of each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a -restart is necessary. If the restart doesn't complete within this time, then the updating run on -that node is marked as failed. Because the command specifies the **Force** parameter, the cmdlet runs -without displaying confirmation prompts. +restart is necessary. If the restart doesn't complete within this time, then the Updating Run on +that node is marked as failed. Because the command specifies the **Force** parameter, the cmdlet +runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). ### Example 2: Configure settings for a CAU cluster role on the specified cluster on the second week of the month + ```powershell $parameters = @{ ClusterName = 'CONTOSO-FC1' @@ -101,7 +124,7 @@ $parameters = @{ WeeksOfMonth = '1,2' IntervalWeeks = '2' RebootTimeoutMinutes = '10' - PostUpdateScript = 'c:\verifyupdatesinstalled.ps1' + PostUpdateScript = 'G:\verifyupdatesinstalled.ps1' Force = $true } Set-CauClusterRole $parameters @@ -119,27 +142,27 @@ DaysOfWeek Tuesday WeeksInterval 2 ``` -This command configures settings for the CAU clustered role on the cluster named CONTOSO-FC1. The -CAU clustered role is configured to perform updating runs on Tuesdays on the second week of each +This command configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. The +CAU clustered role is configured to perform Updating Runs on Tuesdays on the second week of each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a restart is -necessary. If the restart doesn't complete within this time, then the updating run on that node is -marked as failed. The CAU clustered role runs a script after updating completes, just after the node -leaves Maintenance mode. The script is located at the root of drive G: in clustered storage and is -named verifyupdatesinstalled.ps1. Because the command specifies the **Force** parameter, the cmdlet -runs without displaying confirmation prompts. +necessary. If the restart doesn't complete within this time, then the Updating Run on that node is +marked as failed. The CAU clustered role runs a script after updating completes, just after the +node leaves Maintenance mode. The script is located at the root of drive **G:** in clustered storage +and is named `verifyupdatesinstalled.ps1`. Because the command specifies the **Force** parameter, +the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). -### Example 3: Initiate an updating run on the specified cluster +### Example 3: Initiate an Updating Run on the specified cluster ```powershell Set-CauClusterRole -ClusterName "CONTOSO-FC1" -UpdateNow -Force ``` -This command causes the CAU clustered role to initiate an updating run immediately on the cluster -named CONTOSO-FC1. Because the command specifies the **Force** parameter, the cmdlet runs without -displaying confirmation prompts +This command causes the CAU clustered role to initiate an Updating Run immediately on the cluster +named `CONTOSO-FC1`. Because the command specifies the **Force** parameter, the cmdlet runs without +displaying confirmation prompts. ### Example 4: Configure settings for a CAU cluster role on the specified cluster @@ -156,9 +179,9 @@ $parameters = @{ Set-CauClusterRole @parameters ``` -This example configures settings for the CAU clustered role on the cluster named CONTOSO-FC1. Time -spans are specified for logging a warning or canceling the updating run if it isn't completed. The -earliest date that an updating run can be triggered is 1/1/2012. Because the command specifies the +This example configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. Time +spans are specified for logging a warning or canceling the Updating Run if it isn't completed. The +earliest date that an Updating Run can be triggered is `1/1/2012`. Because the command specifies the **Force** parameter, the cmdlet runs without displaying confirmation prompts This example uses splatting to pass parameter values from the `$parameters` variable to the command. @@ -166,9 +189,29 @@ Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/ ## PARAMETERS +### -AttemptSoftReboot + +Indicates that the CAU clustered role attempts a Kernel Soft Reboot (KSR) for the failover cluster. + +KSR bypasses BIOS/firmware initialization. You can only use KSR for updates that do not require a +BIOS/firmware initialization. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -CauPluginArguments Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + For instance, to specify a Domain argument for one plug-in: - `@{Domain=Domain.local}` You can specify multiple pairs in a set separated with semicolons. @@ -191,7 +234,7 @@ The following arguments are optional: - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). + [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a @@ -210,11 +253,11 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the default name DefaultHotfixConfig.xml is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see - [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -227,15 +270,15 @@ Accept wildcard characters: False ### -CauPluginName Specifies one or more plug-ins to use when performing scans or updates. You can specify multiple -values separated with commas. The default is the Microsoft.WindowsUpdatePlugin plug-in. This plug-in -coordinates the Windows Update Agent software resident on each cluster node, the same software that -is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows -Server Update Services (WSUS) server. For more information about how plug-ins work with CAU, see -[How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +values separated with commas. The default is the **Microsoft.WindowsUpdatePlugin** plug-in. This +plug-in coordinates the Windows Update Agent software resident on each cluster node, the same +software that is used when updates are downloaded from Windows Update or Microsoft Update, or from +a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with +CAU, see [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). ```yaml Type: String[] -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -267,14 +310,14 @@ Accept wildcard characters: False ### -ConfigurationName Specifies the Windows PowerShell session configuration that defines the session in which scripts, -specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and can -limit the cmdlets that are available to be run. If either a pre-update or post-update script is +specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and +can limit the cmdlets that are available to be run. If either a pre-update or post-update script is specified but a configuration name isn't specified, then the default session configuration that is built into Windows PowerShell is used. ```yaml Type: String -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -295,7 +338,7 @@ Aliases: cf Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` @@ -318,8 +361,8 @@ Accept wildcard characters: False ### -DaysOfWeek -Specifies the days of the week on which the task will be triggered. -Multiple values can be specified either separated with commas or as a hexadecimal sum. +Specifies the days of the week on which the task will be triggered. Multiple values can be +specified either separated with commas or as a hexadecimal sum. - **Sunday:** (0x01) - **Monday:** (0x02) @@ -329,11 +372,6 @@ Multiple values can be specified either separated with commas or as a hexadecima - **Friday:** (0x20) - **Saturday:** (0x40) -**Examples:** -- **-DaysOfWeek:** Monday, Wednesday, Friday -- **-DaysOfWeek:** 0x02, 0x08, 0x20 -- **-DaysOfWeek:** 0x2A - ```yaml Type: Weekdays Parameter Sets: MonthlyDayOfWeek, Weekly @@ -353,13 +391,13 @@ Indicates that this cmdlet enables the **Remote Shutdown** Windows Firewall rule cluster node, if it isn't already enabled, each time the CAU clustered role performs an Updating Run. Enabling this rule group permits inbound communication to each cluster node during each Updating Run that allows CAU to shut down and restart the node remotely. If Windows Firewall is in -use on the cluster nodes and the rule group isn't enabled, the updating run will fail. The **Remote +use on the cluster nodes and the rule group isn't enabled, the Updating Run will fail. The **Remote Shutdown** Windows Firewall rule group isn't enabled when it will conflict with Group Policy settings that are configured for Windows Firewall. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -378,11 +416,12 @@ another node. The acceptable values for this parameter are: - NoFailback - Immediate - Policy - The default value is Immediate. + +The default value is **Immediate**. ```yaml Type: FailbackType -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Accepted values: NoFailback, Immediate, Policy @@ -409,11 +448,64 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -ForcePauseAndDrain + +Indicates that the CAU cluster role forces cluster nodes to pause and drain roles. + +A forced drain moves the roles off of the draining node even if the group cannot move. A group +might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseDrainAndReboot + +Indicates that the CAU cluster role forces cluster nodes to pause, drain roles, and restart. + +A forced drain moves the roles off of the draining node even if the group cannot move. A group +might not be able to move because no other node can host the group or the group is locked. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForcePauseNoDrain + +Indicates that the CAU cluster role forces cluster nodes to pause. The nodes are not drained. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -IntervalWeeks -Specifies the interval between weeks when the task will be triggered. -An interval of 1 produces a weekly schedule. -An interval of 2 produces an every-other week schedule. +Specifies the interval between weeks when the task will be triggered. An interval of 1 produces a +weekly schedule. An interval of 2 produces an every-other week schedule. ```yaml Type: Int32 @@ -429,14 +521,13 @@ Accept wildcard characters: False ### -MaxFailedNodes -Specifies the maximum number of nodes on which updating can fail. -If one more than this number of nodes fails, then the Updating Run is stopped. -The range is from 0 through 1 less than the number of cluster nodes. -The default for most clusters is approximately one-third of the number of nodes. +Specifies the maximum number of nodes on which updating can fail. If one more than this number of +nodes fails, then the Updating Run is stopped. The range is from 0 through 1 less than the number +of cluster nodes. The default for most clusters is approximately one-third of the number of nodes. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -449,11 +540,11 @@ Accept wildcard characters: False ### -MaxRetriesPerNode Specifies the maximum number of times that the update process, which includes any pre-update and -post-update scripts, is retried per node. The maximum is 64and the default is 3. +post-update scripts, is retried per node. The maximum is **64** and the default is **3**. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -469,7 +560,24 @@ Specifies an array of cluster node names in the order that they should be update ```yaml Type: String[] -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -OsRollingUpgrade + +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without +stopping the Hyper-V or the Scale-Out File Server workloads. + +```yaml +Type: SwitchParameter +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -482,14 +590,14 @@ Accept wildcard characters: False ### -PostUpdateScript Specifies the path and file name for a Windows PowerShell script to run after updating completes, -just after the node leaves Maintenance mode. The file name extension must be .ps1 and the total +just after the node leaves Maintenance mode. The file name extension must be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, to ensure that it is always accessible to all the cluster nodes. ```yaml Type: String -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -502,14 +610,14 @@ Accept wildcard characters: False ### -PreUpdateScript Specifies the path and file name for a Windows PowerShell script to run on each node before updating -begins, and before the node is put into Maintenance mode. The file name extension must be .ps1 and +begins, and before the node is put into Maintenance mode. The file name extension must be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, to ensure that it is always accessible to all the cluster nodes. ```yaml Type: String -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -519,14 +627,38 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RebootMode + +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- ClusProp +- FullReboot +- SoftReboot +- PluginCustomReboot +- OrchestratorDefault + +```yaml +Type: RebootType +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -RebootTimeoutMinutes -Specifies the time in minutes that CAU will allow for the restarting of a node. If the restart doesn't -complete within this time, then the updating run on that node is marked as failed. +Specifies the time in minutes that CAU will allow for the restarting of a node. If the restart +doesn't complete within this time, then the Updating Run on that node is marked as failed. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -542,7 +674,24 @@ Indicates that all cluster nodes must be online and reachable before updating be ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RunOnce + +Specifies that the CAU run should only be performed once, rather than on a recurring schedule. This +can be useful if you only need to perform a one-time update of your cluster nodes. + +```yaml +Type: SwitchParameter +Parameter Sets: Once Aliases: Required: False @@ -555,19 +704,19 @@ Accept wildcard characters: False ### -RunPluginsSerially Indicates that CAU scans each cluster node for applicable updates and stage the updates for each -plug-in in the plug-in order passed into the*CauPluginName* parameter, when multiple plug-ins are -used during an updating run. +plug-in in the plug-in order passed into the **CauPluginName** parameter, when multiple plug-ins are +used during an Updating Run. By default, CAU scans and stages the applicable updates for all plug-ins in parallel. Regardless of the configuration of this parameter, CAU installs the applicable updates for each plug-in sequentially. -The parameter is valid only when multiple plug-ins are specified in the **CauPluginName** parameter. If a -single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified in the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -582,14 +731,30 @@ Accept wildcard characters: False Indicates that CAU shuts down and restart a cluster node after each plug-in installs updates on the node, if the installation of an update by a plug-in requires a restart that CAU will shut down and restart a cluster node after each plug-in installs updates on the node, if the installation of an -update by a plug-in requires a restart +update by a plug-in requires a restart. The parameter is valid only when multiple plug-ins are specified in the **CauPluginName** parameter. If a single plug-in is specified, a warning appears. +```yaml +Type: String[] +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipUpdateChecks + +Indicates that the CAU cluster role skips update checks. + ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -601,7 +766,7 @@ Accept wildcard characters: False ### -StartDate -Specifies the earliest date on which the updating run can be triggered. +Specifies the earliest date on which the Updating Run can be triggered. ```yaml Type: DateTime @@ -617,9 +782,9 @@ Accept wildcard characters: False ### -StopAfter -Specifies the time in minutes after which the updating run is canceled if it hasn't completed. The +Specifies the time in minutes after which the Updating Run is canceled if it hasn't completed. The time span can be expressed in the standard ways available in Windows PowerShell, for instance, -`01:30:00` represents one hour and thirty minutes. By default, the updating run is allowed an +`01:30:00` represents one hour and thirty minutes. By default, the Updating Run is allowed an unlimited amount of time to complete. If pre-update or post-update scripts are specified, then the entire process of running scripts and @@ -627,7 +792,7 @@ performing updates must be complete within this time limit. ```yaml Type: TimeSpan -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -641,14 +806,14 @@ Accept wildcard characters: False Indicates that if a failure occurs during the application of updates on a node by any plug-in, subsequent updates on the node that are coordinated by the remaining plug-ins are stopped when -multiple plug-ins are used during an updating run. +multiple plug-ins are used during an Updating Run. -The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -660,8 +825,8 @@ Accept wildcard characters: False ### -SuspendClusterNodeTimeoutMinutes -Specifies the maximum amount of time CAU should wait for the `Suspend-ClusterNode` cmdlet to succeed if -the underlying clustered space is in degraded condition. +Specifies the maximum amount of time CAU should wait for the `Suspend-ClusterNode` cmdlet to +succeed if the underlying clustered space is in degraded condition. If `Suspend-ClusterNode` fails with ERROR_CLUSTER_SPACE_DEGRADED error, CAU will keep retrying for **SuspendClusterNodeTimeoutMinutes** or suspend the call if the command succeeds. @@ -673,7 +838,23 @@ for this value for every node in the cluster in the worst case. ```yaml Type: Int32 -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SuspendRetriesPerNode + +Specifies the number of times to retry suspending a node before moving on to the next node. + +```yaml +Type: Int32 +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -685,7 +866,7 @@ Accept wildcard characters: False ### -UpdateNow -Instructs the CAU clustered role to immediately initiate an updating run using the configured +Instructs the CAU clustered role to immediately initiate an Updating Run using the configured settings. ```yaml @@ -706,7 +887,24 @@ Indicates that default values are used for all parameters that don't have specif ```yaml Type: SwitchParameter -Parameter Sets: MonthlyDayOfWeek, UseDefault, Weekly +Parameter Sets: MonthlyDayOfWeek, UseDefault, Weekly, Once +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WaitForStorageRepairTimeoutMinutes + +Specifies the amount of time in minutes to wait for storage to be repaired on a node before +continuing with an update. + +```yaml +Type: Int32 +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -718,13 +916,13 @@ Accept wildcard characters: False ### -WarnAfter -Specifies the time in minutes after which a warning is logged if the updating run, including any +Specifies the time in minutes after which a warning is logged if the Updating Run, including any pre-update and post-update scripts, hasn't completed. By default, no warning is logged, regardless -of the time taken by the updating run. +of the time taken by the Updating Run. ```yaml Type: TimeSpan -Parameter Sets: MonthlyDayOfWeek, Weekly +Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: Required: False @@ -736,8 +934,8 @@ Accept wildcard characters: False ### -WeeksOfMonth -Specifies the weeks of the month when the Updating Run should be run. -The value 5 represents the last week of the month. +Specifies the weeks of the month when the Updating Run should be run. The value 5 represents the +last week of the month. ```yaml Type: Int32[] @@ -753,8 +951,7 @@ Accept wildcard characters: False ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet isn't run. +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -763,7 +960,7 @@ Aliases: wi Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` @@ -773,7 +970,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -781,19 +978,18 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS -### None +### System.Object ## NOTES ## RELATED LINKS -[Add-CauClusterRole](./Add-CauClusterRole.md) - -[Disable-CauClusterRole](./Disable-CauClusterRole.md) +[Add-CauClusterRole](add-cauclusterrole.md) -[Enable-CauClusterRole](./Enable-CauClusterRole.md) +[Disable-CauClusterRole](disable-cauclusterrole.md) -[Get-CauClusterRole](./Get-CauClusterRole.md) +[Enable-CauClusterRole](enable-cauclusterrole.md) -[Remove-CauClusterRole](./Remove-CauClusterRole.md) +[Get-CauClusterRole](get-cauclusterrole.md) +[Remove-CauClusterRole](remove-cauclusterrole.md) From 179d223386e9838e71a8a1dfc79fea1ae39498d6 Mon Sep 17 00:00:00 2001 From: Gary Moore Date: Tue, 2 Jul 2024 15:27:35 -0700 Subject: [PATCH 24/98] Correct malformed metadata --- docset/winserver2016-ps/appx/Get-NonRemovableAppsPolicy.md | 3 ++- docset/winserver2016-ps/appx/Set-NonRemovableAppsPolicy.md | 3 ++- docset/winserver2019-ps/appx/Get-NonRemovableAppsPolicy.md | 3 ++- docset/winserver2019-ps/appx/Set-NonRemovableAppsPolicy.md | 3 ++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/docset/winserver2016-ps/appx/Get-NonRemovableAppsPolicy.md b/docset/winserver2016-ps/appx/Get-NonRemovableAppsPolicy.md index c485ad124b..536f7912dc 100644 --- a/docset/winserver2016-ps/appx/Get-NonRemovableAppsPolicy.md +++ b/docset/winserver2016-ps/appx/Get-NonRemovableAppsPolicy.md @@ -1,5 +1,6 @@ --- -audiencems.localizationpriority: ITPro +audience: ITPro +ms.localizationpriority: Low description: Use this topic to help prevent the uninstall of specific Windows apps with Windows PowerShell. external help file: Microsoft.Windows.Appx.PackageManager.Commands.dll-help.xml Module Name: Appx diff --git a/docset/winserver2016-ps/appx/Set-NonRemovableAppsPolicy.md b/docset/winserver2016-ps/appx/Set-NonRemovableAppsPolicy.md index 4d5de39176..d671ebb3ee 100644 --- a/docset/winserver2016-ps/appx/Set-NonRemovableAppsPolicy.md +++ b/docset/winserver2016-ps/appx/Set-NonRemovableAppsPolicy.md @@ -1,5 +1,6 @@ --- -audiencems.localizationpriority: ITPro +audience: ITPro +ms.localizationpriority: Low description: Use this topic to help prevent the uninstall of specific Windows apps with Windows PowerShell. external help file: Microsoft.Windows.Appx.PackageManager.Commands.dll-help.xml Module Name: Appx diff --git a/docset/winserver2019-ps/appx/Get-NonRemovableAppsPolicy.md b/docset/winserver2019-ps/appx/Get-NonRemovableAppsPolicy.md index d3190cccc2..8eb795743f 100644 --- a/docset/winserver2019-ps/appx/Get-NonRemovableAppsPolicy.md +++ b/docset/winserver2019-ps/appx/Get-NonRemovableAppsPolicy.md @@ -1,5 +1,6 @@ --- -audiencems.localizationpriority: ITPro +audience: ITPro +ms.localizationpriority: Low description: Use this topic to help prevent the uninstall of specific Windows apps with Windows PowerShell. external help file: Microsoft.Windows.Appx.PackageManager.Commands.dll-help.xml Module Name: Appx diff --git a/docset/winserver2019-ps/appx/Set-NonRemovableAppsPolicy.md b/docset/winserver2019-ps/appx/Set-NonRemovableAppsPolicy.md index c71cace1de..219553197c 100644 --- a/docset/winserver2019-ps/appx/Set-NonRemovableAppsPolicy.md +++ b/docset/winserver2019-ps/appx/Set-NonRemovableAppsPolicy.md @@ -1,5 +1,6 @@ --- -audiencems.localizationpriority: ITPro +audience: ITPro +ms.localizationpriority: Low description: Use this topic to help prevent the uninstall of specific Windows apps with Windows PowerShell. external help file: Microsoft.Windows.Appx.PackageManager.Commands.dll-help.xml Module Name: Appx From 0ec724605b4d62706c2763ff54f301ce9b742d95 Mon Sep 17 00:00:00 2001 From: Sean Wheeler Date: Tue, 2 Jul 2024 18:54:54 -0500 Subject: [PATCH 25/98] Fixes #1333 - Add about topic to ActiveDirectory (#3834) * Add about topic to ActiveDirectory * Update docfx.json to include about articles * Update docfx file glob * fix table --- docset/docfx.json | 64 ++-- .../activedirectory/About/About.md | 17 + .../About/about_ActiveDirectory_Filter.md | 351 ++++++++++++++++++ .../activedirectory/About/About.md | 17 + .../About/about_ActiveDirectory_Filter.md | 351 ++++++++++++++++++ .../activedirectory/About/About.md | 17 + .../About/about_ActiveDirectory_Filter.md | 351 ++++++++++++++++++ .../activedirectory/About/About.md | 17 + .../About/about_ActiveDirectory_Filter.md | 351 ++++++++++++++++++ .../activedirectory/About/About.md | 17 + .../About/about_ActiveDirectory_Filter.md | 351 ++++++++++++++++++ .../activedirectory/About/About.md | 17 + .../About/about_ActiveDirectory_Filter.md | 351 ++++++++++++++++++ 13 files changed, 2240 insertions(+), 32 deletions(-) create mode 100644 docset/winserver2012-ps/activedirectory/About/About.md create mode 100644 docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_Filter.md create mode 100644 docset/winserver2012r2-ps/activedirectory/About/About.md create mode 100644 docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_Filter.md create mode 100644 docset/winserver2016-ps/activedirectory/About/About.md create mode 100644 docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_Filter.md create mode 100644 docset/winserver2019-ps/activedirectory/About/About.md create mode 100644 docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_Filter.md create mode 100644 docset/winserver2022-ps/activedirectory/About/About.md create mode 100644 docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_Filter.md create mode 100644 docset/winserver2025-ps/activedirectory/About/About.md create mode 100644 docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_Filter.md diff --git a/docset/docfx.json b/docset/docfx.json index bcd6857d85..dc6f5e5683 100644 --- a/docset/docfx.json +++ b/docset/docfx.json @@ -1,44 +1,44 @@ { "build": { "content": [ - { "files": [ "toc.yml" ], "src": "bread", "dest": "windows/bread" }, + { "dest": "windows/bread", "files": [ "toc.yml" ], "src": "bread" }, - { "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2025-ps", "version": "WindowsServer2025-ps", "dest": "windows" }, - { "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2025-ps", "version": "WindowsServer2025-ps", "dest": "winserver2025-ps" }, - { "files": [ "**/*.yml" ], "exclude": [ "toc.yml" ], "src": "winserver2025-ps", "version": "WindowsServer2025-ps", "dest": "module" }, - { "files": [ "toc.yml" ], "src": "winserver2025-ps", "version": "WindowsServer2025-ps", "dest": "module/WindowsServer2025-ps" }, - - { "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2022-ps", "version": "WindowsServer2022-ps", "dest": "windows" }, - { "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2022-ps", "version": "WindowsServer2022-ps", "dest": "winserver2022-ps" }, - { "files": [ "**/*.yml" ], "exclude": [ "toc.yml" ], "src": "winserver2022-ps", "version": "WindowsServer2022-ps", "dest": "module" }, - { "files": [ "toc.yml" ], "src": "winserver2022-ps", "version": "WindowsServer2022-ps", "dest": "module/WindowsServer2022-ps" }, + { "dest": "windows", "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2025-ps", "version": "WindowsServer2025-ps" }, + { "dest": "winserver2025-ps", "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2025-ps", "version": "WindowsServer2025-ps" }, + { "dest": "module", "exclude": [ "toc.yml" ], "files": [ "**/*.yml", "**/About/*.md" ], "src": "winserver2025-ps", "version": "WindowsServer2025-ps" }, + { "dest": "module/WindowsServer2025-ps", "files": [ "toc.yml" ], "src": "winserver2025-ps", "version": "WindowsServer2025-ps" }, - { "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2019-ps", "version": "WindowsServer2019-ps", "dest": "windows" }, - { "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2019-ps", "version": "WindowsServer2019-ps", "dest": "winserver2019-ps" }, - { "files": [ "**/*.yml" ], "exclude": [ "toc.yml" ], "src": "winserver2019-ps", "version": "WindowsServer2019-ps", "dest": "module" }, - { "files": [ "toc.yml" ], "src": "winserver2019-ps", "version": "WindowsServer2019-ps", "dest": "module/WindowsServer2019-ps" }, + { "dest": "windows", "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2022-ps", "version": "WindowsServer2022-ps" }, + { "dest": "winserver2022-ps", "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2022-ps", "version": "WindowsServer2022-ps" }, + { "dest": "module", "exclude": [ "toc.yml" ], "files": [ "**/*.yml", "**/About/*.md" ], "src": "winserver2022-ps", "version": "WindowsServer2022-ps" }, + { "dest": "module/WindowsServer2022-ps", "files": [ "toc.yml" ], "src": "winserver2022-ps", "version": "WindowsServer2022-ps" }, - { "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2016-ps", "version": "WindowsServer2016-ps", "dest": "windows" }, - { "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2016-ps", "version": "WindowsServer2016-ps", "dest": "windows" }, - { "files": [ "**/*.yml" ], "exclude": [ "toc.yml" ], "src": "winserver2016-ps", "version": "WindowsServer2016-ps", "dest": "module" }, - { "files": [ "toc.yml" ], "src": "winserver2016-ps", "version": "WindowsServer2016-ps", "dest": "module/WindowsServer2016-ps" }, + { "dest": "windows", "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2019-ps", "version": "WindowsServer2019-ps" }, + { "dest": "winserver2019-ps", "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2019-ps", "version": "WindowsServer2019-ps" }, + { "dest": "module", "exclude": [ "toc.yml" ], "files": [ "**/*.yml", "**/About/*.md" ], "src": "winserver2019-ps", "version": "WindowsServer2019-ps" }, + { "dest": "module/WindowsServer2019-ps", "files": [ "toc.yml" ], "src": "winserver2019-ps", "version": "WindowsServer2019-ps" }, - { "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2012-ps", "version": "winserver2012-ps", "dest": "windows" }, - { "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2012-ps", "version": "winserver2012-ps", "dest": "winserver2012-ps" }, - { "files": [ "**/*.yml" ], "exclude": [ "toc.yml" ], "src": "winserver2012-ps", "version": "winserver2012-ps", "dest": "module" }, - { "files": [ "toc.yml" ], "src": "winserver2012-ps", "version": "winserver2012-ps", "dest": "module/winserver2012-ps" }, + { "dest": "windows", "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2016-ps", "version": "WindowsServer2016-ps" }, + { "dest": "windows", "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2016-ps", "version": "WindowsServer2016-ps" }, + { "dest": "module", "exclude": [ "toc.yml" ], "files": [ "**/*.yml", "**/About/*.md" ], "src": "winserver2016-ps", "version": "WindowsServer2016-ps" }, + { "dest": "module/WindowsServer2016-ps", "files": [ "toc.yml" ], "src": "winserver2016-ps", "version": "WindowsServer2016-ps" }, - { "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2012r2-ps", "version": "winserver2012r2-ps", "dest": "windows" }, - { "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2012r2-ps", "version": "winserver2012r2-ps", "dest": "winserver2012r2-ps" }, - { "files": [ "**/*.yml" ], "exclude": [ "toc.yml" ], "src": "winserver2012r2-ps", "version": "winserver2012r2-ps", "dest": "module" }, - { "files": [ "toc.yml" ], "src": "winserver2012r2-ps", "version": "winserver2012r2-ps", "dest": "module/winserver2012r2-ps" }, + { "dest": "windows", "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2012-ps", "version": "winserver2012-ps" }, + { "dest": "winserver2012-ps", "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2012-ps", "version": "winserver2012-ps" }, + { "dest": "module", "exclude": [ "toc.yml" ], "files": [ "**/*.yml", "**/About/*.md" ], "src": "winserver2012-ps", "version": "winserver2012-ps" }, + { "dest": "module/winserver2012-ps", "files": [ "toc.yml" ], "src": "winserver2012-ps", "version": "winserver2012-ps" }, - { "files": [ "**/*.md" ], "src": "docs-conceptual/mdop", "version": "win-mdop2-ps", "dest": "mdop" }, - { "files": [ "toc.yml" ], "src": "docs-conceptual/mdop", "version": "win-mdop2-ps", "dest": "mdop/win-mdop2-ps" }, - { "files": [ "**/*.yml" ], "exclude": [ "toc.yml" ], "src": "mdop", "version": "win-mdop2-ps", "dest": "module" }, - { "files": [ "toc.yml" ], "src": "mdop", "version": "win-mdop2-ps", "dest": "module/win-mdop2-ps" }, + { "dest": "windows", "files": [ "**/*.md" ], "src": "docs-conceptual/winserver2012r2-ps", "version": "winserver2012r2-ps" }, + { "dest": "winserver2012r2-ps", "files": [ "toc.yml" ], "src": "docs-conceptual/winserver2012r2-ps", "version": "winserver2012r2-ps" }, + { "dest": "module", "exclude": [ "toc.yml" ], "files": [ "**/*.yml", "**/About/*.md" ], "src": "winserver2012r2-ps", "version": "winserver2012r2-ps" }, + { "dest": "module/winserver2012r2-ps", "files": [ "toc.yml" ], "src": "winserver2012r2-ps", "version": "winserver2012r2-ps" }, - { "files": [ "**/*.md" ], "src": "virtual-directory-module", "dest": "module" } + { "dest": "mdop", "files": [ "**/*.md" ], "src": "docs-conceptual/mdop", "version": "win-mdop2-ps" }, + { "dest": "mdop/win-mdop2-ps", "files": [ "toc.yml" ], "src": "docs-conceptual/mdop", "version": "win-mdop2-ps" }, + { "dest": "module", "exclude": [ "toc.yml" ], "files": [ "**/*.yml" ], "src": "mdop", "version": "win-mdop2-ps" }, + { "dest": "module/win-mdop2-ps", "files": [ "toc.yml" ], "src": "mdop", "version": "win-mdop2-ps" }, + + { "dest": "module", "files": [ "**/*.md" ], "src": "virtual-directory-module" } ], "resource": [ { "files": [ "**/*.png", "**/*.jpg" ], "exclude": [ "**/obj/**", "**/includes/**" ] } @@ -91,7 +91,7 @@ "garycentric", "AngelaMotherofDragons", "dstrome", - "v-dihans", + "v-dihans", "sdwheeler", "Stacyrch140", "v-stsavell", diff --git a/docset/winserver2012-ps/activedirectory/About/About.md b/docset/winserver2012-ps/activedirectory/About/About.md new file mode 100644 index 0000000000..adc76085b9 --- /dev/null +++ b/docset/winserver2012-ps/activedirectory/About/About.md @@ -0,0 +1,17 @@ +--- +description: About articles for the ActiveDirectory module. +Help Version: 3.1.0.0 +Locale: en-US +ms.date: 04/22/2013 +title: About articles +--- +# About topics + +## Description + +About topics cover a range of concepts about PowerShell. + +## About Topics + +### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) +Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_Filter.md b/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_Filter.md new file mode 100644 index 0000000000..23a83c0a0a --- /dev/null +++ b/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_Filter.md @@ -0,0 +1,351 @@ +--- +title: about_ActiveDirectory_Filter +ms.date: 04/22/2013 +description: Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Filter + +## SHORT DESCRIPTION + +Describes the syntax and behavior of the search filter supported by the Active +Directory module for Windows PowerShell. + +## LONG DESCRIPTION + +Most get-AD* Active Directory module cmdlets use the Filter parameter to search +for objects. The Filter parameter has been implemented to replace the function +of the LDAP Filter and adds support for PowerShell variables, rich data types, +improved error checking and an Active Directory extended form of the PowerShell +Expression Language. + + +- Support for LDAP Filter Syntax + + The LDAP filter syntax is supported through the **LDAPFilter** parameter. You + will find LDAP filter examples along with the new Active Directory module + filter examples in the Filter Examples section of this topic. + + +- Search Breadth and Depth + + The breadth and depth of your filter-driven search can be modified by two + Active Directory module cmdlet parameters: **SearchBase** and **SearchScope**. + + When within the context of the Active Directory provider, if the + **Searchbase** parameter is not specified, **SearchBase** will default to the + current path. When not running under the Active Directory provider, the + **SearchBase** will default to the server's **DefaultNamingContext**. + + The **SearchScope** parameter defaults to the value `Subtree`, of the + enumerated type **ADSearchScope**. + + For more information, see the **SearchBase** and **SearchScope** parameter + descriptions on any `Get-AD*` cmdlet. + +- Search Result Behavior + + The behavior of the Active Directory module when returning results of a + search is modified by two cmdlet parameters: **ResultPageSize** and + **ResultSetSize**. + + **ResultSetSize** controls the maximum number of returned objects. + + **ResultPageSize** specifies the maximum number of objects for each returned + page of information. + + See the **ResultPageSize** and **ResultSetSize** parameter descriptions on + any `Get-AD*` cmdlet for more information. + + +- Timeout Behavior + + The following statements specify timeout conditions within the Active + Directory module and describe what can be done about a timeout them. + + The default Active Directory module timeout for all operations is 2 + minutes. + + For search operation, the Active Directory module uses paging control + with a 2-minute timeout for each page search. + + > [!NOTE] + > Because a search may involve multiple server page requests the overall + > search time may exceed 2 minutes. + + A **TimeoutException** error indicates that a timeout has occurred. + + For a search operation, you can choose to use a smaller page size, set with + the **ResultPageSize** parameter, if you are getting a **TimeoutException** + error. + + If after trying these changes you are still getting a **TimeoutException** + error, consider optimizing your filter using the guidance in the + Optimizing Filters section of this topic. + + +- Optimizing Filters + + You can enhance the search filter behavior by using these guidelines. + + - Avoid using the **Recursive** parameter as it intensifies resource usage of + the search operation. + - Avoid using bitwise AND operators and bitwise OR operators. For more + information, see the Supported Operators section of this topic. + - Avoid using the logical NOT operator. + - Break down your search into multiple queries with narrower conditions. + + For a full description of filter syntax and usage, see the Filter Syntax + section of this topic. + + +## Filter Examples + +The following section shows many examples of filter use in common queries. + +### Example 1 - Get all entries: + +- LDAP Filter Equivalent: `(objectClass=*)` + +```powershell +Get-ADObject -Filter 'ObjectClass -like "*"' +``` + +### Example 2 - Get entries containing "bob" somewhere in the common name + +- LDAP Filter Equivalent: `(cn=*bob*)` + +```powershell +Get-ADObject -Filter 'CN -like "*bob*"' +``` + +### Example 3 - Get entries with a bad password count greater than five + +- LDAP Filter Equivalent: `(&(!badpwdcount<=5)(badpwdcount=*))` + +```powershell +Get-ADUser -Filter 'badpwdcount -ge 5' +``` + +### Example 4 - Get all users with an e-mail attribute + +- LDAP Filter Equivalent: `(&(objectClass=user)(email=*))` + +```powershell +Get-ADUser -filter 'email -like "*"' +``` + +-or- + +```powershell +Get-ADObject -filter 'email -like "*" -and ObjectClass -eq "user"' +``` + +### Example 5 - Get all user entries with an e-mail attribute and a surname equal to "smith": + +- LDAP Filter Equivalent: `(&(sn=smith)(objectClass=user)(email=*))` + +```powershell +Get-ADUser -Filter 'Email -like "*" -and SurName -eq "smith"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -like "*" -and sn -eq "smith"' +``` + + +### Example 6 - Get all user entries with a common name that starts with "andy" and users with a common name of "steve" or "margaret" + +- LDAP Filter Equivalent: `(&(objectClass=user) | (cn=andy*)(cn=steve)(cn=margaret))` + +```powershell +Get-ADUser -Filter 'CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret"' +``` + + +This example demonstrates a more complex logic and the use of precedence +control via parenthesis. + +```powershell +Get-ADObject -Filter 'objectClass -eq "user" -and (CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret")' +``` + +### Example 7 - Get all entries without an e-mail attribute + +- LDAP Filter Equivalent: `(!(email=*))` + +```powershell +Get-ADUser -Filter '-not Email -like "*"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -notlike "*"' +``` + +### Example 8 - Get all users who did not logon since January 1, 2007 + +- LDAP Filter Equivalent: `(&(lastlogon<=X)(objectClass=user))` where X is + number of 100-nanosecond slices since Jan 1st 1601 + +```powershell +$date = new-object System.DateTime -ArgumentList @(2007,1,1,0,0,0) +Get-ADUser -Filter '-not LastLogon -le $date' +``` + +### Example 9 - Get all users who have logged on in the last 5 days + +- LDAP Filter Equivalent: + + ``` + (&(lastLogon>=128812906535515110) + (objectClass=user)(!(objectClass=computer))) + ``` + +```powershell +$date = (get-date) - (new-timespan -days 5) +Get-ADUser -Filter 'lastLogon -gt $date' +``` + +### Example 10 - Search for group objects that have the ADS_GROUP_TYPE_SECURITY_ENABLED flag set + +- LDAP Filter Equivalent: + `(&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483648))` + +The following example query string searches for group objects that have the +ADS_GROUP_TYPE_SECURITY_ENABLED flag set. Be aware that the decimal value of +ADS_GROUP_TYPE_SECURITY_ENABLED (0x80000000 = 2147483648) is used for the +comparison value. + +```powershell +Get-ADGroup -filter 'groupType -band 0x80000000' +``` + +### Example 11 - Search the ancestry of an object + +- LDAP Filter Equivalent: + `(memberof:1.2.840.113556.1.4.1941:=(cn=Group1,OU=groupsOU,DC=x)))` + +The LDAP_MATCHING_RULE_IN_CHAIN is a matching rule OID that is designed to +provide a method to look up the ancestry of an object. Many applications using +Active Directory and AD LDS usually work with hierarchical data, which is +ordered by parent-child relationships. Previously, applications performed +transitive group expansion to figure out group membership, which used a lot of +network bandwidth. Applications made multiple round-trips to figure out if an +object fell "in the chain" if a link were traversed through to the end. + +An example of such a query is one designed to check if a user, "user1" is a +member of group "group1". "user1" may not be a direct member of group1. It +could be a member of some other group, which is a member of "group1". + +You would set the base to the user DN and the scope to base, and use the query: + +```powershell +Get-ADUser -Filter 'memberOf -RecursiveMatch "CN=Administrators, CN=Builtin,DC=Fabrikam,DC=com"' -SearchBase "CN=Administrator,CN=Users,DC=Fabrikam,DC=com" +``` + +## Filter Syntax + +The following syntax descriptions use Backus-Naur form to show the PowerShell +Expression Language for the Filter parameter. + +```Syntax + ::= "{" "}" + + ::= | + | + + + ::= | + "(" ")" + + ::= "-eq" | "-le" | "-ge" | "-ne" | "-lt" | "-gt" | + "-approx" | "-bor" | "-band" | "-recursivematch" | "-like" | + "-notlike" + + ::= "-and" | "-or" + + ::= "-not" + + ::= | + +::= < this value will be compared to the object data for + attribute using the specified filter operator +``` + + +## Supported Operators + +The following table shows frequently used search filter operators. + +| Operator | Description | LDAP Equivalent | +| ----------------- | -------------------------------------- | -------------------------- | +| `-eq` | Equal to. Wildcards not supported. | = | +| `-ne` | Not equal to. Wildcards not supported. | !x = y | +| `-approx` | Approximately equal to | ~= | +| `-le` | Lexicographically less than | <= | +| | or equal to | | +| `-lt` | Lexicographically less than | !x >= y | +| `-ge` | Lexicographically greater | >= | +| | than or equal to | | +| `-gt` | Lexicographically greater than | !x <= y | +| | | | +| `-and` | AND | & | +| `-or` | OR | | +| `-not` | NOT | ! | +| `-bor` | Bitwise OR | :1.2.840.113556.1.4.804:= | +| `-band` | Bitwise AND | :1.2.840.113556.1.4.803:= | +| `-recursivematch` | Use LDAP_MATCHING_RULE_IN_CHAIN | :1.2.840.113556.1.4.1941:= | +| `-like` | Similar to `-eq` and supports | = | +| | wildcard comparison. The only | | +| | wildcard character supported is: `*` | | +| `-notlike` | Not like. Supports wild | !x = y | +| | card comparison. | | + +> [!NOTE] +> PowerShell wildcards, other than "*", such as "?" are not supported by the +> **Filter** parameter syntax. + +### Operator Precedence + +The following listing shows the precedence of operators for filters from +highest to lowest. + +- Highest precedence: `-eq`, `-ge`, `-le`, `-approx`, `-band`, `-bor`, + `-recursivematch`, `-ne`, `-like`, `-not`, `-and` +- Lowest precedence: `-or` + +### Special Characters + +The following escape sequence should be used for specifying special characters +in AD Filter STRING data, that is, data enclosed in double or single quotes. + +| ASCII Character | Escape sequence substitute | +| --------------- | --------------------------------------------------- | +| `"` | `` `" `` (This escape sequence is only required if | +| | STRING data is enclosed in double quotes.) | +| `'` | `''` (This escape sequence is only required if | +| | STRING data is enclosed in single quotes.) | +| NUL | `\00` (This is a standard LDAP escape sequence.) | +| `\` | `\5c` (This is a standard LDAP escape sequence.) | + +### LDAP Special Characters + +ADFilter parser will automatically convert all the below characters found in +STRING data, that is data enclosed in " " or ' ' to their LDAP escape sequence. +End users need not know about these LDAP escape sequence. + +| ASCII Character | Escape sequence substitute | +| --------------- | ----------------------------------------------- | +| `*` | `\2a` (Character `*` will only be converted in | +| | -eq and -ne comparisons Users should use | +| | -like and -notlike operators for wildcard | +| | comparison.) | +| `(` | `\28` | +| `)` | `\29` | +| `/` | `\2f` | diff --git a/docset/winserver2012r2-ps/activedirectory/About/About.md b/docset/winserver2012r2-ps/activedirectory/About/About.md new file mode 100644 index 0000000000..adc76085b9 --- /dev/null +++ b/docset/winserver2012r2-ps/activedirectory/About/About.md @@ -0,0 +1,17 @@ +--- +description: About articles for the ActiveDirectory module. +Help Version: 3.1.0.0 +Locale: en-US +ms.date: 04/22/2013 +title: About articles +--- +# About topics + +## Description + +About topics cover a range of concepts about PowerShell. + +## About Topics + +### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) +Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_Filter.md b/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_Filter.md new file mode 100644 index 0000000000..23a83c0a0a --- /dev/null +++ b/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_Filter.md @@ -0,0 +1,351 @@ +--- +title: about_ActiveDirectory_Filter +ms.date: 04/22/2013 +description: Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Filter + +## SHORT DESCRIPTION + +Describes the syntax and behavior of the search filter supported by the Active +Directory module for Windows PowerShell. + +## LONG DESCRIPTION + +Most get-AD* Active Directory module cmdlets use the Filter parameter to search +for objects. The Filter parameter has been implemented to replace the function +of the LDAP Filter and adds support for PowerShell variables, rich data types, +improved error checking and an Active Directory extended form of the PowerShell +Expression Language. + + +- Support for LDAP Filter Syntax + + The LDAP filter syntax is supported through the **LDAPFilter** parameter. You + will find LDAP filter examples along with the new Active Directory module + filter examples in the Filter Examples section of this topic. + + +- Search Breadth and Depth + + The breadth and depth of your filter-driven search can be modified by two + Active Directory module cmdlet parameters: **SearchBase** and **SearchScope**. + + When within the context of the Active Directory provider, if the + **Searchbase** parameter is not specified, **SearchBase** will default to the + current path. When not running under the Active Directory provider, the + **SearchBase** will default to the server's **DefaultNamingContext**. + + The **SearchScope** parameter defaults to the value `Subtree`, of the + enumerated type **ADSearchScope**. + + For more information, see the **SearchBase** and **SearchScope** parameter + descriptions on any `Get-AD*` cmdlet. + +- Search Result Behavior + + The behavior of the Active Directory module when returning results of a + search is modified by two cmdlet parameters: **ResultPageSize** and + **ResultSetSize**. + + **ResultSetSize** controls the maximum number of returned objects. + + **ResultPageSize** specifies the maximum number of objects for each returned + page of information. + + See the **ResultPageSize** and **ResultSetSize** parameter descriptions on + any `Get-AD*` cmdlet for more information. + + +- Timeout Behavior + + The following statements specify timeout conditions within the Active + Directory module and describe what can be done about a timeout them. + + The default Active Directory module timeout for all operations is 2 + minutes. + + For search operation, the Active Directory module uses paging control + with a 2-minute timeout for each page search. + + > [!NOTE] + > Because a search may involve multiple server page requests the overall + > search time may exceed 2 minutes. + + A **TimeoutException** error indicates that a timeout has occurred. + + For a search operation, you can choose to use a smaller page size, set with + the **ResultPageSize** parameter, if you are getting a **TimeoutException** + error. + + If after trying these changes you are still getting a **TimeoutException** + error, consider optimizing your filter using the guidance in the + Optimizing Filters section of this topic. + + +- Optimizing Filters + + You can enhance the search filter behavior by using these guidelines. + + - Avoid using the **Recursive** parameter as it intensifies resource usage of + the search operation. + - Avoid using bitwise AND operators and bitwise OR operators. For more + information, see the Supported Operators section of this topic. + - Avoid using the logical NOT operator. + - Break down your search into multiple queries with narrower conditions. + + For a full description of filter syntax and usage, see the Filter Syntax + section of this topic. + + +## Filter Examples + +The following section shows many examples of filter use in common queries. + +### Example 1 - Get all entries: + +- LDAP Filter Equivalent: `(objectClass=*)` + +```powershell +Get-ADObject -Filter 'ObjectClass -like "*"' +``` + +### Example 2 - Get entries containing "bob" somewhere in the common name + +- LDAP Filter Equivalent: `(cn=*bob*)` + +```powershell +Get-ADObject -Filter 'CN -like "*bob*"' +``` + +### Example 3 - Get entries with a bad password count greater than five + +- LDAP Filter Equivalent: `(&(!badpwdcount<=5)(badpwdcount=*))` + +```powershell +Get-ADUser -Filter 'badpwdcount -ge 5' +``` + +### Example 4 - Get all users with an e-mail attribute + +- LDAP Filter Equivalent: `(&(objectClass=user)(email=*))` + +```powershell +Get-ADUser -filter 'email -like "*"' +``` + +-or- + +```powershell +Get-ADObject -filter 'email -like "*" -and ObjectClass -eq "user"' +``` + +### Example 5 - Get all user entries with an e-mail attribute and a surname equal to "smith": + +- LDAP Filter Equivalent: `(&(sn=smith)(objectClass=user)(email=*))` + +```powershell +Get-ADUser -Filter 'Email -like "*" -and SurName -eq "smith"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -like "*" -and sn -eq "smith"' +``` + + +### Example 6 - Get all user entries with a common name that starts with "andy" and users with a common name of "steve" or "margaret" + +- LDAP Filter Equivalent: `(&(objectClass=user) | (cn=andy*)(cn=steve)(cn=margaret))` + +```powershell +Get-ADUser -Filter 'CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret"' +``` + + +This example demonstrates a more complex logic and the use of precedence +control via parenthesis. + +```powershell +Get-ADObject -Filter 'objectClass -eq "user" -and (CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret")' +``` + +### Example 7 - Get all entries without an e-mail attribute + +- LDAP Filter Equivalent: `(!(email=*))` + +```powershell +Get-ADUser -Filter '-not Email -like "*"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -notlike "*"' +``` + +### Example 8 - Get all users who did not logon since January 1, 2007 + +- LDAP Filter Equivalent: `(&(lastlogon<=X)(objectClass=user))` where X is + number of 100-nanosecond slices since Jan 1st 1601 + +```powershell +$date = new-object System.DateTime -ArgumentList @(2007,1,1,0,0,0) +Get-ADUser -Filter '-not LastLogon -le $date' +``` + +### Example 9 - Get all users who have logged on in the last 5 days + +- LDAP Filter Equivalent: + + ``` + (&(lastLogon>=128812906535515110) + (objectClass=user)(!(objectClass=computer))) + ``` + +```powershell +$date = (get-date) - (new-timespan -days 5) +Get-ADUser -Filter 'lastLogon -gt $date' +``` + +### Example 10 - Search for group objects that have the ADS_GROUP_TYPE_SECURITY_ENABLED flag set + +- LDAP Filter Equivalent: + `(&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483648))` + +The following example query string searches for group objects that have the +ADS_GROUP_TYPE_SECURITY_ENABLED flag set. Be aware that the decimal value of +ADS_GROUP_TYPE_SECURITY_ENABLED (0x80000000 = 2147483648) is used for the +comparison value. + +```powershell +Get-ADGroup -filter 'groupType -band 0x80000000' +``` + +### Example 11 - Search the ancestry of an object + +- LDAP Filter Equivalent: + `(memberof:1.2.840.113556.1.4.1941:=(cn=Group1,OU=groupsOU,DC=x)))` + +The LDAP_MATCHING_RULE_IN_CHAIN is a matching rule OID that is designed to +provide a method to look up the ancestry of an object. Many applications using +Active Directory and AD LDS usually work with hierarchical data, which is +ordered by parent-child relationships. Previously, applications performed +transitive group expansion to figure out group membership, which used a lot of +network bandwidth. Applications made multiple round-trips to figure out if an +object fell "in the chain" if a link were traversed through to the end. + +An example of such a query is one designed to check if a user, "user1" is a +member of group "group1". "user1" may not be a direct member of group1. It +could be a member of some other group, which is a member of "group1". + +You would set the base to the user DN and the scope to base, and use the query: + +```powershell +Get-ADUser -Filter 'memberOf -RecursiveMatch "CN=Administrators, CN=Builtin,DC=Fabrikam,DC=com"' -SearchBase "CN=Administrator,CN=Users,DC=Fabrikam,DC=com" +``` + +## Filter Syntax + +The following syntax descriptions use Backus-Naur form to show the PowerShell +Expression Language for the Filter parameter. + +```Syntax + ::= "{" "}" + + ::= | + | + + + ::= | + "(" ")" + + ::= "-eq" | "-le" | "-ge" | "-ne" | "-lt" | "-gt" | + "-approx" | "-bor" | "-band" | "-recursivematch" | "-like" | + "-notlike" + + ::= "-and" | "-or" + + ::= "-not" + + ::= | + +::= < this value will be compared to the object data for + attribute using the specified filter operator +``` + + +## Supported Operators + +The following table shows frequently used search filter operators. + +| Operator | Description | LDAP Equivalent | +| ----------------- | -------------------------------------- | -------------------------- | +| `-eq` | Equal to. Wildcards not supported. | = | +| `-ne` | Not equal to. Wildcards not supported. | !x = y | +| `-approx` | Approximately equal to | ~= | +| `-le` | Lexicographically less than | <= | +| | or equal to | | +| `-lt` | Lexicographically less than | !x >= y | +| `-ge` | Lexicographically greater | >= | +| | than or equal to | | +| `-gt` | Lexicographically greater than | !x <= y | +| | | | +| `-and` | AND | & | +| `-or` | OR | | +| `-not` | NOT | ! | +| `-bor` | Bitwise OR | :1.2.840.113556.1.4.804:= | +| `-band` | Bitwise AND | :1.2.840.113556.1.4.803:= | +| `-recursivematch` | Use LDAP_MATCHING_RULE_IN_CHAIN | :1.2.840.113556.1.4.1941:= | +| `-like` | Similar to `-eq` and supports | = | +| | wildcard comparison. The only | | +| | wildcard character supported is: `*` | | +| `-notlike` | Not like. Supports wild | !x = y | +| | card comparison. | | + +> [!NOTE] +> PowerShell wildcards, other than "*", such as "?" are not supported by the +> **Filter** parameter syntax. + +### Operator Precedence + +The following listing shows the precedence of operators for filters from +highest to lowest. + +- Highest precedence: `-eq`, `-ge`, `-le`, `-approx`, `-band`, `-bor`, + `-recursivematch`, `-ne`, `-like`, `-not`, `-and` +- Lowest precedence: `-or` + +### Special Characters + +The following escape sequence should be used for specifying special characters +in AD Filter STRING data, that is, data enclosed in double or single quotes. + +| ASCII Character | Escape sequence substitute | +| --------------- | --------------------------------------------------- | +| `"` | `` `" `` (This escape sequence is only required if | +| | STRING data is enclosed in double quotes.) | +| `'` | `''` (This escape sequence is only required if | +| | STRING data is enclosed in single quotes.) | +| NUL | `\00` (This is a standard LDAP escape sequence.) | +| `\` | `\5c` (This is a standard LDAP escape sequence.) | + +### LDAP Special Characters + +ADFilter parser will automatically convert all the below characters found in +STRING data, that is data enclosed in " " or ' ' to their LDAP escape sequence. +End users need not know about these LDAP escape sequence. + +| ASCII Character | Escape sequence substitute | +| --------------- | ----------------------------------------------- | +| `*` | `\2a` (Character `*` will only be converted in | +| | -eq and -ne comparisons Users should use | +| | -like and -notlike operators for wildcard | +| | comparison.) | +| `(` | `\28` | +| `)` | `\29` | +| `/` | `\2f` | diff --git a/docset/winserver2016-ps/activedirectory/About/About.md b/docset/winserver2016-ps/activedirectory/About/About.md new file mode 100644 index 0000000000..adc76085b9 --- /dev/null +++ b/docset/winserver2016-ps/activedirectory/About/About.md @@ -0,0 +1,17 @@ +--- +description: About articles for the ActiveDirectory module. +Help Version: 3.1.0.0 +Locale: en-US +ms.date: 04/22/2013 +title: About articles +--- +# About topics + +## Description + +About topics cover a range of concepts about PowerShell. + +## About Topics + +### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) +Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_Filter.md b/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_Filter.md new file mode 100644 index 0000000000..23a83c0a0a --- /dev/null +++ b/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_Filter.md @@ -0,0 +1,351 @@ +--- +title: about_ActiveDirectory_Filter +ms.date: 04/22/2013 +description: Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Filter + +## SHORT DESCRIPTION + +Describes the syntax and behavior of the search filter supported by the Active +Directory module for Windows PowerShell. + +## LONG DESCRIPTION + +Most get-AD* Active Directory module cmdlets use the Filter parameter to search +for objects. The Filter parameter has been implemented to replace the function +of the LDAP Filter and adds support for PowerShell variables, rich data types, +improved error checking and an Active Directory extended form of the PowerShell +Expression Language. + + +- Support for LDAP Filter Syntax + + The LDAP filter syntax is supported through the **LDAPFilter** parameter. You + will find LDAP filter examples along with the new Active Directory module + filter examples in the Filter Examples section of this topic. + + +- Search Breadth and Depth + + The breadth and depth of your filter-driven search can be modified by two + Active Directory module cmdlet parameters: **SearchBase** and **SearchScope**. + + When within the context of the Active Directory provider, if the + **Searchbase** parameter is not specified, **SearchBase** will default to the + current path. When not running under the Active Directory provider, the + **SearchBase** will default to the server's **DefaultNamingContext**. + + The **SearchScope** parameter defaults to the value `Subtree`, of the + enumerated type **ADSearchScope**. + + For more information, see the **SearchBase** and **SearchScope** parameter + descriptions on any `Get-AD*` cmdlet. + +- Search Result Behavior + + The behavior of the Active Directory module when returning results of a + search is modified by two cmdlet parameters: **ResultPageSize** and + **ResultSetSize**. + + **ResultSetSize** controls the maximum number of returned objects. + + **ResultPageSize** specifies the maximum number of objects for each returned + page of information. + + See the **ResultPageSize** and **ResultSetSize** parameter descriptions on + any `Get-AD*` cmdlet for more information. + + +- Timeout Behavior + + The following statements specify timeout conditions within the Active + Directory module and describe what can be done about a timeout them. + + The default Active Directory module timeout for all operations is 2 + minutes. + + For search operation, the Active Directory module uses paging control + with a 2-minute timeout for each page search. + + > [!NOTE] + > Because a search may involve multiple server page requests the overall + > search time may exceed 2 minutes. + + A **TimeoutException** error indicates that a timeout has occurred. + + For a search operation, you can choose to use a smaller page size, set with + the **ResultPageSize** parameter, if you are getting a **TimeoutException** + error. + + If after trying these changes you are still getting a **TimeoutException** + error, consider optimizing your filter using the guidance in the + Optimizing Filters section of this topic. + + +- Optimizing Filters + + You can enhance the search filter behavior by using these guidelines. + + - Avoid using the **Recursive** parameter as it intensifies resource usage of + the search operation. + - Avoid using bitwise AND operators and bitwise OR operators. For more + information, see the Supported Operators section of this topic. + - Avoid using the logical NOT operator. + - Break down your search into multiple queries with narrower conditions. + + For a full description of filter syntax and usage, see the Filter Syntax + section of this topic. + + +## Filter Examples + +The following section shows many examples of filter use in common queries. + +### Example 1 - Get all entries: + +- LDAP Filter Equivalent: `(objectClass=*)` + +```powershell +Get-ADObject -Filter 'ObjectClass -like "*"' +``` + +### Example 2 - Get entries containing "bob" somewhere in the common name + +- LDAP Filter Equivalent: `(cn=*bob*)` + +```powershell +Get-ADObject -Filter 'CN -like "*bob*"' +``` + +### Example 3 - Get entries with a bad password count greater than five + +- LDAP Filter Equivalent: `(&(!badpwdcount<=5)(badpwdcount=*))` + +```powershell +Get-ADUser -Filter 'badpwdcount -ge 5' +``` + +### Example 4 - Get all users with an e-mail attribute + +- LDAP Filter Equivalent: `(&(objectClass=user)(email=*))` + +```powershell +Get-ADUser -filter 'email -like "*"' +``` + +-or- + +```powershell +Get-ADObject -filter 'email -like "*" -and ObjectClass -eq "user"' +``` + +### Example 5 - Get all user entries with an e-mail attribute and a surname equal to "smith": + +- LDAP Filter Equivalent: `(&(sn=smith)(objectClass=user)(email=*))` + +```powershell +Get-ADUser -Filter 'Email -like "*" -and SurName -eq "smith"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -like "*" -and sn -eq "smith"' +``` + + +### Example 6 - Get all user entries with a common name that starts with "andy" and users with a common name of "steve" or "margaret" + +- LDAP Filter Equivalent: `(&(objectClass=user) | (cn=andy*)(cn=steve)(cn=margaret))` + +```powershell +Get-ADUser -Filter 'CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret"' +``` + + +This example demonstrates a more complex logic and the use of precedence +control via parenthesis. + +```powershell +Get-ADObject -Filter 'objectClass -eq "user" -and (CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret")' +``` + +### Example 7 - Get all entries without an e-mail attribute + +- LDAP Filter Equivalent: `(!(email=*))` + +```powershell +Get-ADUser -Filter '-not Email -like "*"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -notlike "*"' +``` + +### Example 8 - Get all users who did not logon since January 1, 2007 + +- LDAP Filter Equivalent: `(&(lastlogon<=X)(objectClass=user))` where X is + number of 100-nanosecond slices since Jan 1st 1601 + +```powershell +$date = new-object System.DateTime -ArgumentList @(2007,1,1,0,0,0) +Get-ADUser -Filter '-not LastLogon -le $date' +``` + +### Example 9 - Get all users who have logged on in the last 5 days + +- LDAP Filter Equivalent: + + ``` + (&(lastLogon>=128812906535515110) + (objectClass=user)(!(objectClass=computer))) + ``` + +```powershell +$date = (get-date) - (new-timespan -days 5) +Get-ADUser -Filter 'lastLogon -gt $date' +``` + +### Example 10 - Search for group objects that have the ADS_GROUP_TYPE_SECURITY_ENABLED flag set + +- LDAP Filter Equivalent: + `(&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483648))` + +The following example query string searches for group objects that have the +ADS_GROUP_TYPE_SECURITY_ENABLED flag set. Be aware that the decimal value of +ADS_GROUP_TYPE_SECURITY_ENABLED (0x80000000 = 2147483648) is used for the +comparison value. + +```powershell +Get-ADGroup -filter 'groupType -band 0x80000000' +``` + +### Example 11 - Search the ancestry of an object + +- LDAP Filter Equivalent: + `(memberof:1.2.840.113556.1.4.1941:=(cn=Group1,OU=groupsOU,DC=x)))` + +The LDAP_MATCHING_RULE_IN_CHAIN is a matching rule OID that is designed to +provide a method to look up the ancestry of an object. Many applications using +Active Directory and AD LDS usually work with hierarchical data, which is +ordered by parent-child relationships. Previously, applications performed +transitive group expansion to figure out group membership, which used a lot of +network bandwidth. Applications made multiple round-trips to figure out if an +object fell "in the chain" if a link were traversed through to the end. + +An example of such a query is one designed to check if a user, "user1" is a +member of group "group1". "user1" may not be a direct member of group1. It +could be a member of some other group, which is a member of "group1". + +You would set the base to the user DN and the scope to base, and use the query: + +```powershell +Get-ADUser -Filter 'memberOf -RecursiveMatch "CN=Administrators, CN=Builtin,DC=Fabrikam,DC=com"' -SearchBase "CN=Administrator,CN=Users,DC=Fabrikam,DC=com" +``` + +## Filter Syntax + +The following syntax descriptions use Backus-Naur form to show the PowerShell +Expression Language for the Filter parameter. + +```Syntax + ::= "{" "}" + + ::= | + | + + + ::= | + "(" ")" + + ::= "-eq" | "-le" | "-ge" | "-ne" | "-lt" | "-gt" | + "-approx" | "-bor" | "-band" | "-recursivematch" | "-like" | + "-notlike" + + ::= "-and" | "-or" + + ::= "-not" + + ::= | + +::= < this value will be compared to the object data for + attribute using the specified filter operator +``` + + +## Supported Operators + +The following table shows frequently used search filter operators. + +| Operator | Description | LDAP Equivalent | +| ----------------- | -------------------------------------- | -------------------------- | +| `-eq` | Equal to. Wildcards not supported. | = | +| `-ne` | Not equal to. Wildcards not supported. | !x = y | +| `-approx` | Approximately equal to | ~= | +| `-le` | Lexicographically less than | <= | +| | or equal to | | +| `-lt` | Lexicographically less than | !x >= y | +| `-ge` | Lexicographically greater | >= | +| | than or equal to | | +| `-gt` | Lexicographically greater than | !x <= y | +| | | | +| `-and` | AND | & | +| `-or` | OR | | +| `-not` | NOT | ! | +| `-bor` | Bitwise OR | :1.2.840.113556.1.4.804:= | +| `-band` | Bitwise AND | :1.2.840.113556.1.4.803:= | +| `-recursivematch` | Use LDAP_MATCHING_RULE_IN_CHAIN | :1.2.840.113556.1.4.1941:= | +| `-like` | Similar to `-eq` and supports | = | +| | wildcard comparison. The only | | +| | wildcard character supported is: `*` | | +| `-notlike` | Not like. Supports wild | !x = y | +| | card comparison. | | + +> [!NOTE] +> PowerShell wildcards, other than "*", such as "?" are not supported by the +> **Filter** parameter syntax. + +### Operator Precedence + +The following listing shows the precedence of operators for filters from +highest to lowest. + +- Highest precedence: `-eq`, `-ge`, `-le`, `-approx`, `-band`, `-bor`, + `-recursivematch`, `-ne`, `-like`, `-not`, `-and` +- Lowest precedence: `-or` + +### Special Characters + +The following escape sequence should be used for specifying special characters +in AD Filter STRING data, that is, data enclosed in double or single quotes. + +| ASCII Character | Escape sequence substitute | +| --------------- | --------------------------------------------------- | +| `"` | `` `" `` (This escape sequence is only required if | +| | STRING data is enclosed in double quotes.) | +| `'` | `''` (This escape sequence is only required if | +| | STRING data is enclosed in single quotes.) | +| NUL | `\00` (This is a standard LDAP escape sequence.) | +| `\` | `\5c` (This is a standard LDAP escape sequence.) | + +### LDAP Special Characters + +ADFilter parser will automatically convert all the below characters found in +STRING data, that is data enclosed in " " or ' ' to their LDAP escape sequence. +End users need not know about these LDAP escape sequence. + +| ASCII Character | Escape sequence substitute | +| --------------- | ----------------------------------------------- | +| `*` | `\2a` (Character `*` will only be converted in | +| | -eq and -ne comparisons Users should use | +| | -like and -notlike operators for wildcard | +| | comparison.) | +| `(` | `\28` | +| `)` | `\29` | +| `/` | `\2f` | diff --git a/docset/winserver2019-ps/activedirectory/About/About.md b/docset/winserver2019-ps/activedirectory/About/About.md new file mode 100644 index 0000000000..adc76085b9 --- /dev/null +++ b/docset/winserver2019-ps/activedirectory/About/About.md @@ -0,0 +1,17 @@ +--- +description: About articles for the ActiveDirectory module. +Help Version: 3.1.0.0 +Locale: en-US +ms.date: 04/22/2013 +title: About articles +--- +# About topics + +## Description + +About topics cover a range of concepts about PowerShell. + +## About Topics + +### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) +Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_Filter.md b/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_Filter.md new file mode 100644 index 0000000000..23a83c0a0a --- /dev/null +++ b/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_Filter.md @@ -0,0 +1,351 @@ +--- +title: about_ActiveDirectory_Filter +ms.date: 04/22/2013 +description: Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Filter + +## SHORT DESCRIPTION + +Describes the syntax and behavior of the search filter supported by the Active +Directory module for Windows PowerShell. + +## LONG DESCRIPTION + +Most get-AD* Active Directory module cmdlets use the Filter parameter to search +for objects. The Filter parameter has been implemented to replace the function +of the LDAP Filter and adds support for PowerShell variables, rich data types, +improved error checking and an Active Directory extended form of the PowerShell +Expression Language. + + +- Support for LDAP Filter Syntax + + The LDAP filter syntax is supported through the **LDAPFilter** parameter. You + will find LDAP filter examples along with the new Active Directory module + filter examples in the Filter Examples section of this topic. + + +- Search Breadth and Depth + + The breadth and depth of your filter-driven search can be modified by two + Active Directory module cmdlet parameters: **SearchBase** and **SearchScope**. + + When within the context of the Active Directory provider, if the + **Searchbase** parameter is not specified, **SearchBase** will default to the + current path. When not running under the Active Directory provider, the + **SearchBase** will default to the server's **DefaultNamingContext**. + + The **SearchScope** parameter defaults to the value `Subtree`, of the + enumerated type **ADSearchScope**. + + For more information, see the **SearchBase** and **SearchScope** parameter + descriptions on any `Get-AD*` cmdlet. + +- Search Result Behavior + + The behavior of the Active Directory module when returning results of a + search is modified by two cmdlet parameters: **ResultPageSize** and + **ResultSetSize**. + + **ResultSetSize** controls the maximum number of returned objects. + + **ResultPageSize** specifies the maximum number of objects for each returned + page of information. + + See the **ResultPageSize** and **ResultSetSize** parameter descriptions on + any `Get-AD*` cmdlet for more information. + + +- Timeout Behavior + + The following statements specify timeout conditions within the Active + Directory module and describe what can be done about a timeout them. + + The default Active Directory module timeout for all operations is 2 + minutes. + + For search operation, the Active Directory module uses paging control + with a 2-minute timeout for each page search. + + > [!NOTE] + > Because a search may involve multiple server page requests the overall + > search time may exceed 2 minutes. + + A **TimeoutException** error indicates that a timeout has occurred. + + For a search operation, you can choose to use a smaller page size, set with + the **ResultPageSize** parameter, if you are getting a **TimeoutException** + error. + + If after trying these changes you are still getting a **TimeoutException** + error, consider optimizing your filter using the guidance in the + Optimizing Filters section of this topic. + + +- Optimizing Filters + + You can enhance the search filter behavior by using these guidelines. + + - Avoid using the **Recursive** parameter as it intensifies resource usage of + the search operation. + - Avoid using bitwise AND operators and bitwise OR operators. For more + information, see the Supported Operators section of this topic. + - Avoid using the logical NOT operator. + - Break down your search into multiple queries with narrower conditions. + + For a full description of filter syntax and usage, see the Filter Syntax + section of this topic. + + +## Filter Examples + +The following section shows many examples of filter use in common queries. + +### Example 1 - Get all entries: + +- LDAP Filter Equivalent: `(objectClass=*)` + +```powershell +Get-ADObject -Filter 'ObjectClass -like "*"' +``` + +### Example 2 - Get entries containing "bob" somewhere in the common name + +- LDAP Filter Equivalent: `(cn=*bob*)` + +```powershell +Get-ADObject -Filter 'CN -like "*bob*"' +``` + +### Example 3 - Get entries with a bad password count greater than five + +- LDAP Filter Equivalent: `(&(!badpwdcount<=5)(badpwdcount=*))` + +```powershell +Get-ADUser -Filter 'badpwdcount -ge 5' +``` + +### Example 4 - Get all users with an e-mail attribute + +- LDAP Filter Equivalent: `(&(objectClass=user)(email=*))` + +```powershell +Get-ADUser -filter 'email -like "*"' +``` + +-or- + +```powershell +Get-ADObject -filter 'email -like "*" -and ObjectClass -eq "user"' +``` + +### Example 5 - Get all user entries with an e-mail attribute and a surname equal to "smith": + +- LDAP Filter Equivalent: `(&(sn=smith)(objectClass=user)(email=*))` + +```powershell +Get-ADUser -Filter 'Email -like "*" -and SurName -eq "smith"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -like "*" -and sn -eq "smith"' +``` + + +### Example 6 - Get all user entries with a common name that starts with "andy" and users with a common name of "steve" or "margaret" + +- LDAP Filter Equivalent: `(&(objectClass=user) | (cn=andy*)(cn=steve)(cn=margaret))` + +```powershell +Get-ADUser -Filter 'CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret"' +``` + + +This example demonstrates a more complex logic and the use of precedence +control via parenthesis. + +```powershell +Get-ADObject -Filter 'objectClass -eq "user" -and (CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret")' +``` + +### Example 7 - Get all entries without an e-mail attribute + +- LDAP Filter Equivalent: `(!(email=*))` + +```powershell +Get-ADUser -Filter '-not Email -like "*"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -notlike "*"' +``` + +### Example 8 - Get all users who did not logon since January 1, 2007 + +- LDAP Filter Equivalent: `(&(lastlogon<=X)(objectClass=user))` where X is + number of 100-nanosecond slices since Jan 1st 1601 + +```powershell +$date = new-object System.DateTime -ArgumentList @(2007,1,1,0,0,0) +Get-ADUser -Filter '-not LastLogon -le $date' +``` + +### Example 9 - Get all users who have logged on in the last 5 days + +- LDAP Filter Equivalent: + + ``` + (&(lastLogon>=128812906535515110) + (objectClass=user)(!(objectClass=computer))) + ``` + +```powershell +$date = (get-date) - (new-timespan -days 5) +Get-ADUser -Filter 'lastLogon -gt $date' +``` + +### Example 10 - Search for group objects that have the ADS_GROUP_TYPE_SECURITY_ENABLED flag set + +- LDAP Filter Equivalent: + `(&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483648))` + +The following example query string searches for group objects that have the +ADS_GROUP_TYPE_SECURITY_ENABLED flag set. Be aware that the decimal value of +ADS_GROUP_TYPE_SECURITY_ENABLED (0x80000000 = 2147483648) is used for the +comparison value. + +```powershell +Get-ADGroup -filter 'groupType -band 0x80000000' +``` + +### Example 11 - Search the ancestry of an object + +- LDAP Filter Equivalent: + `(memberof:1.2.840.113556.1.4.1941:=(cn=Group1,OU=groupsOU,DC=x)))` + +The LDAP_MATCHING_RULE_IN_CHAIN is a matching rule OID that is designed to +provide a method to look up the ancestry of an object. Many applications using +Active Directory and AD LDS usually work with hierarchical data, which is +ordered by parent-child relationships. Previously, applications performed +transitive group expansion to figure out group membership, which used a lot of +network bandwidth. Applications made multiple round-trips to figure out if an +object fell "in the chain" if a link were traversed through to the end. + +An example of such a query is one designed to check if a user, "user1" is a +member of group "group1". "user1" may not be a direct member of group1. It +could be a member of some other group, which is a member of "group1". + +You would set the base to the user DN and the scope to base, and use the query: + +```powershell +Get-ADUser -Filter 'memberOf -RecursiveMatch "CN=Administrators, CN=Builtin,DC=Fabrikam,DC=com"' -SearchBase "CN=Administrator,CN=Users,DC=Fabrikam,DC=com" +``` + +## Filter Syntax + +The following syntax descriptions use Backus-Naur form to show the PowerShell +Expression Language for the Filter parameter. + +```Syntax + ::= "{" "}" + + ::= | + | + + + ::= | + "(" ")" + + ::= "-eq" | "-le" | "-ge" | "-ne" | "-lt" | "-gt" | + "-approx" | "-bor" | "-band" | "-recursivematch" | "-like" | + "-notlike" + + ::= "-and" | "-or" + + ::= "-not" + + ::= | + +::= < this value will be compared to the object data for + attribute using the specified filter operator +``` + + +## Supported Operators + +The following table shows frequently used search filter operators. + +| Operator | Description | LDAP Equivalent | +| ----------------- | -------------------------------------- | -------------------------- | +| `-eq` | Equal to. Wildcards not supported. | = | +| `-ne` | Not equal to. Wildcards not supported. | !x = y | +| `-approx` | Approximately equal to | ~= | +| `-le` | Lexicographically less than | <= | +| | or equal to | | +| `-lt` | Lexicographically less than | !x >= y | +| `-ge` | Lexicographically greater | >= | +| | than or equal to | | +| `-gt` | Lexicographically greater than | !x <= y | +| | | | +| `-and` | AND | & | +| `-or` | OR | | +| `-not` | NOT | ! | +| `-bor` | Bitwise OR | :1.2.840.113556.1.4.804:= | +| `-band` | Bitwise AND | :1.2.840.113556.1.4.803:= | +| `-recursivematch` | Use LDAP_MATCHING_RULE_IN_CHAIN | :1.2.840.113556.1.4.1941:= | +| `-like` | Similar to `-eq` and supports | = | +| | wildcard comparison. The only | | +| | wildcard character supported is: `*` | | +| `-notlike` | Not like. Supports wild | !x = y | +| | card comparison. | | + +> [!NOTE] +> PowerShell wildcards, other than "*", such as "?" are not supported by the +> **Filter** parameter syntax. + +### Operator Precedence + +The following listing shows the precedence of operators for filters from +highest to lowest. + +- Highest precedence: `-eq`, `-ge`, `-le`, `-approx`, `-band`, `-bor`, + `-recursivematch`, `-ne`, `-like`, `-not`, `-and` +- Lowest precedence: `-or` + +### Special Characters + +The following escape sequence should be used for specifying special characters +in AD Filter STRING data, that is, data enclosed in double or single quotes. + +| ASCII Character | Escape sequence substitute | +| --------------- | --------------------------------------------------- | +| `"` | `` `" `` (This escape sequence is only required if | +| | STRING data is enclosed in double quotes.) | +| `'` | `''` (This escape sequence is only required if | +| | STRING data is enclosed in single quotes.) | +| NUL | `\00` (This is a standard LDAP escape sequence.) | +| `\` | `\5c` (This is a standard LDAP escape sequence.) | + +### LDAP Special Characters + +ADFilter parser will automatically convert all the below characters found in +STRING data, that is data enclosed in " " or ' ' to their LDAP escape sequence. +End users need not know about these LDAP escape sequence. + +| ASCII Character | Escape sequence substitute | +| --------------- | ----------------------------------------------- | +| `*` | `\2a` (Character `*` will only be converted in | +| | -eq and -ne comparisons Users should use | +| | -like and -notlike operators for wildcard | +| | comparison.) | +| `(` | `\28` | +| `)` | `\29` | +| `/` | `\2f` | diff --git a/docset/winserver2022-ps/activedirectory/About/About.md b/docset/winserver2022-ps/activedirectory/About/About.md new file mode 100644 index 0000000000..adc76085b9 --- /dev/null +++ b/docset/winserver2022-ps/activedirectory/About/About.md @@ -0,0 +1,17 @@ +--- +description: About articles for the ActiveDirectory module. +Help Version: 3.1.0.0 +Locale: en-US +ms.date: 04/22/2013 +title: About articles +--- +# About topics + +## Description + +About topics cover a range of concepts about PowerShell. + +## About Topics + +### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) +Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_Filter.md b/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_Filter.md new file mode 100644 index 0000000000..23a83c0a0a --- /dev/null +++ b/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_Filter.md @@ -0,0 +1,351 @@ +--- +title: about_ActiveDirectory_Filter +ms.date: 04/22/2013 +description: Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Filter + +## SHORT DESCRIPTION + +Describes the syntax and behavior of the search filter supported by the Active +Directory module for Windows PowerShell. + +## LONG DESCRIPTION + +Most get-AD* Active Directory module cmdlets use the Filter parameter to search +for objects. The Filter parameter has been implemented to replace the function +of the LDAP Filter and adds support for PowerShell variables, rich data types, +improved error checking and an Active Directory extended form of the PowerShell +Expression Language. + + +- Support for LDAP Filter Syntax + + The LDAP filter syntax is supported through the **LDAPFilter** parameter. You + will find LDAP filter examples along with the new Active Directory module + filter examples in the Filter Examples section of this topic. + + +- Search Breadth and Depth + + The breadth and depth of your filter-driven search can be modified by two + Active Directory module cmdlet parameters: **SearchBase** and **SearchScope**. + + When within the context of the Active Directory provider, if the + **Searchbase** parameter is not specified, **SearchBase** will default to the + current path. When not running under the Active Directory provider, the + **SearchBase** will default to the server's **DefaultNamingContext**. + + The **SearchScope** parameter defaults to the value `Subtree`, of the + enumerated type **ADSearchScope**. + + For more information, see the **SearchBase** and **SearchScope** parameter + descriptions on any `Get-AD*` cmdlet. + +- Search Result Behavior + + The behavior of the Active Directory module when returning results of a + search is modified by two cmdlet parameters: **ResultPageSize** and + **ResultSetSize**. + + **ResultSetSize** controls the maximum number of returned objects. + + **ResultPageSize** specifies the maximum number of objects for each returned + page of information. + + See the **ResultPageSize** and **ResultSetSize** parameter descriptions on + any `Get-AD*` cmdlet for more information. + + +- Timeout Behavior + + The following statements specify timeout conditions within the Active + Directory module and describe what can be done about a timeout them. + + The default Active Directory module timeout for all operations is 2 + minutes. + + For search operation, the Active Directory module uses paging control + with a 2-minute timeout for each page search. + + > [!NOTE] + > Because a search may involve multiple server page requests the overall + > search time may exceed 2 minutes. + + A **TimeoutException** error indicates that a timeout has occurred. + + For a search operation, you can choose to use a smaller page size, set with + the **ResultPageSize** parameter, if you are getting a **TimeoutException** + error. + + If after trying these changes you are still getting a **TimeoutException** + error, consider optimizing your filter using the guidance in the + Optimizing Filters section of this topic. + + +- Optimizing Filters + + You can enhance the search filter behavior by using these guidelines. + + - Avoid using the **Recursive** parameter as it intensifies resource usage of + the search operation. + - Avoid using bitwise AND operators and bitwise OR operators. For more + information, see the Supported Operators section of this topic. + - Avoid using the logical NOT operator. + - Break down your search into multiple queries with narrower conditions. + + For a full description of filter syntax and usage, see the Filter Syntax + section of this topic. + + +## Filter Examples + +The following section shows many examples of filter use in common queries. + +### Example 1 - Get all entries: + +- LDAP Filter Equivalent: `(objectClass=*)` + +```powershell +Get-ADObject -Filter 'ObjectClass -like "*"' +``` + +### Example 2 - Get entries containing "bob" somewhere in the common name + +- LDAP Filter Equivalent: `(cn=*bob*)` + +```powershell +Get-ADObject -Filter 'CN -like "*bob*"' +``` + +### Example 3 - Get entries with a bad password count greater than five + +- LDAP Filter Equivalent: `(&(!badpwdcount<=5)(badpwdcount=*))` + +```powershell +Get-ADUser -Filter 'badpwdcount -ge 5' +``` + +### Example 4 - Get all users with an e-mail attribute + +- LDAP Filter Equivalent: `(&(objectClass=user)(email=*))` + +```powershell +Get-ADUser -filter 'email -like "*"' +``` + +-or- + +```powershell +Get-ADObject -filter 'email -like "*" -and ObjectClass -eq "user"' +``` + +### Example 5 - Get all user entries with an e-mail attribute and a surname equal to "smith": + +- LDAP Filter Equivalent: `(&(sn=smith)(objectClass=user)(email=*))` + +```powershell +Get-ADUser -Filter 'Email -like "*" -and SurName -eq "smith"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -like "*" -and sn -eq "smith"' +``` + + +### Example 6 - Get all user entries with a common name that starts with "andy" and users with a common name of "steve" or "margaret" + +- LDAP Filter Equivalent: `(&(objectClass=user) | (cn=andy*)(cn=steve)(cn=margaret))` + +```powershell +Get-ADUser -Filter 'CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret"' +``` + + +This example demonstrates a more complex logic and the use of precedence +control via parenthesis. + +```powershell +Get-ADObject -Filter 'objectClass -eq "user" -and (CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret")' +``` + +### Example 7 - Get all entries without an e-mail attribute + +- LDAP Filter Equivalent: `(!(email=*))` + +```powershell +Get-ADUser -Filter '-not Email -like "*"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -notlike "*"' +``` + +### Example 8 - Get all users who did not logon since January 1, 2007 + +- LDAP Filter Equivalent: `(&(lastlogon<=X)(objectClass=user))` where X is + number of 100-nanosecond slices since Jan 1st 1601 + +```powershell +$date = new-object System.DateTime -ArgumentList @(2007,1,1,0,0,0) +Get-ADUser -Filter '-not LastLogon -le $date' +``` + +### Example 9 - Get all users who have logged on in the last 5 days + +- LDAP Filter Equivalent: + + ``` + (&(lastLogon>=128812906535515110) + (objectClass=user)(!(objectClass=computer))) + ``` + +```powershell +$date = (get-date) - (new-timespan -days 5) +Get-ADUser -Filter 'lastLogon -gt $date' +``` + +### Example 10 - Search for group objects that have the ADS_GROUP_TYPE_SECURITY_ENABLED flag set + +- LDAP Filter Equivalent: + `(&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483648))` + +The following example query string searches for group objects that have the +ADS_GROUP_TYPE_SECURITY_ENABLED flag set. Be aware that the decimal value of +ADS_GROUP_TYPE_SECURITY_ENABLED (0x80000000 = 2147483648) is used for the +comparison value. + +```powershell +Get-ADGroup -filter 'groupType -band 0x80000000' +``` + +### Example 11 - Search the ancestry of an object + +- LDAP Filter Equivalent: + `(memberof:1.2.840.113556.1.4.1941:=(cn=Group1,OU=groupsOU,DC=x)))` + +The LDAP_MATCHING_RULE_IN_CHAIN is a matching rule OID that is designed to +provide a method to look up the ancestry of an object. Many applications using +Active Directory and AD LDS usually work with hierarchical data, which is +ordered by parent-child relationships. Previously, applications performed +transitive group expansion to figure out group membership, which used a lot of +network bandwidth. Applications made multiple round-trips to figure out if an +object fell "in the chain" if a link were traversed through to the end. + +An example of such a query is one designed to check if a user, "user1" is a +member of group "group1". "user1" may not be a direct member of group1. It +could be a member of some other group, which is a member of "group1". + +You would set the base to the user DN and the scope to base, and use the query: + +```powershell +Get-ADUser -Filter 'memberOf -RecursiveMatch "CN=Administrators, CN=Builtin,DC=Fabrikam,DC=com"' -SearchBase "CN=Administrator,CN=Users,DC=Fabrikam,DC=com" +``` + +## Filter Syntax + +The following syntax descriptions use Backus-Naur form to show the PowerShell +Expression Language for the Filter parameter. + +```Syntax + ::= "{" "}" + + ::= | + | + + + ::= | + "(" ")" + + ::= "-eq" | "-le" | "-ge" | "-ne" | "-lt" | "-gt" | + "-approx" | "-bor" | "-band" | "-recursivematch" | "-like" | + "-notlike" + + ::= "-and" | "-or" + + ::= "-not" + + ::= | + +::= < this value will be compared to the object data for + attribute using the specified filter operator +``` + + +## Supported Operators + +The following table shows frequently used search filter operators. + +| Operator | Description | LDAP Equivalent | +| ----------------- | -------------------------------------- | -------------------------- | +| `-eq` | Equal to. Wildcards not supported. | = | +| `-ne` | Not equal to. Wildcards not supported. | !x = y | +| `-approx` | Approximately equal to | ~= | +| `-le` | Lexicographically less than | <= | +| | or equal to | | +| `-lt` | Lexicographically less than | !x >= y | +| `-ge` | Lexicographically greater | >= | +| | than or equal to | | +| `-gt` | Lexicographically greater than | !x <= y | +| | | | +| `-and` | AND | & | +| `-or` | OR | | +| `-not` | NOT | ! | +| `-bor` | Bitwise OR | :1.2.840.113556.1.4.804:= | +| `-band` | Bitwise AND | :1.2.840.113556.1.4.803:= | +| `-recursivematch` | Use LDAP_MATCHING_RULE_IN_CHAIN | :1.2.840.113556.1.4.1941:= | +| `-like` | Similar to `-eq` and supports | = | +| | wildcard comparison. The only | | +| | wildcard character supported is: `*` | | +| `-notlike` | Not like. Supports wild | !x = y | +| | card comparison. | | + +> [!NOTE] +> PowerShell wildcards, other than "*", such as "?" are not supported by the +> **Filter** parameter syntax. + +### Operator Precedence + +The following listing shows the precedence of operators for filters from +highest to lowest. + +- Highest precedence: `-eq`, `-ge`, `-le`, `-approx`, `-band`, `-bor`, + `-recursivematch`, `-ne`, `-like`, `-not`, `-and` +- Lowest precedence: `-or` + +### Special Characters + +The following escape sequence should be used for specifying special characters +in AD Filter STRING data, that is, data enclosed in double or single quotes. + +| ASCII Character | Escape sequence substitute | +| --------------- | --------------------------------------------------- | +| `"` | `` `" `` (This escape sequence is only required if | +| | STRING data is enclosed in double quotes.) | +| `'` | `''` (This escape sequence is only required if | +| | STRING data is enclosed in single quotes.) | +| NUL | `\00` (This is a standard LDAP escape sequence.) | +| `\` | `\5c` (This is a standard LDAP escape sequence.) | + +### LDAP Special Characters + +ADFilter parser will automatically convert all the below characters found in +STRING data, that is data enclosed in " " or ' ' to their LDAP escape sequence. +End users need not know about these LDAP escape sequence. + +| ASCII Character | Escape sequence substitute | +| --------------- | ----------------------------------------------- | +| `*` | `\2a` (Character `*` will only be converted in | +| | -eq and -ne comparisons Users should use | +| | -like and -notlike operators for wildcard | +| | comparison.) | +| `(` | `\28` | +| `)` | `\29` | +| `/` | `\2f` | diff --git a/docset/winserver2025-ps/activedirectory/About/About.md b/docset/winserver2025-ps/activedirectory/About/About.md new file mode 100644 index 0000000000..adc76085b9 --- /dev/null +++ b/docset/winserver2025-ps/activedirectory/About/About.md @@ -0,0 +1,17 @@ +--- +description: About articles for the ActiveDirectory module. +Help Version: 3.1.0.0 +Locale: en-US +ms.date: 04/22/2013 +title: About articles +--- +# About topics + +## Description + +About topics cover a range of concepts about PowerShell. + +## About Topics + +### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) +Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_Filter.md b/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_Filter.md new file mode 100644 index 0000000000..23a83c0a0a --- /dev/null +++ b/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_Filter.md @@ -0,0 +1,351 @@ +--- +title: about_ActiveDirectory_Filter +ms.date: 04/22/2013 +description: Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Filter + +## SHORT DESCRIPTION + +Describes the syntax and behavior of the search filter supported by the Active +Directory module for Windows PowerShell. + +## LONG DESCRIPTION + +Most get-AD* Active Directory module cmdlets use the Filter parameter to search +for objects. The Filter parameter has been implemented to replace the function +of the LDAP Filter and adds support for PowerShell variables, rich data types, +improved error checking and an Active Directory extended form of the PowerShell +Expression Language. + + +- Support for LDAP Filter Syntax + + The LDAP filter syntax is supported through the **LDAPFilter** parameter. You + will find LDAP filter examples along with the new Active Directory module + filter examples in the Filter Examples section of this topic. + + +- Search Breadth and Depth + + The breadth and depth of your filter-driven search can be modified by two + Active Directory module cmdlet parameters: **SearchBase** and **SearchScope**. + + When within the context of the Active Directory provider, if the + **Searchbase** parameter is not specified, **SearchBase** will default to the + current path. When not running under the Active Directory provider, the + **SearchBase** will default to the server's **DefaultNamingContext**. + + The **SearchScope** parameter defaults to the value `Subtree`, of the + enumerated type **ADSearchScope**. + + For more information, see the **SearchBase** and **SearchScope** parameter + descriptions on any `Get-AD*` cmdlet. + +- Search Result Behavior + + The behavior of the Active Directory module when returning results of a + search is modified by two cmdlet parameters: **ResultPageSize** and + **ResultSetSize**. + + **ResultSetSize** controls the maximum number of returned objects. + + **ResultPageSize** specifies the maximum number of objects for each returned + page of information. + + See the **ResultPageSize** and **ResultSetSize** parameter descriptions on + any `Get-AD*` cmdlet for more information. + + +- Timeout Behavior + + The following statements specify timeout conditions within the Active + Directory module and describe what can be done about a timeout them. + + The default Active Directory module timeout for all operations is 2 + minutes. + + For search operation, the Active Directory module uses paging control + with a 2-minute timeout for each page search. + + > [!NOTE] + > Because a search may involve multiple server page requests the overall + > search time may exceed 2 minutes. + + A **TimeoutException** error indicates that a timeout has occurred. + + For a search operation, you can choose to use a smaller page size, set with + the **ResultPageSize** parameter, if you are getting a **TimeoutException** + error. + + If after trying these changes you are still getting a **TimeoutException** + error, consider optimizing your filter using the guidance in the + Optimizing Filters section of this topic. + + +- Optimizing Filters + + You can enhance the search filter behavior by using these guidelines. + + - Avoid using the **Recursive** parameter as it intensifies resource usage of + the search operation. + - Avoid using bitwise AND operators and bitwise OR operators. For more + information, see the Supported Operators section of this topic. + - Avoid using the logical NOT operator. + - Break down your search into multiple queries with narrower conditions. + + For a full description of filter syntax and usage, see the Filter Syntax + section of this topic. + + +## Filter Examples + +The following section shows many examples of filter use in common queries. + +### Example 1 - Get all entries: + +- LDAP Filter Equivalent: `(objectClass=*)` + +```powershell +Get-ADObject -Filter 'ObjectClass -like "*"' +``` + +### Example 2 - Get entries containing "bob" somewhere in the common name + +- LDAP Filter Equivalent: `(cn=*bob*)` + +```powershell +Get-ADObject -Filter 'CN -like "*bob*"' +``` + +### Example 3 - Get entries with a bad password count greater than five + +- LDAP Filter Equivalent: `(&(!badpwdcount<=5)(badpwdcount=*))` + +```powershell +Get-ADUser -Filter 'badpwdcount -ge 5' +``` + +### Example 4 - Get all users with an e-mail attribute + +- LDAP Filter Equivalent: `(&(objectClass=user)(email=*))` + +```powershell +Get-ADUser -filter 'email -like "*"' +``` + +-or- + +```powershell +Get-ADObject -filter 'email -like "*" -and ObjectClass -eq "user"' +``` + +### Example 5 - Get all user entries with an e-mail attribute and a surname equal to "smith": + +- LDAP Filter Equivalent: `(&(sn=smith)(objectClass=user)(email=*))` + +```powershell +Get-ADUser -Filter 'Email -like "*" -and SurName -eq "smith"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -like "*" -and sn -eq "smith"' +``` + + +### Example 6 - Get all user entries with a common name that starts with "andy" and users with a common name of "steve" or "margaret" + +- LDAP Filter Equivalent: `(&(objectClass=user) | (cn=andy*)(cn=steve)(cn=margaret))` + +```powershell +Get-ADUser -Filter 'CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret"' +``` + + +This example demonstrates a more complex logic and the use of precedence +control via parenthesis. + +```powershell +Get-ADObject -Filter 'objectClass -eq "user" -and (CN -like "andy*" -or CN -eq "steve" -or CN -eq "margaret")' +``` + +### Example 7 - Get all entries without an e-mail attribute + +- LDAP Filter Equivalent: `(!(email=*))` + +```powershell +Get-ADUser -Filter '-not Email -like "*"' +``` + +-or- + +```powershell +Get-ADUser -Filter 'Email -notlike "*"' +``` + +### Example 8 - Get all users who did not logon since January 1, 2007 + +- LDAP Filter Equivalent: `(&(lastlogon<=X)(objectClass=user))` where X is + number of 100-nanosecond slices since Jan 1st 1601 + +```powershell +$date = new-object System.DateTime -ArgumentList @(2007,1,1,0,0,0) +Get-ADUser -Filter '-not LastLogon -le $date' +``` + +### Example 9 - Get all users who have logged on in the last 5 days + +- LDAP Filter Equivalent: + + ``` + (&(lastLogon>=128812906535515110) + (objectClass=user)(!(objectClass=computer))) + ``` + +```powershell +$date = (get-date) - (new-timespan -days 5) +Get-ADUser -Filter 'lastLogon -gt $date' +``` + +### Example 10 - Search for group objects that have the ADS_GROUP_TYPE_SECURITY_ENABLED flag set + +- LDAP Filter Equivalent: + `(&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483648))` + +The following example query string searches for group objects that have the +ADS_GROUP_TYPE_SECURITY_ENABLED flag set. Be aware that the decimal value of +ADS_GROUP_TYPE_SECURITY_ENABLED (0x80000000 = 2147483648) is used for the +comparison value. + +```powershell +Get-ADGroup -filter 'groupType -band 0x80000000' +``` + +### Example 11 - Search the ancestry of an object + +- LDAP Filter Equivalent: + `(memberof:1.2.840.113556.1.4.1941:=(cn=Group1,OU=groupsOU,DC=x)))` + +The LDAP_MATCHING_RULE_IN_CHAIN is a matching rule OID that is designed to +provide a method to look up the ancestry of an object. Many applications using +Active Directory and AD LDS usually work with hierarchical data, which is +ordered by parent-child relationships. Previously, applications performed +transitive group expansion to figure out group membership, which used a lot of +network bandwidth. Applications made multiple round-trips to figure out if an +object fell "in the chain" if a link were traversed through to the end. + +An example of such a query is one designed to check if a user, "user1" is a +member of group "group1". "user1" may not be a direct member of group1. It +could be a member of some other group, which is a member of "group1". + +You would set the base to the user DN and the scope to base, and use the query: + +```powershell +Get-ADUser -Filter 'memberOf -RecursiveMatch "CN=Administrators, CN=Builtin,DC=Fabrikam,DC=com"' -SearchBase "CN=Administrator,CN=Users,DC=Fabrikam,DC=com" +``` + +## Filter Syntax + +The following syntax descriptions use Backus-Naur form to show the PowerShell +Expression Language for the Filter parameter. + +```Syntax + ::= "{" "}" + + ::= | + | + + + ::= | + "(" ")" + + ::= "-eq" | "-le" | "-ge" | "-ne" | "-lt" | "-gt" | + "-approx" | "-bor" | "-band" | "-recursivematch" | "-like" | + "-notlike" + + ::= "-and" | "-or" + + ::= "-not" + + ::= | + +::= < this value will be compared to the object data for + attribute using the specified filter operator +``` + + +## Supported Operators + +The following table shows frequently used search filter operators. + +| Operator | Description | LDAP Equivalent | +| ----------------- | -------------------------------------- | -------------------------- | +| `-eq` | Equal to. Wildcards not supported. | = | +| `-ne` | Not equal to. Wildcards not supported. | !x = y | +| `-approx` | Approximately equal to | ~= | +| `-le` | Lexicographically less than | <= | +| | or equal to | | +| `-lt` | Lexicographically less than | !x >= y | +| `-ge` | Lexicographically greater | >= | +| | than or equal to | | +| `-gt` | Lexicographically greater than | !x <= y | +| | | | +| `-and` | AND | & | +| `-or` | OR | | +| `-not` | NOT | ! | +| `-bor` | Bitwise OR | :1.2.840.113556.1.4.804:= | +| `-band` | Bitwise AND | :1.2.840.113556.1.4.803:= | +| `-recursivematch` | Use LDAP_MATCHING_RULE_IN_CHAIN | :1.2.840.113556.1.4.1941:= | +| `-like` | Similar to `-eq` and supports | = | +| | wildcard comparison. The only | | +| | wildcard character supported is: `*` | | +| `-notlike` | Not like. Supports wild | !x = y | +| | card comparison. | | + +> [!NOTE] +> PowerShell wildcards, other than "*", such as "?" are not supported by the +> **Filter** parameter syntax. + +### Operator Precedence + +The following listing shows the precedence of operators for filters from +highest to lowest. + +- Highest precedence: `-eq`, `-ge`, `-le`, `-approx`, `-band`, `-bor`, + `-recursivematch`, `-ne`, `-like`, `-not`, `-and` +- Lowest precedence: `-or` + +### Special Characters + +The following escape sequence should be used for specifying special characters +in AD Filter STRING data, that is, data enclosed in double or single quotes. + +| ASCII Character | Escape sequence substitute | +| --------------- | --------------------------------------------------- | +| `"` | `` `" `` (This escape sequence is only required if | +| | STRING data is enclosed in double quotes.) | +| `'` | `''` (This escape sequence is only required if | +| | STRING data is enclosed in single quotes.) | +| NUL | `\00` (This is a standard LDAP escape sequence.) | +| `\` | `\5c` (This is a standard LDAP escape sequence.) | + +### LDAP Special Characters + +ADFilter parser will automatically convert all the below characters found in +STRING data, that is data enclosed in " " or ' ' to their LDAP escape sequence. +End users need not know about these LDAP escape sequence. + +| ASCII Character | Escape sequence substitute | +| --------------- | ----------------------------------------------- | +| `*` | `\2a` (Character `*` will only be converted in | +| | -eq and -ne comparisons Users should use | +| | -like and -notlike operators for wildcard | +| | comparison.) | +| `(` | `\28` | +| `)` | `\29` | +| `/` | `\2f` | From f36d32589245bd7c7bc8ccf8d0980e2ecafbbebc Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 2 Jul 2024 21:46:48 -0400 Subject: [PATCH 26/98] Applied feedback --- docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md index d09e4fbf32..611bdcd7d3 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md @@ -189,7 +189,7 @@ Accept wildcard characters: False ### -VM -Specifies the virtual machine on which the device is to be assigned. +Specifies the virtual machine to which the device is to be assigned. ```yaml Type: VirtualMachine[] @@ -205,7 +205,7 @@ Accept wildcard characters: False ### -VMName -Specifies the name of the virtual machine where a device is to be assigned. +Specifies the name of the virtual machine to which the device is to be assigned. ```yaml Type: String[] @@ -270,6 +270,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Get-VMAssignableDevice](get-vmassignabledevice.md) +[Get-VMAssignableDevice](get-vmassignabledevice.md) -- [Remove-VMAssignableDevice](remove-vmassignabledevice.md) +[Remove-VMAssignableDevice](remove-vmassignabledevice.md) From 4ab29992054154a353232fb5fb6c5c9d64596aaf Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 2 Jul 2024 22:07:35 -0400 Subject: [PATCH 27/98] Applied feedback --- docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md index 8a2ef945df..ee8f6058e2 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md @@ -71,7 +71,7 @@ Accept wildcard characters: False ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +Specifies one or more Hyper-V hosts from which the assignable devices are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. The default is the local computer. Use localhost or a dot (`.`) to specify the local computer explicitly. @@ -138,7 +138,7 @@ Accept wildcard characters: False ### -VM -Retrieves the network adapter assigned to the virtual machine. +Retrieves the virtual machine which a device is assigned. ```yaml Type: VirtualMachine[] @@ -154,7 +154,7 @@ Accept wildcard characters: False ### -VMName -Retrieves the name of the virtual machine which the network adapter is assigned. +Retrieves the names of the assignable devices assigned to the specified virtual machine. ```yaml Type: String[] From ca2e0ac2c284bcf4fd385556524775e792453def Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 2 Jul 2024 22:26:28 -0400 Subject: [PATCH 28/98] Update ComputerName description --- docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md index 611bdcd7d3..fbd55101fc 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMAssignableDevice.md @@ -73,7 +73,7 @@ Accept wildcard characters: False ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +Specifies one or more Hyper-V hosts on which the assignable devices are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. The default is the local computer. Use localhost or a dot (`.`) to specify the local computer explicitly. From af6afb765bdb29688aa536e45f126fb398acb731 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 2 Jul 2024 22:41:58 -0400 Subject: [PATCH 29/98] Update ComputerName description --- docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md index ffc0a3b2f8..f22b8b7f96 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md @@ -75,8 +75,8 @@ Accept wildcard characters: False ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS -names, IP addresses, and fully qualified domain names are allowed. The default is the local +Specifies the name of the Hyper-V host to which the device is to be added. NetBIOS names, +IP addresses, and fully qualified domain names are allowed. The default is the local computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml From 4186c30717074a967fd37a6f494c1948761de771 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 2 Jul 2024 23:16:29 -0400 Subject: [PATCH 30/98] Applied feedback for Dismount cmdlet --- .../hyper-v/Dismount-VMHostAssignableDevice.md | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md index 9544a9d126..92b17fc4dc 100644 --- a/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md @@ -1,5 +1,5 @@ --- -description: Dismounts an assigned device from a virtual machine host. +description: Dismounts an assignable device from a virtual machine host. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V ms.date: 06/12/2024 @@ -36,7 +36,7 @@ Dismount-VMHostAssignableDevice -InstancePath "PCIROOT(0)#PCI(1D02)#PCI(0000)" ``` This example dismounts the device with the specified instance path from the host, making it -available for reassignment to another virtual machine. +available for assignment to a virtual machine. ## PARAMETERS @@ -61,9 +61,9 @@ Accept wildcard characters: False ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS -names, IP addresses, and fully qualified domain names are allowed. The default is the local -computer. Use localhost or a dot (`.`) to specify the local computer explicitly. +Specifies one or more Hyper-V hosts from which the assignable devices are to be dismounted. +NetBIOS names, IP addresses, and fully qualified domain names are allowed. The default is the +local computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -98,6 +98,13 @@ Accept wildcard characters: False Forces the command to run without asking for user confirmation. +Using the **Force** parameter also overrides some security checks in the platform. To learn more, +see [Dismount the device from the host partition +](/windows-server/virtualization/hyper-v/deploy/deploying-graphics-devices-using-dda#dismount-the-device-from-the-host-partition). + +If no partitioning driver is provided, during dismount, you must use `-Force` to bypass the +security warning. For more information about the security implications, see [Plan for deploying devices by using Discrete Device Assignment](/windows-server/virtualization/hyper-v/plan/plan-for-deploying-devices-using-discrete-device-assignment). + ```yaml Type: SwitchParameter Parameter Sets: (All) From ee339218dc2570a9fe938153e32695c270eed5e7 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 2 Jul 2024 23:27:58 -0400 Subject: [PATCH 31/98] Update ComputerName for Get cmdlet --- docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md index 21668a174a..6eb9e4ed5f 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md @@ -69,7 +69,7 @@ Accept wildcard characters: False ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +Specifies one or more Hyper-V hosts from which the assignable devices are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. The default is the local computer. Use localhost or a dot (`.`) to specify the local computer explicitly. From 92ecded0f3b785f08c37e6122ed1aebbad7be0a2 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 2 Jul 2024 23:51:13 -0400 Subject: [PATCH 32/98] 2nd pass of VMHostAssignableDevice cmdlets --- .../winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md | 6 +++--- .../hyper-v/Dismount-VMHostAssignableDevice.md | 6 +++--- .../winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md | 2 +- .../hyper-v/Mount-VMHostAssignableDevice.md | 6 +++--- .../hyper-v/Remove-VMHostAssignableDevice.md | 6 +++--- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md index f22b8b7f96..45e83dcdd1 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md @@ -75,9 +75,9 @@ Accept wildcard characters: False ### -ComputerName -Specifies the name of the Hyper-V host to which the device is to be added. NetBIOS names, -IP addresses, and fully qualified domain names are allowed. The default is the local -computer. Use localhost or a dot (`.`) to specify the local computer explicitly. +Specifies the name of the Hyper-V host to which the device is to be added. NetBIOS names, IP +addresses, and fully qualified domain names are allowed. The default is the local computer. Use +localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] diff --git a/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md index 92b17fc4dc..67082c38d6 100644 --- a/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md @@ -61,9 +61,9 @@ Accept wildcard characters: False ### -ComputerName -Specifies one or more Hyper-V hosts from which the assignable devices are to be dismounted. -NetBIOS names, IP addresses, and fully qualified domain names are allowed. The default is the -local computer. Use localhost or a dot (`.`) to specify the local computer explicitly. +Specifies one or more Hyper-V hosts from which the assignable devices are to be dismounted. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] diff --git a/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md index 6eb9e4ed5f..7519405bfe 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md @@ -1,5 +1,5 @@ --- -description: Retrieves information about a device assigned to a virtual machine host. +description: Retrieves information about an assignable device to a virtual machine host. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V ms.date: 06/12/2024 diff --git a/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md index db57546b50..7c27dffc06 100644 --- a/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md @@ -1,5 +1,5 @@ --- -description: Mounts an assigned device to a virtual machine host. +description: Mounts an assignable device to a virtual machine host. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V ms.date: 06/12/2024 @@ -75,7 +75,7 @@ Accept wildcard characters: False ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +Specifies one or more Hyper-V hosts from which the assignable devices are to be mounted. NetBIOS names, IP addresses, and fully qualified domain names are allowed. The default is the local computer. Use localhost or a dot (`.`) to specify the local computer explicitly. @@ -110,7 +110,7 @@ Accept wildcard characters: False ### -HostAssignableDevice -Specifies the device object to be assigned to the virtual machine. +Specifies the assignable device to be mounted on the virtual machine host. ```yaml Type: VMHostAssignableDevice[] diff --git a/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md index ed24303a5c..093e9ad96e 100644 --- a/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md @@ -1,5 +1,5 @@ --- -description: Removes an assigned device from a virtual machine host. +description: Removes an assignable device from a virtual machine host. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V ms.date: 06/12/2024 @@ -74,7 +74,7 @@ Accept wildcard characters: False ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +Specifies one or more Hyper-V hosts from which the assignable devices are to be removed. NetBIOS names, IP addresses, and fully qualified domain names are allowed. The default is the local computer. Use localhost or a dot (`.`) to specify the local computer explicitly. @@ -174,7 +174,7 @@ Accept wildcard characters: False ### -ResourcePoolName -Specifies the name of the resource pool to which the device is assigned. +Specifies the name of the resource pool from which to remove an assignable device. ```yaml Type: String[] From 44c9a4efbf6c320c493a23716aa26e088c2ca72e Mon Sep 17 00:00:00 2001 From: Sean Wheeler Date: Wed, 3 Jul 2024 10:23:59 -0500 Subject: [PATCH 33/98] Add about topics for ActiveDirectory (#3837) * Add about topics for ActiveDirectory * fix link --- .../activedirectory/About/About.md | 11 +- .../About/about_ActiveDirectory.md | 81 +++ .../About/about_ActiveDirectory_Identity.md | 196 ++++++ .../about_ActiveDirectory_ObjectModel.md | 595 ++++++++++++++++++ .../activedirectory/About/About.md | 11 +- .../About/about_ActiveDirectory.md | 81 +++ .../About/about_ActiveDirectory_Identity.md | 196 ++++++ .../about_ActiveDirectory_ObjectModel.md | 595 ++++++++++++++++++ .../activedirectory/About/About.md | 11 +- .../About/about_ActiveDirectory.md | 81 +++ .../About/about_ActiveDirectory_Identity.md | 196 ++++++ .../about_ActiveDirectory_ObjectModel.md | 595 ++++++++++++++++++ .../activedirectory/About/About.md | 11 +- .../About/about_ActiveDirectory.md | 81 +++ .../About/about_ActiveDirectory_Identity.md | 196 ++++++ .../about_ActiveDirectory_ObjectModel.md | 595 ++++++++++++++++++ .../activedirectory/About/About.md | 11 +- .../About/about_ActiveDirectory.md | 81 +++ .../About/about_ActiveDirectory_Identity.md | 196 ++++++ .../about_ActiveDirectory_ObjectModel.md | 595 ++++++++++++++++++ .../activedirectory/About/About.md | 11 +- .../About/about_ActiveDirectory.md | 81 +++ .../About/about_ActiveDirectory_Identity.md | 196 ++++++ .../about_ActiveDirectory_ObjectModel.md | 595 ++++++++++++++++++ 24 files changed, 5292 insertions(+), 6 deletions(-) create mode 100644 docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory.md create mode 100644 docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_Identity.md create mode 100644 docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md create mode 100644 docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory.md create mode 100644 docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_Identity.md create mode 100644 docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md create mode 100644 docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory.md create mode 100644 docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_Identity.md create mode 100644 docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md create mode 100644 docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory.md create mode 100644 docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_Identity.md create mode 100644 docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md create mode 100644 docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory.md create mode 100644 docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_Identity.md create mode 100644 docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md create mode 100644 docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory.md create mode 100644 docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_Identity.md create mode 100644 docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md diff --git a/docset/winserver2012-ps/activedirectory/About/About.md b/docset/winserver2012-ps/activedirectory/About/About.md index adc76085b9..449df28850 100644 --- a/docset/winserver2012-ps/activedirectory/About/About.md +++ b/docset/winserver2012-ps/activedirectory/About/About.md @@ -2,7 +2,7 @@ description: About articles for the ActiveDirectory module. Help Version: 3.1.0.0 Locale: en-US -ms.date: 04/22/2013 +ms.date: 07/03/2024 title: About articles --- # About topics @@ -13,5 +13,14 @@ About topics cover a range of concepts about PowerShell. ## About Topics +### [about_ActiveDirectory](about_ActiveDirectory.md) +The Active Directory module is a command line interface for managing Active Directory. + ### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. + +### [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md) +The Active Directory module for Windows PowerShell objects have a range of identifying attributes that are used for search and retrieval. + +### [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md) +Describes the object model of the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory.md b/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory.md new file mode 100644 index 0000000000..1b7183dcd2 --- /dev/null +++ b/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory.md @@ -0,0 +1,81 @@ +--- +title: about_ActiveDirectory +ms.date: 04/22/2013 +description: The Active Directory module is a command line interface for managing Active Directory. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory + +## SHORT DESCRIPTION + +The Active Directory module is a command line interface for managing Active +Directory. + +## LONG DESCRIPTION + +The Active Directory module for Windows PowerShell is for IT Professionals who +are administering and interfacing with Active Directory. The Active Directory +module provides an efficient way to complete many administrative, +configuration, and diagnostic tasks across Active Directory Domain Services (AD +DS) and Active Directory Lightweight Directory Services (AD LDS) instances in +their environments. The Active Directory module includes a set of Windows +PowerShell cmdlets and a provider. The provider exposes the Active Directory +database through a hierarchical navigation system, which is very similar to the +file system. As with drives in a file system, such as C:, you can connect +Windows PowerShell drives to Active Directory domains and AD LDS, as well as +Active Directory snapshots. + +### Coverage of Active Directory Module Cmdlets + +Create, Read, Update, and Delete actions are supported for Active Directory +objects by cmdlets such as `New-ADUser`, `Get-ADOrganizationalUnit`, +`Set-ADComputer`, and `Remove-ADUser`. + +Account and Password Policy Management are supported by cmdlets such as +`Enable-ADAccount`, `Unlock-ADAccount`, `New-ADServiceAccount`, +`Set-ADAccountControl`, and `Remove-ADFineGrainedPasswordPolicy`. + +Domain and Forest Management is supported by cmdlets such as `Get-ADForest`, +`Set-ADForest`, `Set-ADForestMode`, `Enable-ADOptionalFeature`, +`Get-ADDomainController`, and `Get-ADDomain`. + +### Listing the Active Directory Module Cmdlets + +To get a list of all of the Active Directory module cmdlets, run + +```powershell +Get-Command -Module ActiveDirectory +``` + +### Getting Started + +Getting started with the Active Directory module for Windows PowerShell is as +easy as clicking the following shortcut: + +Run the following command in any Windows PowerShell prompt to import the Active +Directory module: + +```powershell +Import-Module ActiveDirectory +``` + +### Overview and Conceptual Topics + +The first two of these topics offer a high level overview of the Active +Directory module and the Active Directory Provider. + +- For a brief introduction to the Active Directory provider for Windows + PowerShell, see [ActiveDirectory](/powershell/module/activedirectory). +- The following topics are conceptual support topics for the Active Directory + module cmdlets. + - For an introduction to the **Identity** parameter, which is used by the + Active Directory module cmdlets to identify objects in the directory, see + [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md). + - For an introduction to the **Filter** parameter which is used by Active + Directory module cmdlets to search for objects in the directory, see + [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md). + - For an introduction to the .NET Framework-based object model implemented by + the Active Directory module, see + [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). diff --git a/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_Identity.md b/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_Identity.md new file mode 100644 index 0000000000..c007277b19 --- /dev/null +++ b/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_Identity.md @@ -0,0 +1,196 @@ +--- +title: about_ActiveDirectory_Identity +ms.date: 04/22/2013 +description: This article lists the identifying attributes that are used for search and retrieval supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Identity + +## SHORT DESCRIPTION + +The Active Directory module for Windows PowerShell objects have a range of +identifying attributes that are used for search and retrieval. + +## LONG DESCRIPTION + +In order to identify the objects in Active Directory, each object has +attributes that can be used as identifiers. In the Active Directory module, the +value of the identity of an object can be passed using the Identity parameter. +Each object type has its own set of possible types and values for use by the +Identity parameter. See the detailed description of the Identity parameter of +the given cmdlet for more information about its usage. + +When searching with the Active Directory module cmdlets, the value of the +Identity parameter, along with the values of the Server and Partition +parameters, is used to uniquely identify a single object. The Server parameter +is used to locate which server to connect with. The Partition parameter further +narrows the search to a specific partition. The Identity parameter then +resolves to a single unique object in the partition. + +Note that using the Security Accounts Manager (SAM) Account Name +(**sAMAccountName**) when targeting a global catalog port, you will not find a +user in a different domain if you are using the Identity parameter + +If more than one object is found using identity resolution, the Active +Directory module throws an error. + +For more information about the Server and Partition parameters, see the help +topics for the individual cmdlets where they are used, such as `Get-ADUser`, by +typing: + +```powershell +Get-Help Get-ADUser +``` + +### Objects and Identities + +Each object has a list of attributes that can be used as an identity for that +object. Additionally, if the object inherits from another object, then the +parent object's identities can also be used as the child object's identities. +For more information on the Active Directory object hierarchy, see +[about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). + +> [!NOTE] +> For Active Directory Provider cmdlets, only an object's 'Distinguished Name' +> or 'Relative Distinguished Name' can be used as the identity. For a list of +> Active Directory Provider cmdlets, see ActiveDirectory. + +### Identity Attributes + +The following is a list of identity attributes by object type. + +- ADAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADComputer + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager Account Name (sAMAccountName) + +- ADDirectoryServer + - Name of the server object (name) + - For AD LDS instances the syntax of a name is `$` + - For other Active Directory instances, use the value of the name property. + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the directory + server. + - GUID (objectGUID) of server object under the configuration partition. + - GUID (objectGUID) of NTDS settings object under the configuration partition + +- ADDomain + - Distinguished Name + - GUID + - Security Identifier + - DNS domain name + - NetBIOS domain name + +- ADDomainController + - GUID (objectGUID) + - IPV4Address + - Global IPV6Address + - DNS Host Name (dNSHostName) + - Name of the server object + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the domain controller + - GUID of NTDS settings object under the configuration partition + - GUID of server object under the configuration partition + - Distinguished Name of the computer object that represents the domain controller. + +- ADFineGrainedPasswordPolicy + - Distinguished Name + - GUID (objectGUID) + - Name (name) + +- ADForest + - Fully qualified domain name + - DNS host name + - NetBIOS name + +- ADGroup + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager (SAM) Account Name (sAMAccountName) + +- ADObject + - Distinguished Name + - GUID (objectGUID) + +- ADOptionalFeature + - Distinguished Name + - Name (name) + - Feature GUID (featureGUID) + - GUID (objectGUID) + +- ADOrganizationalUnit + - Distinguished Name + - GUID (objectGUID) + +- ADPrincipal + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADServiceAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADUser + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM User Name (sAMUserName) + + +### Identities Formats + +Active Directory module objects have a range of identity attributes. Below is a +list of these, their types and formats. + +- Distinguished Name + - Example: CN=SaraDavis,CN=Europe,CN=Users, DC=corp,DC=contoso,DC=com + +- DNS domain name + - Example: redmond.corp.contoso.com + +- DNS Host Name (dNSHostName) + - Example: corp-DC01.corp.contoso.com + +- Feature GUID (featureGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- Fully qualified domain name + - Example: corp.contoso.com + +- Global IPV6Address + - Example: 2001:4898:0:fff:200:5efe:157.59.132.61 + +- GUID (objectGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- IPV4Address + - Example:157.59.132.61 + +- NetBIOS domain name + - Example: redmond + +- Name of the server object + - Example: corp-DC01$ + +- SAM Account Name (sAMAccountName) + - Example: saradavisreports + +- Security Identifier (objectSid) + - Example: S-1-5-21-3165297888-301567370-576410423-1103 + +- Name + - Example: Recycle Bin Feature diff --git a/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md b/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md new file mode 100644 index 0000000000..8535a97464 --- /dev/null +++ b/docset/winserver2012-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md @@ -0,0 +1,595 @@ +--- +title: about_ActiveDirectory_ObjectModel +ms.date: 04/22/2013 +description: Describes the object model of the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_ObjectModel + +## SHORT DESCRIPTION +Describes the object model of the Active Directory module for Windows +PowerShell. + +## LONG DESCRIPTION + +This topic explains the Active Directory module classes and their properties +used to model actual Active Directory attributes. It also outlines the class +hierarchy constructed from its Active Directory counterpart. The object model +establishes a data foundation for all the operations supported by Active +Directory module cmdlets. + +### Class Hierarchy + +The following list shows the class hierarchy defined in the Active Directory +module object model, with class inheritance implied by indentation. This +inheritance model allows for Active Directory cmdlets to accept a range of +object types as input. This means, for example, that the cmdlet +Get-ADPrincipalGroupMembership can accept as input any of the following +objects: ADGroup, ADAccount, ADComputer, ADServiceAccount or ADUser. This works +because of the inheritance model and guarantees that an ADUser object has all +of the properties of an ADPrincipal object. + +``` +ADEntity + ADRootDSE + ADObject + ADFineGrainedPasswordPolicy + ADOptionalFeature + ADOrganizationalUnit + ADPartition + ADDomain + ADPrincipal + ADAccount + ADComputer + ADServiceAccount + ADUser + ADGroup + ADDefaultDomainPasswordPolicy + ADForest + ADDirectoryServer + ADDomainController +``` + +### Active Directory Module Classes + +The following listing shows every Active Directory module class from the class +hierarchy listing. Each class defines a set of properties, some of which are +LDAP attributes that are retrieved by default and some are new properties +created specifically for the Active Directory module. These new properties are +derived from one or more LDAP attributes as outlined in the class listings. + + +- ADEntity - The base level class from which all other classes are derived. + - ADRootDSE - Represents the rootDSE and is derived from ADEntity. An + ADRootDSE may contain the following properties in addition to those + inherited from its parent. + - ConfigurationNamingContext - A property of type System.String, derived + from the directory attribute ConfigurationNamingContext + - CurrentTime - A property of type System.DateTime, derived from the + directory attribute CurrentTime + - DefaultNamingContext - A property of type System.String, derived from the + directory attribute DefaultNamingContext + - DnsHostName - A property of type System.String, derived from the + directory attribute DnsHostName + - DomainControllerFunctionality - A property of type + ADDomainControllerMode, derived from the directory attribute + DomainControllerFunctionality + - DomainFunctionality - A property of type ADDomainMode, derived from the + directory attribute DomainFunctionality + - DsServiceName - A property of type System.String, derived from the + directory attribute DsServiceName + - ForestFunctionality - A property of type ADForestMode, derived from the + directory attribute ForestFunctionality + - GlobalCatalogReady - A property of type System.Boolean, derived from the + directory attribute GlobalCatalogReady + - HighestCommittedUSN - A property of type System.Long, derived from the + directory attribute HighestCommittedUSN + - LdapServiceName - A property of type System.String, derived from the + directory attribute LdapServiceName + - NamingContexts - A property of type System.String, derived from the + directory attribute NamingContexts + - RootDomainNamingContext - A property of type System.String, derived from + the directory attribute RootDomainNamingContext + - SchemaNamingContext - A property of type System.String, derived from the + directory attribute SchemaNamingContext + - ServerName - A property of type System.String, derived from the directory + attribute ServerName + - SubschemaSubentry - A property of type ADObject, derived from the + directory attribute SubschemaSubentry + - SupportedCapabilities - A property of type ADObjectIdentifier, derived + from the directory attribute SupportedCapabilities + - SupportedControl - A property of type ADObjectIdentifier, derived from + the directory attribute SupportedControl + - SupportedLDAPPolicies - A property of type System.String, derived from + the directory attribute SupportedLDAPPolicies + - SupportedLDAPVersion - A property of type System.Int, derived from the + directory attribute SupportedLDAPVersion + - SupportedRootDSEOperations - A property of type + ADPropertyValueCollection, derived from the directory attribute + SupportedRootDSEOperations + - SupportedSASLMechanisms - A property of type System.String, derived from + the directory attribute SupportedSASLMechanisms + - Syncronized - A property of type System.Boolean, derived from the + directory attribute IsSynchronized. + - ADObject - Represents any object in Active Directory and is derived from + ADEntity. An ADObject may contain the following properties in addition to + those inherited from its parent. + - CanonicalName - A property of type System.String, derived from the + directory attribute: canonicalName + - CN - A property of type System.String, derived from the directory + attribute: cn + - Created - A property of type System.DateTime, derived from the directory + attribute: createTimeStamp + - Deleted - A property of type System.Boolean, derived from the directory + attribute: isDeleted + - Description - A property of type System.String, derived from the + directory attribute: description + - DisplayName - A property of type System.String, derived from the + directory attribute: displayName + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LastKnownParent - A property of type System.String, derived from the + directory attribute: lastKnownParent + - Modified - A property of type System.DateTime, derived from the directory + attribute: modifyTimeStamp + - Name - A property of type System.String, derived from the directory + attribute: name + - ObjectCategory - A property of type System.String, derived from the + directory attribute: objectCategory + - ObjectClass - A property of type System.String, derived from the + directory attribute: objectClass + - ObjectGUID - A property of type System.Guid, derived from the directory + attribute: objectGUID + - ProtectedFromAccidentalDeletion - A property of type System.Boolean, + derived from the directory attributes: nTSecurityDescriptor, + sdRightsEffective, instanceType, isDeleted + - ADFineGrainedPasswordPolicy Represents a fine grained password policy + object; that is, an AD object of type msDS-PasswordSettings in AD DS and + is derived from ADObject. This class is not supported by AD LDS. An + ADFineGrainedPasswordPolicy may contain the following properties in + addition to those inherited from its parent. + - AppliesTo - A property of type System.String, derived from the + directory attribute: msDS-PSOAppliesTo + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: msDS-PasswordComplexityEnabled + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: msDS-LockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: msDS-LockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: msDS-LockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MaximumPasswordAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MinimumPasswordAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: msDS-MinimumPasswordLength + - PasswordHistoryCount - A property of type System.Int32, derived from + the directory attribute: msDS-PasswordHistoryLength + - Precedence - A property of type System.Int32, derived from the + directory attribute: msDS-PasswordSettingsPrecedence + - ReversibleEncryptionEnabled - A property of type System.Boolean, + derived from the directory attribute: + msDS-PasswordReversibleEncryptionEnabled + - ADOptionalFeature Represents an optional feature, an Active Directory + object of type msDS-OptionalFeature, and is derived from ADObject. An + ADOptionalFeaturemay contain the following properties in addition to + those inherited from its parent. + - EnabledScopes - A property of type System.String, derived from the + directory attribute: msDS-EnabledFeatureBL + - FeatureGUID - A property of type System.Guid, derived from the + directory attribute: msDS-OptionalFeatureGUID + - FeatureScope - A property of type System.Int32, derived from the + directory attribute: msDS-OptionalFeatureFlags + - IsDisableable - A property of type System.Boolean, derived from the + directory attribute: msDS-OptionalFeatureFlags + - RequiredDomainMode - A property of type + Microsoft.ActiveDirectory.Management.ADDomainMode, derived from the + directory attribute: msDS-RequiredDomainBehaviorVersion + - RequiredForestMode - A property of type + Microsoft.ActiveDirectory.Management.ADForestMode, derived from the + directory attribute: msDS-RequiredForestBehaviorVersion + - ADOrganizationalUnit Represents an organizationalUnit (OU) object and is + derived from ADObject. An ADOrganizationalUnit may contain the following + properties in addition to those inherited from its parent. + - City - A property of type System.String, derived from the directory + attribute: l + - Country - A property of type System.String, derived from the directory + attribute: c + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: gpLink. This property is not supported on + AD LDS. + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - State - A property of type System.String, derived from the directory + attribute: st + - StreetAddress - A property of type System.String, derived from the + directory attribute: street + - ADPartition - Represents a naming context, Configuration, Schema, Domain + or Application Partition(ND NC) and is derived from ADObject. This class + is not supported by AD LDS. An ADPartition may contain the following + properties in addition to those inherited from its parent. + - DeletedObjectsContainer - A property of type System.String, derived + from the directory attribute: DeletedObjectsContainer + - DNSRoot - A property of type System.String, derived from the directory + attribute: DNSRoot + - LostAndFoundContainer - A property of type System.String, derived from + the directory attribute: LostAndFoundContainer + - QuotasContainer - A property of type System.String, derived from the + directory attribute: QuotasContainer + - ReadOnlyReplicaDirectoryServers - A property of type System.String, + derived from the directory attribute: ReadOnlyReplicaDirectoryServers + - ReplicaDirectoryServers - A property of type System.String, derived + from the directory attribute: ReplicaDirectoryServers + - SubordinateReferences - A property of type System.String, derived from + the directory attribute: SubordinateReferences + - ADDomain - Represents a domain in AD DS or an instance in AD LDS; for + example, an Active Directory object of type domainDNS and is derived + from ADPartition. This class is not supported by AD LDS. An ADDomain + may contain the following properties in addition to those inherited + from its parent. + - AllowedDNSSuffixes - A property of type System.String, derived from + the directory attribute: msDS-AllowedDNSSuffixes + - ChildDomains - A property of type System.String, derived from the + directory attribute: ChildDomains + - ComputersContainer - A property of type System.String, derived from + the directory attribute: ComputersContainer + - DomainControllersContainer - A property of type System.String, + derived from the directory attribute: DomainControllersContainer + - DomainMode - A property of type System.Int32, derived from the + directory attribute: msDS-Behavior-Version + - DomainSID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - ForeignSecurityPrincipalsContainer - A property of type + System.String, derived from the directory attribute: + ForeignSecurityPrincipalsContainer + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - InfrastructureMaster - A property of type System.String, derived from + the directory attribute: InfrastructureMaster + - LastLogonReplicationInterval - A property of type System.TimeSpan, + derived from the directory attribute: msDS-LogonTimeSyncInterval + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: LinkedGroupPolicyObjects + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - NetBIOSName - A property of type System.String, derived from the + directory attribute: NetBIOSName + - ParentDomain - A property of type System.String, derived from the + directory attribute: ParentDomain + - PDCEmulator - A property of type System.String, derived from the + directory attribute: PDCEmulator + - RIDMaster - A property of type System.String, derived from the + directory attribute: RIDMaster + - SystemsContainer - A property of type System.String, derived from the + directory attribute: SystemsContainer + - UsersContainer - A property of type System.String, derived from the + directory attribute: UsersContainer + - ADPrincipal - Represents a security principal, which is an Active + Directory object of type user, computer, group or iNetOrgPerson and is + derived from ADObject. An ADPrincipal may contain the following + properties in addition to those inherited from its parent. + - HomePage - A property of type System.String, derived from the + directory attribute: wWWHomePage + - MemberOf - A property of type System.String, derived from the + directory attribute: memberOf + - SamAccountName - A property of type System.String, derived from the + directory attribute: sAMAccountName. This property is not supported + for AD LDS. + - SID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - SIDHistory - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: sIDHistory. This property is not supported for + AD LDS. + - ADAccount - Represents a security account; that is, an Active + Directory object of type user, computer or iNetOrgPerson and is + derived from ADPrincipal. An ADAccount may contain the following + properties in addition to those inherited from its parent. + - AccountExpirationDate - A property of type System.DateTime, derived + from the directory attribute: accountExpires + - AccountLockoutTime - A property of type System.DateTime, derived + from the directory attribute: lockoutTime + - AccountNotDelegated - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - AllowReversiblePasswordEncryption - A property of type + System.Boolean, for AD DS it is derived from the directory + attribute: userAccountControl; for AD LDS it is derived from the + directory attribute: ms-DS-UserEncryptedTextPasswordAllowed + - BadLogonCount - A property of type System.Int32, derived from the + directory attribute: badPwdCount + - CannotChangePassword - A property of type System.Boolean, derived + from the directory attribute: nTSecurityDescriptor + - Certificates - A property of type + System.Security.Cryptography.X509Certificates.X509Certificate, + derived from the directory attribute: userCertificate + - DoesNotRequirePreAuth - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - Enabled - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserAccountDisabled + - HomedirRequired - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - LastBadPasswordAttempt - A property of type System.DateTime, + derived from the directory attribute: badPasswordTime + - LastLogonDate - A property of type System.DateTime, derived from + the directory attribute: lastLogonTimestamp + - LockedOut - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed, lockoutTime; for AD LDS it is + derived from the directory attribute msDS-UserAccountDisabled + - MNSLogonAccount - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - PasswordExpired - A property of type System.Boolean, for AD DS it + is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserPasswordExpired + - PasswordLastSet - A property of type System.DateTime, derived from + the directory attribute: pwdLastSet + - PasswordNeverExpires - A property of type System.Boolean, for AD + LDS it is derived from the directory attributes: + userAccountControl, msDS-User-Account-Control-Computed; for AD LDS + it is derived from the directory attribute: + msDS-UserDontExpirePassword + - PasswordNotRequired - A property of type System.Boolean, for AD DS + it is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute: ms-DS-UserPasswordNotRequired + - PrimaryGroup - A property of type System.String, derived from the + directory attributes: primaryGroupID, objectSid. This property is + not supported by AD LDS. + - ServicePrincipalNames - A property of type System.String, derived + from the directory attribute: servicePrincipalName. This property + is not supported by AD LDS. + - TrustedForDelegation - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - TrustedToAuthForDelegation - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UseDESKeyOnly - A property of type System.Boolean, derived from the + directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UserPrincipalName - A property of type System.String, derived from + the directory attribute: userPrincipalName + - ADComputer - Represents a computer and is derived from ADAccount. + An ADComputer may contain the following properties in addition to + those inherited from its parent. + - DNSHostName - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv4Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - Location - A property of type System.String, derived from the + directory attribute: location + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - OperatingSystem - A property of type System.String, derived from + the directory attribute: operatingSystem + - OperatingSystemHotfix - A property of type System.String, derived + from the directory attribute: operatingSystemHotfix + - OperatingSystemServicePack - A property of type System.String, + derived from the directory attribute: operatingSystemServicePack + - OperatingSystemVersion - A property of type System.String, + derived from the directory attribute: operatingSystemVersion + - ServiceAccount - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccount + - ADServiceAccount - Represents a managed service account; that is, + an Active Directory object of type msDS-ManagerdServiceAccount and + is derived from ADAccount. This class is not supported by AD LDS. + An ADServiceAccount may contain the following properties in + addition to those inherited from its parent. + - HostComputers - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccountBL + - ADUser - Represents a user (or iNetOrgPerson) and is derived from + ADAccount. An ADUser may contain the following properties in + addition to those inherited from its parent. + - City - A property of type System.String, derived from the + directory attribute: l + - Company - A property of type System.String, derived from the + directory attribute: company + - Country - A property of type System.String, derived from the + directory attribute: c + - Department - A property of type System.String, derived from the + directory attribute: department + - Division - A property of type System.String, derived from the + directory attribute: division + - EmailAddress - A property of type System.String, derived from the + directory attribute: mail + - EmployeeID - A property of type System.String, derived from the + directory attribute: employeeID + - EmployeeNumber - A property of type System.String, derived from + the directory attribute: employeeNumber + - Fax - A property of type System.String, derived from the + directory attribute: facsimileTelephoneNumber + - GivenName - A property of type System.String, derived from the + directory attribute: givenName + - HomeDirectory - A property of type System.String, derived from + the directory attribute: homeDirectory. This property is not + supported by AD LDS. + - HomeDrive - A property of type System.String, derived from the + directory attribute: homeDrive. This property is not supported by + AD LDS. + - HomePhone - A property of type System.String, derived from the + directory attribute: homePhone + - Initials - A property of type System.String, derived from the + directory attribute: initials + - LogonWorkstations - A property of type System.String, derived + from the directory attribute: userWorkstations. This property is + not supported by AD LDS. + - Manager - A property of type System.String, derived from the + directory attribute: manager + - MobilePhone - A property of type System.String, derived from the + directory attribute: mobile + - Office - A property of type System.String, derived from the + directory attribute: physicalDeliveryOfficeName + - OfficePhone - A property of type System.String, derived from the + directory attribute: telephoneNumber + - Organization - A property of type System.String, derived from the + directory attribute: o + - OtherName - A property of type System.String, derived from the + directory attribute: middleName + - POBox - A property of type System.String, derived from the + directory attribute: postOfficeBox + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - ProfilePath - A property of type System.String, derived from the + directory attribute: profilePath. This property is not supported + by AD LDS. + - ScriptPath - A property of type System.String, derived from the + directory attribute: scriptPath. This property is not supported + by AD LDS. + - SmartcardLogonRequired - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not + supported by AD LDS. + - State - A property of type System.String, derived from the + directory attribute: st + - StreetAddress - A property of type System.String, derived from + the directory attribute: streetAddress + - Surname - A property of type System.String, derived from the + directory attribute: sn + - Title - A property of type System.String, derived from the + directory attribute: title + - ADGroup -Represents a group and is derived from ADPrincipal. An + ADGroup may contain the following properties in addition to those + inherited from its parent. + - GroupCategory - A property of type + Microsoft.ActiveDirectory.Management.ADGroupCategory, derived from + the directory attribute: groupType + - GroupScope - A property of type + Microsoft.ActiveDirectory.Management.ADGroupScope, derived from the + directory attribute: groupType + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - Members - A property of type System.String, derived from the + directory attribute: member + - ADDefaultDomainPasswordPolicy - Represents the domain-wide password policy + of an Active Directory domain and is derived from ADEntity. This class is + not supported by AD LDS. An ADDefaultDomainPasswordPolicy may contain the + following properties in addition to those inherited from its parent. + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: pwdProperties + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: lockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: lockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: lockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: maxPwdAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: minPwdAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: minPwdLength + - PasswordHistoryCount - A property of type System.Int32, derived from the + directory attribute: pwdHistoryLength + - ReversibleEncryptionEnabled - A property of type System.Boolean, derived + from the directory attribute: pwdProperties + - ADForest - Represents a Active Directory forest in AD DS or a Configuration + Set in AD LDS and is derived from ADEntity. This class is not supported by + AD LDS. An ADForest may contain the following properties in addition to + those inherited from its parent. + - ApplicationPartitions - A property of type System.String, derived from + the directory attribute: ApplicationPartitions + - CrossForestReferences - A property of type System.String, derived from + the directory attribute: CrossForestReferences + - DomainNamingMaster - A property of type System.String, derived from the + directory attribute: DomainNamingMaster + - Domains - A property of type System.String, derived from the directory + attribute: Domains + - ForestMode - A property of type System.Int32, derived from the directory + attribute: msDS-Behavior-Version + - GlobalCatalogs - A property of type System.String, derived from the + directory attribute: GlobalCatalogs + - Name - A property of type System.String, derived from the directory + attribute: name + - PartitionContainerName - A property of type System.String, derived from + the directory attribute: distinguishedName + - RootDomain - A property of type System.String, derived from the directory + attribute: RootDomain + - SchemaMaster - A property of type System.String, derived from the + directory attribute: SchemaMaster + - Sites - A property of type System.String, derived from the directory + attribute: Sites + - SPNSuffixes - A property of type System.String, derived from the + directory attribute: msDS-SPNSuffixes + - UPNSuffixes - A property of type System.String, derived from the + directory attribute: uPNSuffixes + - ADDirectoryServer - Represents a directory server used as either a domain + controller or an AD LDS instance and is derived from ADEntity. An + ADDirectoryServer may contain the following properties in addition to those + inherited from its parent. + - DefaultPartition - A property of type System.String, derived from the + directory attribute: DefaultPartition + - HostName - A property of type System.String, derived from the directory + attribute: HostName + - InvocationId - A property of type System.Guid, derived from the directory + attribute: InvocationId + - IPv4Address - A property of type System.String, derived from the + directory attribute: HostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: HostName + - LdapPort - A property of type System.Int32, derived from the directory + attribute: LdapPort + - Name - A property of type System.String, derived from the directory + attribute: Name + - NTDSSettingsObjectDN - A property of type System.String, derived from the + directory attribute: NTDSSettingsObjectDN + - OperationMasterRoles - A property of type + Microsoft.ActiveDirectory.Management.ADOperationMasterRole, derived from + the directory attribute: OperationMasterRole + - Partitions - A property of type System.String, derived from the directory + attribute: Partitions + - ServerObjectDN - A property of type System.String, derived from the + directory attribute: ServerObjectDN + - ServerObjectGuid - A property of type System.Guid, derived from the + directory attribute: ServerObjectGuid + - Site - A property of type System.String, derived from the directory + attribute: Site + - SslPort - A property of type System.Int32, derived from the directory + attribute: SslPort + - ADDomainController - Represents a domain controller in AD DS and is + derived from ADDirectoryServer. An ADDomainController may contain the + following properties in addition to those inherited from its parent. + - ComputerObjectDN - A property of type System.String, derived from the + directory attribute: ComputerDN + - Domain - A property of type System.String, derived from the directory + attribute: Domain + - Enabled - A property of type System.Boolean, derived from the directory + attribute: Enabled + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - IsGlobalCatalog - A property of type System.Boolean, derived from the + directory attribute: IsGlobalCatalog + - IsReadOnly - A property of type System.Boolean, derived from the + directory attribute: IsReadOnly + - OperatingSystem - A property of type System.String, derived from the + directory attribute: OSName + - OperatingSystemHotfix - A property of type System.String, derived from + the directory attribute: OSHotFix + - OperatingSystemServicePack - A property of type System.String, derived + from the directory attribute: OSServicepack + - OperatingSystemVersion - A property of type System.String, derived from + the directory attribute: OSVersion diff --git a/docset/winserver2012r2-ps/activedirectory/About/About.md b/docset/winserver2012r2-ps/activedirectory/About/About.md index adc76085b9..449df28850 100644 --- a/docset/winserver2012r2-ps/activedirectory/About/About.md +++ b/docset/winserver2012r2-ps/activedirectory/About/About.md @@ -2,7 +2,7 @@ description: About articles for the ActiveDirectory module. Help Version: 3.1.0.0 Locale: en-US -ms.date: 04/22/2013 +ms.date: 07/03/2024 title: About articles --- # About topics @@ -13,5 +13,14 @@ About topics cover a range of concepts about PowerShell. ## About Topics +### [about_ActiveDirectory](about_ActiveDirectory.md) +The Active Directory module is a command line interface for managing Active Directory. + ### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. + +### [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md) +The Active Directory module for Windows PowerShell objects have a range of identifying attributes that are used for search and retrieval. + +### [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md) +Describes the object model of the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory.md b/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory.md new file mode 100644 index 0000000000..1b7183dcd2 --- /dev/null +++ b/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory.md @@ -0,0 +1,81 @@ +--- +title: about_ActiveDirectory +ms.date: 04/22/2013 +description: The Active Directory module is a command line interface for managing Active Directory. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory + +## SHORT DESCRIPTION + +The Active Directory module is a command line interface for managing Active +Directory. + +## LONG DESCRIPTION + +The Active Directory module for Windows PowerShell is for IT Professionals who +are administering and interfacing with Active Directory. The Active Directory +module provides an efficient way to complete many administrative, +configuration, and diagnostic tasks across Active Directory Domain Services (AD +DS) and Active Directory Lightweight Directory Services (AD LDS) instances in +their environments. The Active Directory module includes a set of Windows +PowerShell cmdlets and a provider. The provider exposes the Active Directory +database through a hierarchical navigation system, which is very similar to the +file system. As with drives in a file system, such as C:, you can connect +Windows PowerShell drives to Active Directory domains and AD LDS, as well as +Active Directory snapshots. + +### Coverage of Active Directory Module Cmdlets + +Create, Read, Update, and Delete actions are supported for Active Directory +objects by cmdlets such as `New-ADUser`, `Get-ADOrganizationalUnit`, +`Set-ADComputer`, and `Remove-ADUser`. + +Account and Password Policy Management are supported by cmdlets such as +`Enable-ADAccount`, `Unlock-ADAccount`, `New-ADServiceAccount`, +`Set-ADAccountControl`, and `Remove-ADFineGrainedPasswordPolicy`. + +Domain and Forest Management is supported by cmdlets such as `Get-ADForest`, +`Set-ADForest`, `Set-ADForestMode`, `Enable-ADOptionalFeature`, +`Get-ADDomainController`, and `Get-ADDomain`. + +### Listing the Active Directory Module Cmdlets + +To get a list of all of the Active Directory module cmdlets, run + +```powershell +Get-Command -Module ActiveDirectory +``` + +### Getting Started + +Getting started with the Active Directory module for Windows PowerShell is as +easy as clicking the following shortcut: + +Run the following command in any Windows PowerShell prompt to import the Active +Directory module: + +```powershell +Import-Module ActiveDirectory +``` + +### Overview and Conceptual Topics + +The first two of these topics offer a high level overview of the Active +Directory module and the Active Directory Provider. + +- For a brief introduction to the Active Directory provider for Windows + PowerShell, see [ActiveDirectory](/powershell/module/activedirectory). +- The following topics are conceptual support topics for the Active Directory + module cmdlets. + - For an introduction to the **Identity** parameter, which is used by the + Active Directory module cmdlets to identify objects in the directory, see + [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md). + - For an introduction to the **Filter** parameter which is used by Active + Directory module cmdlets to search for objects in the directory, see + [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md). + - For an introduction to the .NET Framework-based object model implemented by + the Active Directory module, see + [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). diff --git a/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_Identity.md b/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_Identity.md new file mode 100644 index 0000000000..c007277b19 --- /dev/null +++ b/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_Identity.md @@ -0,0 +1,196 @@ +--- +title: about_ActiveDirectory_Identity +ms.date: 04/22/2013 +description: This article lists the identifying attributes that are used for search and retrieval supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Identity + +## SHORT DESCRIPTION + +The Active Directory module for Windows PowerShell objects have a range of +identifying attributes that are used for search and retrieval. + +## LONG DESCRIPTION + +In order to identify the objects in Active Directory, each object has +attributes that can be used as identifiers. In the Active Directory module, the +value of the identity of an object can be passed using the Identity parameter. +Each object type has its own set of possible types and values for use by the +Identity parameter. See the detailed description of the Identity parameter of +the given cmdlet for more information about its usage. + +When searching with the Active Directory module cmdlets, the value of the +Identity parameter, along with the values of the Server and Partition +parameters, is used to uniquely identify a single object. The Server parameter +is used to locate which server to connect with. The Partition parameter further +narrows the search to a specific partition. The Identity parameter then +resolves to a single unique object in the partition. + +Note that using the Security Accounts Manager (SAM) Account Name +(**sAMAccountName**) when targeting a global catalog port, you will not find a +user in a different domain if you are using the Identity parameter + +If more than one object is found using identity resolution, the Active +Directory module throws an error. + +For more information about the Server and Partition parameters, see the help +topics for the individual cmdlets where they are used, such as `Get-ADUser`, by +typing: + +```powershell +Get-Help Get-ADUser +``` + +### Objects and Identities + +Each object has a list of attributes that can be used as an identity for that +object. Additionally, if the object inherits from another object, then the +parent object's identities can also be used as the child object's identities. +For more information on the Active Directory object hierarchy, see +[about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). + +> [!NOTE] +> For Active Directory Provider cmdlets, only an object's 'Distinguished Name' +> or 'Relative Distinguished Name' can be used as the identity. For a list of +> Active Directory Provider cmdlets, see ActiveDirectory. + +### Identity Attributes + +The following is a list of identity attributes by object type. + +- ADAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADComputer + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager Account Name (sAMAccountName) + +- ADDirectoryServer + - Name of the server object (name) + - For AD LDS instances the syntax of a name is `$` + - For other Active Directory instances, use the value of the name property. + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the directory + server. + - GUID (objectGUID) of server object under the configuration partition. + - GUID (objectGUID) of NTDS settings object under the configuration partition + +- ADDomain + - Distinguished Name + - GUID + - Security Identifier + - DNS domain name + - NetBIOS domain name + +- ADDomainController + - GUID (objectGUID) + - IPV4Address + - Global IPV6Address + - DNS Host Name (dNSHostName) + - Name of the server object + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the domain controller + - GUID of NTDS settings object under the configuration partition + - GUID of server object under the configuration partition + - Distinguished Name of the computer object that represents the domain controller. + +- ADFineGrainedPasswordPolicy + - Distinguished Name + - GUID (objectGUID) + - Name (name) + +- ADForest + - Fully qualified domain name + - DNS host name + - NetBIOS name + +- ADGroup + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager (SAM) Account Name (sAMAccountName) + +- ADObject + - Distinguished Name + - GUID (objectGUID) + +- ADOptionalFeature + - Distinguished Name + - Name (name) + - Feature GUID (featureGUID) + - GUID (objectGUID) + +- ADOrganizationalUnit + - Distinguished Name + - GUID (objectGUID) + +- ADPrincipal + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADServiceAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADUser + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM User Name (sAMUserName) + + +### Identities Formats + +Active Directory module objects have a range of identity attributes. Below is a +list of these, their types and formats. + +- Distinguished Name + - Example: CN=SaraDavis,CN=Europe,CN=Users, DC=corp,DC=contoso,DC=com + +- DNS domain name + - Example: redmond.corp.contoso.com + +- DNS Host Name (dNSHostName) + - Example: corp-DC01.corp.contoso.com + +- Feature GUID (featureGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- Fully qualified domain name + - Example: corp.contoso.com + +- Global IPV6Address + - Example: 2001:4898:0:fff:200:5efe:157.59.132.61 + +- GUID (objectGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- IPV4Address + - Example:157.59.132.61 + +- NetBIOS domain name + - Example: redmond + +- Name of the server object + - Example: corp-DC01$ + +- SAM Account Name (sAMAccountName) + - Example: saradavisreports + +- Security Identifier (objectSid) + - Example: S-1-5-21-3165297888-301567370-576410423-1103 + +- Name + - Example: Recycle Bin Feature diff --git a/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md b/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md new file mode 100644 index 0000000000..8535a97464 --- /dev/null +++ b/docset/winserver2012r2-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md @@ -0,0 +1,595 @@ +--- +title: about_ActiveDirectory_ObjectModel +ms.date: 04/22/2013 +description: Describes the object model of the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_ObjectModel + +## SHORT DESCRIPTION +Describes the object model of the Active Directory module for Windows +PowerShell. + +## LONG DESCRIPTION + +This topic explains the Active Directory module classes and their properties +used to model actual Active Directory attributes. It also outlines the class +hierarchy constructed from its Active Directory counterpart. The object model +establishes a data foundation for all the operations supported by Active +Directory module cmdlets. + +### Class Hierarchy + +The following list shows the class hierarchy defined in the Active Directory +module object model, with class inheritance implied by indentation. This +inheritance model allows for Active Directory cmdlets to accept a range of +object types as input. This means, for example, that the cmdlet +Get-ADPrincipalGroupMembership can accept as input any of the following +objects: ADGroup, ADAccount, ADComputer, ADServiceAccount or ADUser. This works +because of the inheritance model and guarantees that an ADUser object has all +of the properties of an ADPrincipal object. + +``` +ADEntity + ADRootDSE + ADObject + ADFineGrainedPasswordPolicy + ADOptionalFeature + ADOrganizationalUnit + ADPartition + ADDomain + ADPrincipal + ADAccount + ADComputer + ADServiceAccount + ADUser + ADGroup + ADDefaultDomainPasswordPolicy + ADForest + ADDirectoryServer + ADDomainController +``` + +### Active Directory Module Classes + +The following listing shows every Active Directory module class from the class +hierarchy listing. Each class defines a set of properties, some of which are +LDAP attributes that are retrieved by default and some are new properties +created specifically for the Active Directory module. These new properties are +derived from one or more LDAP attributes as outlined in the class listings. + + +- ADEntity - The base level class from which all other classes are derived. + - ADRootDSE - Represents the rootDSE and is derived from ADEntity. An + ADRootDSE may contain the following properties in addition to those + inherited from its parent. + - ConfigurationNamingContext - A property of type System.String, derived + from the directory attribute ConfigurationNamingContext + - CurrentTime - A property of type System.DateTime, derived from the + directory attribute CurrentTime + - DefaultNamingContext - A property of type System.String, derived from the + directory attribute DefaultNamingContext + - DnsHostName - A property of type System.String, derived from the + directory attribute DnsHostName + - DomainControllerFunctionality - A property of type + ADDomainControllerMode, derived from the directory attribute + DomainControllerFunctionality + - DomainFunctionality - A property of type ADDomainMode, derived from the + directory attribute DomainFunctionality + - DsServiceName - A property of type System.String, derived from the + directory attribute DsServiceName + - ForestFunctionality - A property of type ADForestMode, derived from the + directory attribute ForestFunctionality + - GlobalCatalogReady - A property of type System.Boolean, derived from the + directory attribute GlobalCatalogReady + - HighestCommittedUSN - A property of type System.Long, derived from the + directory attribute HighestCommittedUSN + - LdapServiceName - A property of type System.String, derived from the + directory attribute LdapServiceName + - NamingContexts - A property of type System.String, derived from the + directory attribute NamingContexts + - RootDomainNamingContext - A property of type System.String, derived from + the directory attribute RootDomainNamingContext + - SchemaNamingContext - A property of type System.String, derived from the + directory attribute SchemaNamingContext + - ServerName - A property of type System.String, derived from the directory + attribute ServerName + - SubschemaSubentry - A property of type ADObject, derived from the + directory attribute SubschemaSubentry + - SupportedCapabilities - A property of type ADObjectIdentifier, derived + from the directory attribute SupportedCapabilities + - SupportedControl - A property of type ADObjectIdentifier, derived from + the directory attribute SupportedControl + - SupportedLDAPPolicies - A property of type System.String, derived from + the directory attribute SupportedLDAPPolicies + - SupportedLDAPVersion - A property of type System.Int, derived from the + directory attribute SupportedLDAPVersion + - SupportedRootDSEOperations - A property of type + ADPropertyValueCollection, derived from the directory attribute + SupportedRootDSEOperations + - SupportedSASLMechanisms - A property of type System.String, derived from + the directory attribute SupportedSASLMechanisms + - Syncronized - A property of type System.Boolean, derived from the + directory attribute IsSynchronized. + - ADObject - Represents any object in Active Directory and is derived from + ADEntity. An ADObject may contain the following properties in addition to + those inherited from its parent. + - CanonicalName - A property of type System.String, derived from the + directory attribute: canonicalName + - CN - A property of type System.String, derived from the directory + attribute: cn + - Created - A property of type System.DateTime, derived from the directory + attribute: createTimeStamp + - Deleted - A property of type System.Boolean, derived from the directory + attribute: isDeleted + - Description - A property of type System.String, derived from the + directory attribute: description + - DisplayName - A property of type System.String, derived from the + directory attribute: displayName + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LastKnownParent - A property of type System.String, derived from the + directory attribute: lastKnownParent + - Modified - A property of type System.DateTime, derived from the directory + attribute: modifyTimeStamp + - Name - A property of type System.String, derived from the directory + attribute: name + - ObjectCategory - A property of type System.String, derived from the + directory attribute: objectCategory + - ObjectClass - A property of type System.String, derived from the + directory attribute: objectClass + - ObjectGUID - A property of type System.Guid, derived from the directory + attribute: objectGUID + - ProtectedFromAccidentalDeletion - A property of type System.Boolean, + derived from the directory attributes: nTSecurityDescriptor, + sdRightsEffective, instanceType, isDeleted + - ADFineGrainedPasswordPolicy Represents a fine grained password policy + object; that is, an AD object of type msDS-PasswordSettings in AD DS and + is derived from ADObject. This class is not supported by AD LDS. An + ADFineGrainedPasswordPolicy may contain the following properties in + addition to those inherited from its parent. + - AppliesTo - A property of type System.String, derived from the + directory attribute: msDS-PSOAppliesTo + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: msDS-PasswordComplexityEnabled + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: msDS-LockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: msDS-LockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: msDS-LockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MaximumPasswordAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MinimumPasswordAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: msDS-MinimumPasswordLength + - PasswordHistoryCount - A property of type System.Int32, derived from + the directory attribute: msDS-PasswordHistoryLength + - Precedence - A property of type System.Int32, derived from the + directory attribute: msDS-PasswordSettingsPrecedence + - ReversibleEncryptionEnabled - A property of type System.Boolean, + derived from the directory attribute: + msDS-PasswordReversibleEncryptionEnabled + - ADOptionalFeature Represents an optional feature, an Active Directory + object of type msDS-OptionalFeature, and is derived from ADObject. An + ADOptionalFeaturemay contain the following properties in addition to + those inherited from its parent. + - EnabledScopes - A property of type System.String, derived from the + directory attribute: msDS-EnabledFeatureBL + - FeatureGUID - A property of type System.Guid, derived from the + directory attribute: msDS-OptionalFeatureGUID + - FeatureScope - A property of type System.Int32, derived from the + directory attribute: msDS-OptionalFeatureFlags + - IsDisableable - A property of type System.Boolean, derived from the + directory attribute: msDS-OptionalFeatureFlags + - RequiredDomainMode - A property of type + Microsoft.ActiveDirectory.Management.ADDomainMode, derived from the + directory attribute: msDS-RequiredDomainBehaviorVersion + - RequiredForestMode - A property of type + Microsoft.ActiveDirectory.Management.ADForestMode, derived from the + directory attribute: msDS-RequiredForestBehaviorVersion + - ADOrganizationalUnit Represents an organizationalUnit (OU) object and is + derived from ADObject. An ADOrganizationalUnit may contain the following + properties in addition to those inherited from its parent. + - City - A property of type System.String, derived from the directory + attribute: l + - Country - A property of type System.String, derived from the directory + attribute: c + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: gpLink. This property is not supported on + AD LDS. + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - State - A property of type System.String, derived from the directory + attribute: st + - StreetAddress - A property of type System.String, derived from the + directory attribute: street + - ADPartition - Represents a naming context, Configuration, Schema, Domain + or Application Partition(ND NC) and is derived from ADObject. This class + is not supported by AD LDS. An ADPartition may contain the following + properties in addition to those inherited from its parent. + - DeletedObjectsContainer - A property of type System.String, derived + from the directory attribute: DeletedObjectsContainer + - DNSRoot - A property of type System.String, derived from the directory + attribute: DNSRoot + - LostAndFoundContainer - A property of type System.String, derived from + the directory attribute: LostAndFoundContainer + - QuotasContainer - A property of type System.String, derived from the + directory attribute: QuotasContainer + - ReadOnlyReplicaDirectoryServers - A property of type System.String, + derived from the directory attribute: ReadOnlyReplicaDirectoryServers + - ReplicaDirectoryServers - A property of type System.String, derived + from the directory attribute: ReplicaDirectoryServers + - SubordinateReferences - A property of type System.String, derived from + the directory attribute: SubordinateReferences + - ADDomain - Represents a domain in AD DS or an instance in AD LDS; for + example, an Active Directory object of type domainDNS and is derived + from ADPartition. This class is not supported by AD LDS. An ADDomain + may contain the following properties in addition to those inherited + from its parent. + - AllowedDNSSuffixes - A property of type System.String, derived from + the directory attribute: msDS-AllowedDNSSuffixes + - ChildDomains - A property of type System.String, derived from the + directory attribute: ChildDomains + - ComputersContainer - A property of type System.String, derived from + the directory attribute: ComputersContainer + - DomainControllersContainer - A property of type System.String, + derived from the directory attribute: DomainControllersContainer + - DomainMode - A property of type System.Int32, derived from the + directory attribute: msDS-Behavior-Version + - DomainSID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - ForeignSecurityPrincipalsContainer - A property of type + System.String, derived from the directory attribute: + ForeignSecurityPrincipalsContainer + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - InfrastructureMaster - A property of type System.String, derived from + the directory attribute: InfrastructureMaster + - LastLogonReplicationInterval - A property of type System.TimeSpan, + derived from the directory attribute: msDS-LogonTimeSyncInterval + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: LinkedGroupPolicyObjects + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - NetBIOSName - A property of type System.String, derived from the + directory attribute: NetBIOSName + - ParentDomain - A property of type System.String, derived from the + directory attribute: ParentDomain + - PDCEmulator - A property of type System.String, derived from the + directory attribute: PDCEmulator + - RIDMaster - A property of type System.String, derived from the + directory attribute: RIDMaster + - SystemsContainer - A property of type System.String, derived from the + directory attribute: SystemsContainer + - UsersContainer - A property of type System.String, derived from the + directory attribute: UsersContainer + - ADPrincipal - Represents a security principal, which is an Active + Directory object of type user, computer, group or iNetOrgPerson and is + derived from ADObject. An ADPrincipal may contain the following + properties in addition to those inherited from its parent. + - HomePage - A property of type System.String, derived from the + directory attribute: wWWHomePage + - MemberOf - A property of type System.String, derived from the + directory attribute: memberOf + - SamAccountName - A property of type System.String, derived from the + directory attribute: sAMAccountName. This property is not supported + for AD LDS. + - SID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - SIDHistory - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: sIDHistory. This property is not supported for + AD LDS. + - ADAccount - Represents a security account; that is, an Active + Directory object of type user, computer or iNetOrgPerson and is + derived from ADPrincipal. An ADAccount may contain the following + properties in addition to those inherited from its parent. + - AccountExpirationDate - A property of type System.DateTime, derived + from the directory attribute: accountExpires + - AccountLockoutTime - A property of type System.DateTime, derived + from the directory attribute: lockoutTime + - AccountNotDelegated - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - AllowReversiblePasswordEncryption - A property of type + System.Boolean, for AD DS it is derived from the directory + attribute: userAccountControl; for AD LDS it is derived from the + directory attribute: ms-DS-UserEncryptedTextPasswordAllowed + - BadLogonCount - A property of type System.Int32, derived from the + directory attribute: badPwdCount + - CannotChangePassword - A property of type System.Boolean, derived + from the directory attribute: nTSecurityDescriptor + - Certificates - A property of type + System.Security.Cryptography.X509Certificates.X509Certificate, + derived from the directory attribute: userCertificate + - DoesNotRequirePreAuth - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - Enabled - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserAccountDisabled + - HomedirRequired - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - LastBadPasswordAttempt - A property of type System.DateTime, + derived from the directory attribute: badPasswordTime + - LastLogonDate - A property of type System.DateTime, derived from + the directory attribute: lastLogonTimestamp + - LockedOut - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed, lockoutTime; for AD LDS it is + derived from the directory attribute msDS-UserAccountDisabled + - MNSLogonAccount - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - PasswordExpired - A property of type System.Boolean, for AD DS it + is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserPasswordExpired + - PasswordLastSet - A property of type System.DateTime, derived from + the directory attribute: pwdLastSet + - PasswordNeverExpires - A property of type System.Boolean, for AD + LDS it is derived from the directory attributes: + userAccountControl, msDS-User-Account-Control-Computed; for AD LDS + it is derived from the directory attribute: + msDS-UserDontExpirePassword + - PasswordNotRequired - A property of type System.Boolean, for AD DS + it is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute: ms-DS-UserPasswordNotRequired + - PrimaryGroup - A property of type System.String, derived from the + directory attributes: primaryGroupID, objectSid. This property is + not supported by AD LDS. + - ServicePrincipalNames - A property of type System.String, derived + from the directory attribute: servicePrincipalName. This property + is not supported by AD LDS. + - TrustedForDelegation - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - TrustedToAuthForDelegation - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UseDESKeyOnly - A property of type System.Boolean, derived from the + directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UserPrincipalName - A property of type System.String, derived from + the directory attribute: userPrincipalName + - ADComputer - Represents a computer and is derived from ADAccount. + An ADComputer may contain the following properties in addition to + those inherited from its parent. + - DNSHostName - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv4Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - Location - A property of type System.String, derived from the + directory attribute: location + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - OperatingSystem - A property of type System.String, derived from + the directory attribute: operatingSystem + - OperatingSystemHotfix - A property of type System.String, derived + from the directory attribute: operatingSystemHotfix + - OperatingSystemServicePack - A property of type System.String, + derived from the directory attribute: operatingSystemServicePack + - OperatingSystemVersion - A property of type System.String, + derived from the directory attribute: operatingSystemVersion + - ServiceAccount - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccount + - ADServiceAccount - Represents a managed service account; that is, + an Active Directory object of type msDS-ManagerdServiceAccount and + is derived from ADAccount. This class is not supported by AD LDS. + An ADServiceAccount may contain the following properties in + addition to those inherited from its parent. + - HostComputers - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccountBL + - ADUser - Represents a user (or iNetOrgPerson) and is derived from + ADAccount. An ADUser may contain the following properties in + addition to those inherited from its parent. + - City - A property of type System.String, derived from the + directory attribute: l + - Company - A property of type System.String, derived from the + directory attribute: company + - Country - A property of type System.String, derived from the + directory attribute: c + - Department - A property of type System.String, derived from the + directory attribute: department + - Division - A property of type System.String, derived from the + directory attribute: division + - EmailAddress - A property of type System.String, derived from the + directory attribute: mail + - EmployeeID - A property of type System.String, derived from the + directory attribute: employeeID + - EmployeeNumber - A property of type System.String, derived from + the directory attribute: employeeNumber + - Fax - A property of type System.String, derived from the + directory attribute: facsimileTelephoneNumber + - GivenName - A property of type System.String, derived from the + directory attribute: givenName + - HomeDirectory - A property of type System.String, derived from + the directory attribute: homeDirectory. This property is not + supported by AD LDS. + - HomeDrive - A property of type System.String, derived from the + directory attribute: homeDrive. This property is not supported by + AD LDS. + - HomePhone - A property of type System.String, derived from the + directory attribute: homePhone + - Initials - A property of type System.String, derived from the + directory attribute: initials + - LogonWorkstations - A property of type System.String, derived + from the directory attribute: userWorkstations. This property is + not supported by AD LDS. + - Manager - A property of type System.String, derived from the + directory attribute: manager + - MobilePhone - A property of type System.String, derived from the + directory attribute: mobile + - Office - A property of type System.String, derived from the + directory attribute: physicalDeliveryOfficeName + - OfficePhone - A property of type System.String, derived from the + directory attribute: telephoneNumber + - Organization - A property of type System.String, derived from the + directory attribute: o + - OtherName - A property of type System.String, derived from the + directory attribute: middleName + - POBox - A property of type System.String, derived from the + directory attribute: postOfficeBox + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - ProfilePath - A property of type System.String, derived from the + directory attribute: profilePath. This property is not supported + by AD LDS. + - ScriptPath - A property of type System.String, derived from the + directory attribute: scriptPath. This property is not supported + by AD LDS. + - SmartcardLogonRequired - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not + supported by AD LDS. + - State - A property of type System.String, derived from the + directory attribute: st + - StreetAddress - A property of type System.String, derived from + the directory attribute: streetAddress + - Surname - A property of type System.String, derived from the + directory attribute: sn + - Title - A property of type System.String, derived from the + directory attribute: title + - ADGroup -Represents a group and is derived from ADPrincipal. An + ADGroup may contain the following properties in addition to those + inherited from its parent. + - GroupCategory - A property of type + Microsoft.ActiveDirectory.Management.ADGroupCategory, derived from + the directory attribute: groupType + - GroupScope - A property of type + Microsoft.ActiveDirectory.Management.ADGroupScope, derived from the + directory attribute: groupType + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - Members - A property of type System.String, derived from the + directory attribute: member + - ADDefaultDomainPasswordPolicy - Represents the domain-wide password policy + of an Active Directory domain and is derived from ADEntity. This class is + not supported by AD LDS. An ADDefaultDomainPasswordPolicy may contain the + following properties in addition to those inherited from its parent. + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: pwdProperties + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: lockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: lockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: lockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: maxPwdAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: minPwdAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: minPwdLength + - PasswordHistoryCount - A property of type System.Int32, derived from the + directory attribute: pwdHistoryLength + - ReversibleEncryptionEnabled - A property of type System.Boolean, derived + from the directory attribute: pwdProperties + - ADForest - Represents a Active Directory forest in AD DS or a Configuration + Set in AD LDS and is derived from ADEntity. This class is not supported by + AD LDS. An ADForest may contain the following properties in addition to + those inherited from its parent. + - ApplicationPartitions - A property of type System.String, derived from + the directory attribute: ApplicationPartitions + - CrossForestReferences - A property of type System.String, derived from + the directory attribute: CrossForestReferences + - DomainNamingMaster - A property of type System.String, derived from the + directory attribute: DomainNamingMaster + - Domains - A property of type System.String, derived from the directory + attribute: Domains + - ForestMode - A property of type System.Int32, derived from the directory + attribute: msDS-Behavior-Version + - GlobalCatalogs - A property of type System.String, derived from the + directory attribute: GlobalCatalogs + - Name - A property of type System.String, derived from the directory + attribute: name + - PartitionContainerName - A property of type System.String, derived from + the directory attribute: distinguishedName + - RootDomain - A property of type System.String, derived from the directory + attribute: RootDomain + - SchemaMaster - A property of type System.String, derived from the + directory attribute: SchemaMaster + - Sites - A property of type System.String, derived from the directory + attribute: Sites + - SPNSuffixes - A property of type System.String, derived from the + directory attribute: msDS-SPNSuffixes + - UPNSuffixes - A property of type System.String, derived from the + directory attribute: uPNSuffixes + - ADDirectoryServer - Represents a directory server used as either a domain + controller or an AD LDS instance and is derived from ADEntity. An + ADDirectoryServer may contain the following properties in addition to those + inherited from its parent. + - DefaultPartition - A property of type System.String, derived from the + directory attribute: DefaultPartition + - HostName - A property of type System.String, derived from the directory + attribute: HostName + - InvocationId - A property of type System.Guid, derived from the directory + attribute: InvocationId + - IPv4Address - A property of type System.String, derived from the + directory attribute: HostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: HostName + - LdapPort - A property of type System.Int32, derived from the directory + attribute: LdapPort + - Name - A property of type System.String, derived from the directory + attribute: Name + - NTDSSettingsObjectDN - A property of type System.String, derived from the + directory attribute: NTDSSettingsObjectDN + - OperationMasterRoles - A property of type + Microsoft.ActiveDirectory.Management.ADOperationMasterRole, derived from + the directory attribute: OperationMasterRole + - Partitions - A property of type System.String, derived from the directory + attribute: Partitions + - ServerObjectDN - A property of type System.String, derived from the + directory attribute: ServerObjectDN + - ServerObjectGuid - A property of type System.Guid, derived from the + directory attribute: ServerObjectGuid + - Site - A property of type System.String, derived from the directory + attribute: Site + - SslPort - A property of type System.Int32, derived from the directory + attribute: SslPort + - ADDomainController - Represents a domain controller in AD DS and is + derived from ADDirectoryServer. An ADDomainController may contain the + following properties in addition to those inherited from its parent. + - ComputerObjectDN - A property of type System.String, derived from the + directory attribute: ComputerDN + - Domain - A property of type System.String, derived from the directory + attribute: Domain + - Enabled - A property of type System.Boolean, derived from the directory + attribute: Enabled + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - IsGlobalCatalog - A property of type System.Boolean, derived from the + directory attribute: IsGlobalCatalog + - IsReadOnly - A property of type System.Boolean, derived from the + directory attribute: IsReadOnly + - OperatingSystem - A property of type System.String, derived from the + directory attribute: OSName + - OperatingSystemHotfix - A property of type System.String, derived from + the directory attribute: OSHotFix + - OperatingSystemServicePack - A property of type System.String, derived + from the directory attribute: OSServicepack + - OperatingSystemVersion - A property of type System.String, derived from + the directory attribute: OSVersion diff --git a/docset/winserver2016-ps/activedirectory/About/About.md b/docset/winserver2016-ps/activedirectory/About/About.md index adc76085b9..449df28850 100644 --- a/docset/winserver2016-ps/activedirectory/About/About.md +++ b/docset/winserver2016-ps/activedirectory/About/About.md @@ -2,7 +2,7 @@ description: About articles for the ActiveDirectory module. Help Version: 3.1.0.0 Locale: en-US -ms.date: 04/22/2013 +ms.date: 07/03/2024 title: About articles --- # About topics @@ -13,5 +13,14 @@ About topics cover a range of concepts about PowerShell. ## About Topics +### [about_ActiveDirectory](about_ActiveDirectory.md) +The Active Directory module is a command line interface for managing Active Directory. + ### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. + +### [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md) +The Active Directory module for Windows PowerShell objects have a range of identifying attributes that are used for search and retrieval. + +### [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md) +Describes the object model of the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory.md b/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory.md new file mode 100644 index 0000000000..1b7183dcd2 --- /dev/null +++ b/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory.md @@ -0,0 +1,81 @@ +--- +title: about_ActiveDirectory +ms.date: 04/22/2013 +description: The Active Directory module is a command line interface for managing Active Directory. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory + +## SHORT DESCRIPTION + +The Active Directory module is a command line interface for managing Active +Directory. + +## LONG DESCRIPTION + +The Active Directory module for Windows PowerShell is for IT Professionals who +are administering and interfacing with Active Directory. The Active Directory +module provides an efficient way to complete many administrative, +configuration, and diagnostic tasks across Active Directory Domain Services (AD +DS) and Active Directory Lightweight Directory Services (AD LDS) instances in +their environments. The Active Directory module includes a set of Windows +PowerShell cmdlets and a provider. The provider exposes the Active Directory +database through a hierarchical navigation system, which is very similar to the +file system. As with drives in a file system, such as C:, you can connect +Windows PowerShell drives to Active Directory domains and AD LDS, as well as +Active Directory snapshots. + +### Coverage of Active Directory Module Cmdlets + +Create, Read, Update, and Delete actions are supported for Active Directory +objects by cmdlets such as `New-ADUser`, `Get-ADOrganizationalUnit`, +`Set-ADComputer`, and `Remove-ADUser`. + +Account and Password Policy Management are supported by cmdlets such as +`Enable-ADAccount`, `Unlock-ADAccount`, `New-ADServiceAccount`, +`Set-ADAccountControl`, and `Remove-ADFineGrainedPasswordPolicy`. + +Domain and Forest Management is supported by cmdlets such as `Get-ADForest`, +`Set-ADForest`, `Set-ADForestMode`, `Enable-ADOptionalFeature`, +`Get-ADDomainController`, and `Get-ADDomain`. + +### Listing the Active Directory Module Cmdlets + +To get a list of all of the Active Directory module cmdlets, run + +```powershell +Get-Command -Module ActiveDirectory +``` + +### Getting Started + +Getting started with the Active Directory module for Windows PowerShell is as +easy as clicking the following shortcut: + +Run the following command in any Windows PowerShell prompt to import the Active +Directory module: + +```powershell +Import-Module ActiveDirectory +``` + +### Overview and Conceptual Topics + +The first two of these topics offer a high level overview of the Active +Directory module and the Active Directory Provider. + +- For a brief introduction to the Active Directory provider for Windows + PowerShell, see [ActiveDirectory](/powershell/module/activedirectory). +- The following topics are conceptual support topics for the Active Directory + module cmdlets. + - For an introduction to the **Identity** parameter, which is used by the + Active Directory module cmdlets to identify objects in the directory, see + [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md). + - For an introduction to the **Filter** parameter which is used by Active + Directory module cmdlets to search for objects in the directory, see + [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md). + - For an introduction to the .NET Framework-based object model implemented by + the Active Directory module, see + [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). diff --git a/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_Identity.md b/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_Identity.md new file mode 100644 index 0000000000..c007277b19 --- /dev/null +++ b/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_Identity.md @@ -0,0 +1,196 @@ +--- +title: about_ActiveDirectory_Identity +ms.date: 04/22/2013 +description: This article lists the identifying attributes that are used for search and retrieval supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Identity + +## SHORT DESCRIPTION + +The Active Directory module for Windows PowerShell objects have a range of +identifying attributes that are used for search and retrieval. + +## LONG DESCRIPTION + +In order to identify the objects in Active Directory, each object has +attributes that can be used as identifiers. In the Active Directory module, the +value of the identity of an object can be passed using the Identity parameter. +Each object type has its own set of possible types and values for use by the +Identity parameter. See the detailed description of the Identity parameter of +the given cmdlet for more information about its usage. + +When searching with the Active Directory module cmdlets, the value of the +Identity parameter, along with the values of the Server and Partition +parameters, is used to uniquely identify a single object. The Server parameter +is used to locate which server to connect with. The Partition parameter further +narrows the search to a specific partition. The Identity parameter then +resolves to a single unique object in the partition. + +Note that using the Security Accounts Manager (SAM) Account Name +(**sAMAccountName**) when targeting a global catalog port, you will not find a +user in a different domain if you are using the Identity parameter + +If more than one object is found using identity resolution, the Active +Directory module throws an error. + +For more information about the Server and Partition parameters, see the help +topics for the individual cmdlets where they are used, such as `Get-ADUser`, by +typing: + +```powershell +Get-Help Get-ADUser +``` + +### Objects and Identities + +Each object has a list of attributes that can be used as an identity for that +object. Additionally, if the object inherits from another object, then the +parent object's identities can also be used as the child object's identities. +For more information on the Active Directory object hierarchy, see +[about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). + +> [!NOTE] +> For Active Directory Provider cmdlets, only an object's 'Distinguished Name' +> or 'Relative Distinguished Name' can be used as the identity. For a list of +> Active Directory Provider cmdlets, see ActiveDirectory. + +### Identity Attributes + +The following is a list of identity attributes by object type. + +- ADAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADComputer + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager Account Name (sAMAccountName) + +- ADDirectoryServer + - Name of the server object (name) + - For AD LDS instances the syntax of a name is `$` + - For other Active Directory instances, use the value of the name property. + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the directory + server. + - GUID (objectGUID) of server object under the configuration partition. + - GUID (objectGUID) of NTDS settings object under the configuration partition + +- ADDomain + - Distinguished Name + - GUID + - Security Identifier + - DNS domain name + - NetBIOS domain name + +- ADDomainController + - GUID (objectGUID) + - IPV4Address + - Global IPV6Address + - DNS Host Name (dNSHostName) + - Name of the server object + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the domain controller + - GUID of NTDS settings object under the configuration partition + - GUID of server object under the configuration partition + - Distinguished Name of the computer object that represents the domain controller. + +- ADFineGrainedPasswordPolicy + - Distinguished Name + - GUID (objectGUID) + - Name (name) + +- ADForest + - Fully qualified domain name + - DNS host name + - NetBIOS name + +- ADGroup + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager (SAM) Account Name (sAMAccountName) + +- ADObject + - Distinguished Name + - GUID (objectGUID) + +- ADOptionalFeature + - Distinguished Name + - Name (name) + - Feature GUID (featureGUID) + - GUID (objectGUID) + +- ADOrganizationalUnit + - Distinguished Name + - GUID (objectGUID) + +- ADPrincipal + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADServiceAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADUser + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM User Name (sAMUserName) + + +### Identities Formats + +Active Directory module objects have a range of identity attributes. Below is a +list of these, their types and formats. + +- Distinguished Name + - Example: CN=SaraDavis,CN=Europe,CN=Users, DC=corp,DC=contoso,DC=com + +- DNS domain name + - Example: redmond.corp.contoso.com + +- DNS Host Name (dNSHostName) + - Example: corp-DC01.corp.contoso.com + +- Feature GUID (featureGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- Fully qualified domain name + - Example: corp.contoso.com + +- Global IPV6Address + - Example: 2001:4898:0:fff:200:5efe:157.59.132.61 + +- GUID (objectGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- IPV4Address + - Example:157.59.132.61 + +- NetBIOS domain name + - Example: redmond + +- Name of the server object + - Example: corp-DC01$ + +- SAM Account Name (sAMAccountName) + - Example: saradavisreports + +- Security Identifier (objectSid) + - Example: S-1-5-21-3165297888-301567370-576410423-1103 + +- Name + - Example: Recycle Bin Feature diff --git a/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md b/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md new file mode 100644 index 0000000000..8535a97464 --- /dev/null +++ b/docset/winserver2016-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md @@ -0,0 +1,595 @@ +--- +title: about_ActiveDirectory_ObjectModel +ms.date: 04/22/2013 +description: Describes the object model of the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_ObjectModel + +## SHORT DESCRIPTION +Describes the object model of the Active Directory module for Windows +PowerShell. + +## LONG DESCRIPTION + +This topic explains the Active Directory module classes and their properties +used to model actual Active Directory attributes. It also outlines the class +hierarchy constructed from its Active Directory counterpart. The object model +establishes a data foundation for all the operations supported by Active +Directory module cmdlets. + +### Class Hierarchy + +The following list shows the class hierarchy defined in the Active Directory +module object model, with class inheritance implied by indentation. This +inheritance model allows for Active Directory cmdlets to accept a range of +object types as input. This means, for example, that the cmdlet +Get-ADPrincipalGroupMembership can accept as input any of the following +objects: ADGroup, ADAccount, ADComputer, ADServiceAccount or ADUser. This works +because of the inheritance model and guarantees that an ADUser object has all +of the properties of an ADPrincipal object. + +``` +ADEntity + ADRootDSE + ADObject + ADFineGrainedPasswordPolicy + ADOptionalFeature + ADOrganizationalUnit + ADPartition + ADDomain + ADPrincipal + ADAccount + ADComputer + ADServiceAccount + ADUser + ADGroup + ADDefaultDomainPasswordPolicy + ADForest + ADDirectoryServer + ADDomainController +``` + +### Active Directory Module Classes + +The following listing shows every Active Directory module class from the class +hierarchy listing. Each class defines a set of properties, some of which are +LDAP attributes that are retrieved by default and some are new properties +created specifically for the Active Directory module. These new properties are +derived from one or more LDAP attributes as outlined in the class listings. + + +- ADEntity - The base level class from which all other classes are derived. + - ADRootDSE - Represents the rootDSE and is derived from ADEntity. An + ADRootDSE may contain the following properties in addition to those + inherited from its parent. + - ConfigurationNamingContext - A property of type System.String, derived + from the directory attribute ConfigurationNamingContext + - CurrentTime - A property of type System.DateTime, derived from the + directory attribute CurrentTime + - DefaultNamingContext - A property of type System.String, derived from the + directory attribute DefaultNamingContext + - DnsHostName - A property of type System.String, derived from the + directory attribute DnsHostName + - DomainControllerFunctionality - A property of type + ADDomainControllerMode, derived from the directory attribute + DomainControllerFunctionality + - DomainFunctionality - A property of type ADDomainMode, derived from the + directory attribute DomainFunctionality + - DsServiceName - A property of type System.String, derived from the + directory attribute DsServiceName + - ForestFunctionality - A property of type ADForestMode, derived from the + directory attribute ForestFunctionality + - GlobalCatalogReady - A property of type System.Boolean, derived from the + directory attribute GlobalCatalogReady + - HighestCommittedUSN - A property of type System.Long, derived from the + directory attribute HighestCommittedUSN + - LdapServiceName - A property of type System.String, derived from the + directory attribute LdapServiceName + - NamingContexts - A property of type System.String, derived from the + directory attribute NamingContexts + - RootDomainNamingContext - A property of type System.String, derived from + the directory attribute RootDomainNamingContext + - SchemaNamingContext - A property of type System.String, derived from the + directory attribute SchemaNamingContext + - ServerName - A property of type System.String, derived from the directory + attribute ServerName + - SubschemaSubentry - A property of type ADObject, derived from the + directory attribute SubschemaSubentry + - SupportedCapabilities - A property of type ADObjectIdentifier, derived + from the directory attribute SupportedCapabilities + - SupportedControl - A property of type ADObjectIdentifier, derived from + the directory attribute SupportedControl + - SupportedLDAPPolicies - A property of type System.String, derived from + the directory attribute SupportedLDAPPolicies + - SupportedLDAPVersion - A property of type System.Int, derived from the + directory attribute SupportedLDAPVersion + - SupportedRootDSEOperations - A property of type + ADPropertyValueCollection, derived from the directory attribute + SupportedRootDSEOperations + - SupportedSASLMechanisms - A property of type System.String, derived from + the directory attribute SupportedSASLMechanisms + - Syncronized - A property of type System.Boolean, derived from the + directory attribute IsSynchronized. + - ADObject - Represents any object in Active Directory and is derived from + ADEntity. An ADObject may contain the following properties in addition to + those inherited from its parent. + - CanonicalName - A property of type System.String, derived from the + directory attribute: canonicalName + - CN - A property of type System.String, derived from the directory + attribute: cn + - Created - A property of type System.DateTime, derived from the directory + attribute: createTimeStamp + - Deleted - A property of type System.Boolean, derived from the directory + attribute: isDeleted + - Description - A property of type System.String, derived from the + directory attribute: description + - DisplayName - A property of type System.String, derived from the + directory attribute: displayName + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LastKnownParent - A property of type System.String, derived from the + directory attribute: lastKnownParent + - Modified - A property of type System.DateTime, derived from the directory + attribute: modifyTimeStamp + - Name - A property of type System.String, derived from the directory + attribute: name + - ObjectCategory - A property of type System.String, derived from the + directory attribute: objectCategory + - ObjectClass - A property of type System.String, derived from the + directory attribute: objectClass + - ObjectGUID - A property of type System.Guid, derived from the directory + attribute: objectGUID + - ProtectedFromAccidentalDeletion - A property of type System.Boolean, + derived from the directory attributes: nTSecurityDescriptor, + sdRightsEffective, instanceType, isDeleted + - ADFineGrainedPasswordPolicy Represents a fine grained password policy + object; that is, an AD object of type msDS-PasswordSettings in AD DS and + is derived from ADObject. This class is not supported by AD LDS. An + ADFineGrainedPasswordPolicy may contain the following properties in + addition to those inherited from its parent. + - AppliesTo - A property of type System.String, derived from the + directory attribute: msDS-PSOAppliesTo + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: msDS-PasswordComplexityEnabled + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: msDS-LockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: msDS-LockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: msDS-LockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MaximumPasswordAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MinimumPasswordAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: msDS-MinimumPasswordLength + - PasswordHistoryCount - A property of type System.Int32, derived from + the directory attribute: msDS-PasswordHistoryLength + - Precedence - A property of type System.Int32, derived from the + directory attribute: msDS-PasswordSettingsPrecedence + - ReversibleEncryptionEnabled - A property of type System.Boolean, + derived from the directory attribute: + msDS-PasswordReversibleEncryptionEnabled + - ADOptionalFeature Represents an optional feature, an Active Directory + object of type msDS-OptionalFeature, and is derived from ADObject. An + ADOptionalFeaturemay contain the following properties in addition to + those inherited from its parent. + - EnabledScopes - A property of type System.String, derived from the + directory attribute: msDS-EnabledFeatureBL + - FeatureGUID - A property of type System.Guid, derived from the + directory attribute: msDS-OptionalFeatureGUID + - FeatureScope - A property of type System.Int32, derived from the + directory attribute: msDS-OptionalFeatureFlags + - IsDisableable - A property of type System.Boolean, derived from the + directory attribute: msDS-OptionalFeatureFlags + - RequiredDomainMode - A property of type + Microsoft.ActiveDirectory.Management.ADDomainMode, derived from the + directory attribute: msDS-RequiredDomainBehaviorVersion + - RequiredForestMode - A property of type + Microsoft.ActiveDirectory.Management.ADForestMode, derived from the + directory attribute: msDS-RequiredForestBehaviorVersion + - ADOrganizationalUnit Represents an organizationalUnit (OU) object and is + derived from ADObject. An ADOrganizationalUnit may contain the following + properties in addition to those inherited from its parent. + - City - A property of type System.String, derived from the directory + attribute: l + - Country - A property of type System.String, derived from the directory + attribute: c + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: gpLink. This property is not supported on + AD LDS. + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - State - A property of type System.String, derived from the directory + attribute: st + - StreetAddress - A property of type System.String, derived from the + directory attribute: street + - ADPartition - Represents a naming context, Configuration, Schema, Domain + or Application Partition(ND NC) and is derived from ADObject. This class + is not supported by AD LDS. An ADPartition may contain the following + properties in addition to those inherited from its parent. + - DeletedObjectsContainer - A property of type System.String, derived + from the directory attribute: DeletedObjectsContainer + - DNSRoot - A property of type System.String, derived from the directory + attribute: DNSRoot + - LostAndFoundContainer - A property of type System.String, derived from + the directory attribute: LostAndFoundContainer + - QuotasContainer - A property of type System.String, derived from the + directory attribute: QuotasContainer + - ReadOnlyReplicaDirectoryServers - A property of type System.String, + derived from the directory attribute: ReadOnlyReplicaDirectoryServers + - ReplicaDirectoryServers - A property of type System.String, derived + from the directory attribute: ReplicaDirectoryServers + - SubordinateReferences - A property of type System.String, derived from + the directory attribute: SubordinateReferences + - ADDomain - Represents a domain in AD DS or an instance in AD LDS; for + example, an Active Directory object of type domainDNS and is derived + from ADPartition. This class is not supported by AD LDS. An ADDomain + may contain the following properties in addition to those inherited + from its parent. + - AllowedDNSSuffixes - A property of type System.String, derived from + the directory attribute: msDS-AllowedDNSSuffixes + - ChildDomains - A property of type System.String, derived from the + directory attribute: ChildDomains + - ComputersContainer - A property of type System.String, derived from + the directory attribute: ComputersContainer + - DomainControllersContainer - A property of type System.String, + derived from the directory attribute: DomainControllersContainer + - DomainMode - A property of type System.Int32, derived from the + directory attribute: msDS-Behavior-Version + - DomainSID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - ForeignSecurityPrincipalsContainer - A property of type + System.String, derived from the directory attribute: + ForeignSecurityPrincipalsContainer + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - InfrastructureMaster - A property of type System.String, derived from + the directory attribute: InfrastructureMaster + - LastLogonReplicationInterval - A property of type System.TimeSpan, + derived from the directory attribute: msDS-LogonTimeSyncInterval + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: LinkedGroupPolicyObjects + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - NetBIOSName - A property of type System.String, derived from the + directory attribute: NetBIOSName + - ParentDomain - A property of type System.String, derived from the + directory attribute: ParentDomain + - PDCEmulator - A property of type System.String, derived from the + directory attribute: PDCEmulator + - RIDMaster - A property of type System.String, derived from the + directory attribute: RIDMaster + - SystemsContainer - A property of type System.String, derived from the + directory attribute: SystemsContainer + - UsersContainer - A property of type System.String, derived from the + directory attribute: UsersContainer + - ADPrincipal - Represents a security principal, which is an Active + Directory object of type user, computer, group or iNetOrgPerson and is + derived from ADObject. An ADPrincipal may contain the following + properties in addition to those inherited from its parent. + - HomePage - A property of type System.String, derived from the + directory attribute: wWWHomePage + - MemberOf - A property of type System.String, derived from the + directory attribute: memberOf + - SamAccountName - A property of type System.String, derived from the + directory attribute: sAMAccountName. This property is not supported + for AD LDS. + - SID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - SIDHistory - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: sIDHistory. This property is not supported for + AD LDS. + - ADAccount - Represents a security account; that is, an Active + Directory object of type user, computer or iNetOrgPerson and is + derived from ADPrincipal. An ADAccount may contain the following + properties in addition to those inherited from its parent. + - AccountExpirationDate - A property of type System.DateTime, derived + from the directory attribute: accountExpires + - AccountLockoutTime - A property of type System.DateTime, derived + from the directory attribute: lockoutTime + - AccountNotDelegated - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - AllowReversiblePasswordEncryption - A property of type + System.Boolean, for AD DS it is derived from the directory + attribute: userAccountControl; for AD LDS it is derived from the + directory attribute: ms-DS-UserEncryptedTextPasswordAllowed + - BadLogonCount - A property of type System.Int32, derived from the + directory attribute: badPwdCount + - CannotChangePassword - A property of type System.Boolean, derived + from the directory attribute: nTSecurityDescriptor + - Certificates - A property of type + System.Security.Cryptography.X509Certificates.X509Certificate, + derived from the directory attribute: userCertificate + - DoesNotRequirePreAuth - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - Enabled - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserAccountDisabled + - HomedirRequired - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - LastBadPasswordAttempt - A property of type System.DateTime, + derived from the directory attribute: badPasswordTime + - LastLogonDate - A property of type System.DateTime, derived from + the directory attribute: lastLogonTimestamp + - LockedOut - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed, lockoutTime; for AD LDS it is + derived from the directory attribute msDS-UserAccountDisabled + - MNSLogonAccount - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - PasswordExpired - A property of type System.Boolean, for AD DS it + is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserPasswordExpired + - PasswordLastSet - A property of type System.DateTime, derived from + the directory attribute: pwdLastSet + - PasswordNeverExpires - A property of type System.Boolean, for AD + LDS it is derived from the directory attributes: + userAccountControl, msDS-User-Account-Control-Computed; for AD LDS + it is derived from the directory attribute: + msDS-UserDontExpirePassword + - PasswordNotRequired - A property of type System.Boolean, for AD DS + it is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute: ms-DS-UserPasswordNotRequired + - PrimaryGroup - A property of type System.String, derived from the + directory attributes: primaryGroupID, objectSid. This property is + not supported by AD LDS. + - ServicePrincipalNames - A property of type System.String, derived + from the directory attribute: servicePrincipalName. This property + is not supported by AD LDS. + - TrustedForDelegation - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - TrustedToAuthForDelegation - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UseDESKeyOnly - A property of type System.Boolean, derived from the + directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UserPrincipalName - A property of type System.String, derived from + the directory attribute: userPrincipalName + - ADComputer - Represents a computer and is derived from ADAccount. + An ADComputer may contain the following properties in addition to + those inherited from its parent. + - DNSHostName - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv4Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - Location - A property of type System.String, derived from the + directory attribute: location + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - OperatingSystem - A property of type System.String, derived from + the directory attribute: operatingSystem + - OperatingSystemHotfix - A property of type System.String, derived + from the directory attribute: operatingSystemHotfix + - OperatingSystemServicePack - A property of type System.String, + derived from the directory attribute: operatingSystemServicePack + - OperatingSystemVersion - A property of type System.String, + derived from the directory attribute: operatingSystemVersion + - ServiceAccount - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccount + - ADServiceAccount - Represents a managed service account; that is, + an Active Directory object of type msDS-ManagerdServiceAccount and + is derived from ADAccount. This class is not supported by AD LDS. + An ADServiceAccount may contain the following properties in + addition to those inherited from its parent. + - HostComputers - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccountBL + - ADUser - Represents a user (or iNetOrgPerson) and is derived from + ADAccount. An ADUser may contain the following properties in + addition to those inherited from its parent. + - City - A property of type System.String, derived from the + directory attribute: l + - Company - A property of type System.String, derived from the + directory attribute: company + - Country - A property of type System.String, derived from the + directory attribute: c + - Department - A property of type System.String, derived from the + directory attribute: department + - Division - A property of type System.String, derived from the + directory attribute: division + - EmailAddress - A property of type System.String, derived from the + directory attribute: mail + - EmployeeID - A property of type System.String, derived from the + directory attribute: employeeID + - EmployeeNumber - A property of type System.String, derived from + the directory attribute: employeeNumber + - Fax - A property of type System.String, derived from the + directory attribute: facsimileTelephoneNumber + - GivenName - A property of type System.String, derived from the + directory attribute: givenName + - HomeDirectory - A property of type System.String, derived from + the directory attribute: homeDirectory. This property is not + supported by AD LDS. + - HomeDrive - A property of type System.String, derived from the + directory attribute: homeDrive. This property is not supported by + AD LDS. + - HomePhone - A property of type System.String, derived from the + directory attribute: homePhone + - Initials - A property of type System.String, derived from the + directory attribute: initials + - LogonWorkstations - A property of type System.String, derived + from the directory attribute: userWorkstations. This property is + not supported by AD LDS. + - Manager - A property of type System.String, derived from the + directory attribute: manager + - MobilePhone - A property of type System.String, derived from the + directory attribute: mobile + - Office - A property of type System.String, derived from the + directory attribute: physicalDeliveryOfficeName + - OfficePhone - A property of type System.String, derived from the + directory attribute: telephoneNumber + - Organization - A property of type System.String, derived from the + directory attribute: o + - OtherName - A property of type System.String, derived from the + directory attribute: middleName + - POBox - A property of type System.String, derived from the + directory attribute: postOfficeBox + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - ProfilePath - A property of type System.String, derived from the + directory attribute: profilePath. This property is not supported + by AD LDS. + - ScriptPath - A property of type System.String, derived from the + directory attribute: scriptPath. This property is not supported + by AD LDS. + - SmartcardLogonRequired - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not + supported by AD LDS. + - State - A property of type System.String, derived from the + directory attribute: st + - StreetAddress - A property of type System.String, derived from + the directory attribute: streetAddress + - Surname - A property of type System.String, derived from the + directory attribute: sn + - Title - A property of type System.String, derived from the + directory attribute: title + - ADGroup -Represents a group and is derived from ADPrincipal. An + ADGroup may contain the following properties in addition to those + inherited from its parent. + - GroupCategory - A property of type + Microsoft.ActiveDirectory.Management.ADGroupCategory, derived from + the directory attribute: groupType + - GroupScope - A property of type + Microsoft.ActiveDirectory.Management.ADGroupScope, derived from the + directory attribute: groupType + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - Members - A property of type System.String, derived from the + directory attribute: member + - ADDefaultDomainPasswordPolicy - Represents the domain-wide password policy + of an Active Directory domain and is derived from ADEntity. This class is + not supported by AD LDS. An ADDefaultDomainPasswordPolicy may contain the + following properties in addition to those inherited from its parent. + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: pwdProperties + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: lockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: lockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: lockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: maxPwdAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: minPwdAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: minPwdLength + - PasswordHistoryCount - A property of type System.Int32, derived from the + directory attribute: pwdHistoryLength + - ReversibleEncryptionEnabled - A property of type System.Boolean, derived + from the directory attribute: pwdProperties + - ADForest - Represents a Active Directory forest in AD DS or a Configuration + Set in AD LDS and is derived from ADEntity. This class is not supported by + AD LDS. An ADForest may contain the following properties in addition to + those inherited from its parent. + - ApplicationPartitions - A property of type System.String, derived from + the directory attribute: ApplicationPartitions + - CrossForestReferences - A property of type System.String, derived from + the directory attribute: CrossForestReferences + - DomainNamingMaster - A property of type System.String, derived from the + directory attribute: DomainNamingMaster + - Domains - A property of type System.String, derived from the directory + attribute: Domains + - ForestMode - A property of type System.Int32, derived from the directory + attribute: msDS-Behavior-Version + - GlobalCatalogs - A property of type System.String, derived from the + directory attribute: GlobalCatalogs + - Name - A property of type System.String, derived from the directory + attribute: name + - PartitionContainerName - A property of type System.String, derived from + the directory attribute: distinguishedName + - RootDomain - A property of type System.String, derived from the directory + attribute: RootDomain + - SchemaMaster - A property of type System.String, derived from the + directory attribute: SchemaMaster + - Sites - A property of type System.String, derived from the directory + attribute: Sites + - SPNSuffixes - A property of type System.String, derived from the + directory attribute: msDS-SPNSuffixes + - UPNSuffixes - A property of type System.String, derived from the + directory attribute: uPNSuffixes + - ADDirectoryServer - Represents a directory server used as either a domain + controller or an AD LDS instance and is derived from ADEntity. An + ADDirectoryServer may contain the following properties in addition to those + inherited from its parent. + - DefaultPartition - A property of type System.String, derived from the + directory attribute: DefaultPartition + - HostName - A property of type System.String, derived from the directory + attribute: HostName + - InvocationId - A property of type System.Guid, derived from the directory + attribute: InvocationId + - IPv4Address - A property of type System.String, derived from the + directory attribute: HostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: HostName + - LdapPort - A property of type System.Int32, derived from the directory + attribute: LdapPort + - Name - A property of type System.String, derived from the directory + attribute: Name + - NTDSSettingsObjectDN - A property of type System.String, derived from the + directory attribute: NTDSSettingsObjectDN + - OperationMasterRoles - A property of type + Microsoft.ActiveDirectory.Management.ADOperationMasterRole, derived from + the directory attribute: OperationMasterRole + - Partitions - A property of type System.String, derived from the directory + attribute: Partitions + - ServerObjectDN - A property of type System.String, derived from the + directory attribute: ServerObjectDN + - ServerObjectGuid - A property of type System.Guid, derived from the + directory attribute: ServerObjectGuid + - Site - A property of type System.String, derived from the directory + attribute: Site + - SslPort - A property of type System.Int32, derived from the directory + attribute: SslPort + - ADDomainController - Represents a domain controller in AD DS and is + derived from ADDirectoryServer. An ADDomainController may contain the + following properties in addition to those inherited from its parent. + - ComputerObjectDN - A property of type System.String, derived from the + directory attribute: ComputerDN + - Domain - A property of type System.String, derived from the directory + attribute: Domain + - Enabled - A property of type System.Boolean, derived from the directory + attribute: Enabled + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - IsGlobalCatalog - A property of type System.Boolean, derived from the + directory attribute: IsGlobalCatalog + - IsReadOnly - A property of type System.Boolean, derived from the + directory attribute: IsReadOnly + - OperatingSystem - A property of type System.String, derived from the + directory attribute: OSName + - OperatingSystemHotfix - A property of type System.String, derived from + the directory attribute: OSHotFix + - OperatingSystemServicePack - A property of type System.String, derived + from the directory attribute: OSServicepack + - OperatingSystemVersion - A property of type System.String, derived from + the directory attribute: OSVersion diff --git a/docset/winserver2019-ps/activedirectory/About/About.md b/docset/winserver2019-ps/activedirectory/About/About.md index adc76085b9..449df28850 100644 --- a/docset/winserver2019-ps/activedirectory/About/About.md +++ b/docset/winserver2019-ps/activedirectory/About/About.md @@ -2,7 +2,7 @@ description: About articles for the ActiveDirectory module. Help Version: 3.1.0.0 Locale: en-US -ms.date: 04/22/2013 +ms.date: 07/03/2024 title: About articles --- # About topics @@ -13,5 +13,14 @@ About topics cover a range of concepts about PowerShell. ## About Topics +### [about_ActiveDirectory](about_ActiveDirectory.md) +The Active Directory module is a command line interface for managing Active Directory. + ### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. + +### [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md) +The Active Directory module for Windows PowerShell objects have a range of identifying attributes that are used for search and retrieval. + +### [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md) +Describes the object model of the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory.md b/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory.md new file mode 100644 index 0000000000..1b7183dcd2 --- /dev/null +++ b/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory.md @@ -0,0 +1,81 @@ +--- +title: about_ActiveDirectory +ms.date: 04/22/2013 +description: The Active Directory module is a command line interface for managing Active Directory. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory + +## SHORT DESCRIPTION + +The Active Directory module is a command line interface for managing Active +Directory. + +## LONG DESCRIPTION + +The Active Directory module for Windows PowerShell is for IT Professionals who +are administering and interfacing with Active Directory. The Active Directory +module provides an efficient way to complete many administrative, +configuration, and diagnostic tasks across Active Directory Domain Services (AD +DS) and Active Directory Lightweight Directory Services (AD LDS) instances in +their environments. The Active Directory module includes a set of Windows +PowerShell cmdlets and a provider. The provider exposes the Active Directory +database through a hierarchical navigation system, which is very similar to the +file system. As with drives in a file system, such as C:, you can connect +Windows PowerShell drives to Active Directory domains and AD LDS, as well as +Active Directory snapshots. + +### Coverage of Active Directory Module Cmdlets + +Create, Read, Update, and Delete actions are supported for Active Directory +objects by cmdlets such as `New-ADUser`, `Get-ADOrganizationalUnit`, +`Set-ADComputer`, and `Remove-ADUser`. + +Account and Password Policy Management are supported by cmdlets such as +`Enable-ADAccount`, `Unlock-ADAccount`, `New-ADServiceAccount`, +`Set-ADAccountControl`, and `Remove-ADFineGrainedPasswordPolicy`. + +Domain and Forest Management is supported by cmdlets such as `Get-ADForest`, +`Set-ADForest`, `Set-ADForestMode`, `Enable-ADOptionalFeature`, +`Get-ADDomainController`, and `Get-ADDomain`. + +### Listing the Active Directory Module Cmdlets + +To get a list of all of the Active Directory module cmdlets, run + +```powershell +Get-Command -Module ActiveDirectory +``` + +### Getting Started + +Getting started with the Active Directory module for Windows PowerShell is as +easy as clicking the following shortcut: + +Run the following command in any Windows PowerShell prompt to import the Active +Directory module: + +```powershell +Import-Module ActiveDirectory +``` + +### Overview and Conceptual Topics + +The first two of these topics offer a high level overview of the Active +Directory module and the Active Directory Provider. + +- For a brief introduction to the Active Directory provider for Windows + PowerShell, see [ActiveDirectory](/powershell/module/activedirectory). +- The following topics are conceptual support topics for the Active Directory + module cmdlets. + - For an introduction to the **Identity** parameter, which is used by the + Active Directory module cmdlets to identify objects in the directory, see + [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md). + - For an introduction to the **Filter** parameter which is used by Active + Directory module cmdlets to search for objects in the directory, see + [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md). + - For an introduction to the .NET Framework-based object model implemented by + the Active Directory module, see + [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). diff --git a/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_Identity.md b/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_Identity.md new file mode 100644 index 0000000000..c007277b19 --- /dev/null +++ b/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_Identity.md @@ -0,0 +1,196 @@ +--- +title: about_ActiveDirectory_Identity +ms.date: 04/22/2013 +description: This article lists the identifying attributes that are used for search and retrieval supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Identity + +## SHORT DESCRIPTION + +The Active Directory module for Windows PowerShell objects have a range of +identifying attributes that are used for search and retrieval. + +## LONG DESCRIPTION + +In order to identify the objects in Active Directory, each object has +attributes that can be used as identifiers. In the Active Directory module, the +value of the identity of an object can be passed using the Identity parameter. +Each object type has its own set of possible types and values for use by the +Identity parameter. See the detailed description of the Identity parameter of +the given cmdlet for more information about its usage. + +When searching with the Active Directory module cmdlets, the value of the +Identity parameter, along with the values of the Server and Partition +parameters, is used to uniquely identify a single object. The Server parameter +is used to locate which server to connect with. The Partition parameter further +narrows the search to a specific partition. The Identity parameter then +resolves to a single unique object in the partition. + +Note that using the Security Accounts Manager (SAM) Account Name +(**sAMAccountName**) when targeting a global catalog port, you will not find a +user in a different domain if you are using the Identity parameter + +If more than one object is found using identity resolution, the Active +Directory module throws an error. + +For more information about the Server and Partition parameters, see the help +topics for the individual cmdlets where they are used, such as `Get-ADUser`, by +typing: + +```powershell +Get-Help Get-ADUser +``` + +### Objects and Identities + +Each object has a list of attributes that can be used as an identity for that +object. Additionally, if the object inherits from another object, then the +parent object's identities can also be used as the child object's identities. +For more information on the Active Directory object hierarchy, see +[about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). + +> [!NOTE] +> For Active Directory Provider cmdlets, only an object's 'Distinguished Name' +> or 'Relative Distinguished Name' can be used as the identity. For a list of +> Active Directory Provider cmdlets, see ActiveDirectory. + +### Identity Attributes + +The following is a list of identity attributes by object type. + +- ADAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADComputer + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager Account Name (sAMAccountName) + +- ADDirectoryServer + - Name of the server object (name) + - For AD LDS instances the syntax of a name is `$` + - For other Active Directory instances, use the value of the name property. + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the directory + server. + - GUID (objectGUID) of server object under the configuration partition. + - GUID (objectGUID) of NTDS settings object under the configuration partition + +- ADDomain + - Distinguished Name + - GUID + - Security Identifier + - DNS domain name + - NetBIOS domain name + +- ADDomainController + - GUID (objectGUID) + - IPV4Address + - Global IPV6Address + - DNS Host Name (dNSHostName) + - Name of the server object + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the domain controller + - GUID of NTDS settings object under the configuration partition + - GUID of server object under the configuration partition + - Distinguished Name of the computer object that represents the domain controller. + +- ADFineGrainedPasswordPolicy + - Distinguished Name + - GUID (objectGUID) + - Name (name) + +- ADForest + - Fully qualified domain name + - DNS host name + - NetBIOS name + +- ADGroup + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager (SAM) Account Name (sAMAccountName) + +- ADObject + - Distinguished Name + - GUID (objectGUID) + +- ADOptionalFeature + - Distinguished Name + - Name (name) + - Feature GUID (featureGUID) + - GUID (objectGUID) + +- ADOrganizationalUnit + - Distinguished Name + - GUID (objectGUID) + +- ADPrincipal + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADServiceAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADUser + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM User Name (sAMUserName) + + +### Identities Formats + +Active Directory module objects have a range of identity attributes. Below is a +list of these, their types and formats. + +- Distinguished Name + - Example: CN=SaraDavis,CN=Europe,CN=Users, DC=corp,DC=contoso,DC=com + +- DNS domain name + - Example: redmond.corp.contoso.com + +- DNS Host Name (dNSHostName) + - Example: corp-DC01.corp.contoso.com + +- Feature GUID (featureGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- Fully qualified domain name + - Example: corp.contoso.com + +- Global IPV6Address + - Example: 2001:4898:0:fff:200:5efe:157.59.132.61 + +- GUID (objectGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- IPV4Address + - Example:157.59.132.61 + +- NetBIOS domain name + - Example: redmond + +- Name of the server object + - Example: corp-DC01$ + +- SAM Account Name (sAMAccountName) + - Example: saradavisreports + +- Security Identifier (objectSid) + - Example: S-1-5-21-3165297888-301567370-576410423-1103 + +- Name + - Example: Recycle Bin Feature diff --git a/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md b/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md new file mode 100644 index 0000000000..8535a97464 --- /dev/null +++ b/docset/winserver2019-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md @@ -0,0 +1,595 @@ +--- +title: about_ActiveDirectory_ObjectModel +ms.date: 04/22/2013 +description: Describes the object model of the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_ObjectModel + +## SHORT DESCRIPTION +Describes the object model of the Active Directory module for Windows +PowerShell. + +## LONG DESCRIPTION + +This topic explains the Active Directory module classes and their properties +used to model actual Active Directory attributes. It also outlines the class +hierarchy constructed from its Active Directory counterpart. The object model +establishes a data foundation for all the operations supported by Active +Directory module cmdlets. + +### Class Hierarchy + +The following list shows the class hierarchy defined in the Active Directory +module object model, with class inheritance implied by indentation. This +inheritance model allows for Active Directory cmdlets to accept a range of +object types as input. This means, for example, that the cmdlet +Get-ADPrincipalGroupMembership can accept as input any of the following +objects: ADGroup, ADAccount, ADComputer, ADServiceAccount or ADUser. This works +because of the inheritance model and guarantees that an ADUser object has all +of the properties of an ADPrincipal object. + +``` +ADEntity + ADRootDSE + ADObject + ADFineGrainedPasswordPolicy + ADOptionalFeature + ADOrganizationalUnit + ADPartition + ADDomain + ADPrincipal + ADAccount + ADComputer + ADServiceAccount + ADUser + ADGroup + ADDefaultDomainPasswordPolicy + ADForest + ADDirectoryServer + ADDomainController +``` + +### Active Directory Module Classes + +The following listing shows every Active Directory module class from the class +hierarchy listing. Each class defines a set of properties, some of which are +LDAP attributes that are retrieved by default and some are new properties +created specifically for the Active Directory module. These new properties are +derived from one or more LDAP attributes as outlined in the class listings. + + +- ADEntity - The base level class from which all other classes are derived. + - ADRootDSE - Represents the rootDSE and is derived from ADEntity. An + ADRootDSE may contain the following properties in addition to those + inherited from its parent. + - ConfigurationNamingContext - A property of type System.String, derived + from the directory attribute ConfigurationNamingContext + - CurrentTime - A property of type System.DateTime, derived from the + directory attribute CurrentTime + - DefaultNamingContext - A property of type System.String, derived from the + directory attribute DefaultNamingContext + - DnsHostName - A property of type System.String, derived from the + directory attribute DnsHostName + - DomainControllerFunctionality - A property of type + ADDomainControllerMode, derived from the directory attribute + DomainControllerFunctionality + - DomainFunctionality - A property of type ADDomainMode, derived from the + directory attribute DomainFunctionality + - DsServiceName - A property of type System.String, derived from the + directory attribute DsServiceName + - ForestFunctionality - A property of type ADForestMode, derived from the + directory attribute ForestFunctionality + - GlobalCatalogReady - A property of type System.Boolean, derived from the + directory attribute GlobalCatalogReady + - HighestCommittedUSN - A property of type System.Long, derived from the + directory attribute HighestCommittedUSN + - LdapServiceName - A property of type System.String, derived from the + directory attribute LdapServiceName + - NamingContexts - A property of type System.String, derived from the + directory attribute NamingContexts + - RootDomainNamingContext - A property of type System.String, derived from + the directory attribute RootDomainNamingContext + - SchemaNamingContext - A property of type System.String, derived from the + directory attribute SchemaNamingContext + - ServerName - A property of type System.String, derived from the directory + attribute ServerName + - SubschemaSubentry - A property of type ADObject, derived from the + directory attribute SubschemaSubentry + - SupportedCapabilities - A property of type ADObjectIdentifier, derived + from the directory attribute SupportedCapabilities + - SupportedControl - A property of type ADObjectIdentifier, derived from + the directory attribute SupportedControl + - SupportedLDAPPolicies - A property of type System.String, derived from + the directory attribute SupportedLDAPPolicies + - SupportedLDAPVersion - A property of type System.Int, derived from the + directory attribute SupportedLDAPVersion + - SupportedRootDSEOperations - A property of type + ADPropertyValueCollection, derived from the directory attribute + SupportedRootDSEOperations + - SupportedSASLMechanisms - A property of type System.String, derived from + the directory attribute SupportedSASLMechanisms + - Syncronized - A property of type System.Boolean, derived from the + directory attribute IsSynchronized. + - ADObject - Represents any object in Active Directory and is derived from + ADEntity. An ADObject may contain the following properties in addition to + those inherited from its parent. + - CanonicalName - A property of type System.String, derived from the + directory attribute: canonicalName + - CN - A property of type System.String, derived from the directory + attribute: cn + - Created - A property of type System.DateTime, derived from the directory + attribute: createTimeStamp + - Deleted - A property of type System.Boolean, derived from the directory + attribute: isDeleted + - Description - A property of type System.String, derived from the + directory attribute: description + - DisplayName - A property of type System.String, derived from the + directory attribute: displayName + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LastKnownParent - A property of type System.String, derived from the + directory attribute: lastKnownParent + - Modified - A property of type System.DateTime, derived from the directory + attribute: modifyTimeStamp + - Name - A property of type System.String, derived from the directory + attribute: name + - ObjectCategory - A property of type System.String, derived from the + directory attribute: objectCategory + - ObjectClass - A property of type System.String, derived from the + directory attribute: objectClass + - ObjectGUID - A property of type System.Guid, derived from the directory + attribute: objectGUID + - ProtectedFromAccidentalDeletion - A property of type System.Boolean, + derived from the directory attributes: nTSecurityDescriptor, + sdRightsEffective, instanceType, isDeleted + - ADFineGrainedPasswordPolicy Represents a fine grained password policy + object; that is, an AD object of type msDS-PasswordSettings in AD DS and + is derived from ADObject. This class is not supported by AD LDS. An + ADFineGrainedPasswordPolicy may contain the following properties in + addition to those inherited from its parent. + - AppliesTo - A property of type System.String, derived from the + directory attribute: msDS-PSOAppliesTo + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: msDS-PasswordComplexityEnabled + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: msDS-LockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: msDS-LockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: msDS-LockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MaximumPasswordAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MinimumPasswordAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: msDS-MinimumPasswordLength + - PasswordHistoryCount - A property of type System.Int32, derived from + the directory attribute: msDS-PasswordHistoryLength + - Precedence - A property of type System.Int32, derived from the + directory attribute: msDS-PasswordSettingsPrecedence + - ReversibleEncryptionEnabled - A property of type System.Boolean, + derived from the directory attribute: + msDS-PasswordReversibleEncryptionEnabled + - ADOptionalFeature Represents an optional feature, an Active Directory + object of type msDS-OptionalFeature, and is derived from ADObject. An + ADOptionalFeaturemay contain the following properties in addition to + those inherited from its parent. + - EnabledScopes - A property of type System.String, derived from the + directory attribute: msDS-EnabledFeatureBL + - FeatureGUID - A property of type System.Guid, derived from the + directory attribute: msDS-OptionalFeatureGUID + - FeatureScope - A property of type System.Int32, derived from the + directory attribute: msDS-OptionalFeatureFlags + - IsDisableable - A property of type System.Boolean, derived from the + directory attribute: msDS-OptionalFeatureFlags + - RequiredDomainMode - A property of type + Microsoft.ActiveDirectory.Management.ADDomainMode, derived from the + directory attribute: msDS-RequiredDomainBehaviorVersion + - RequiredForestMode - A property of type + Microsoft.ActiveDirectory.Management.ADForestMode, derived from the + directory attribute: msDS-RequiredForestBehaviorVersion + - ADOrganizationalUnit Represents an organizationalUnit (OU) object and is + derived from ADObject. An ADOrganizationalUnit may contain the following + properties in addition to those inherited from its parent. + - City - A property of type System.String, derived from the directory + attribute: l + - Country - A property of type System.String, derived from the directory + attribute: c + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: gpLink. This property is not supported on + AD LDS. + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - State - A property of type System.String, derived from the directory + attribute: st + - StreetAddress - A property of type System.String, derived from the + directory attribute: street + - ADPartition - Represents a naming context, Configuration, Schema, Domain + or Application Partition(ND NC) and is derived from ADObject. This class + is not supported by AD LDS. An ADPartition may contain the following + properties in addition to those inherited from its parent. + - DeletedObjectsContainer - A property of type System.String, derived + from the directory attribute: DeletedObjectsContainer + - DNSRoot - A property of type System.String, derived from the directory + attribute: DNSRoot + - LostAndFoundContainer - A property of type System.String, derived from + the directory attribute: LostAndFoundContainer + - QuotasContainer - A property of type System.String, derived from the + directory attribute: QuotasContainer + - ReadOnlyReplicaDirectoryServers - A property of type System.String, + derived from the directory attribute: ReadOnlyReplicaDirectoryServers + - ReplicaDirectoryServers - A property of type System.String, derived + from the directory attribute: ReplicaDirectoryServers + - SubordinateReferences - A property of type System.String, derived from + the directory attribute: SubordinateReferences + - ADDomain - Represents a domain in AD DS or an instance in AD LDS; for + example, an Active Directory object of type domainDNS and is derived + from ADPartition. This class is not supported by AD LDS. An ADDomain + may contain the following properties in addition to those inherited + from its parent. + - AllowedDNSSuffixes - A property of type System.String, derived from + the directory attribute: msDS-AllowedDNSSuffixes + - ChildDomains - A property of type System.String, derived from the + directory attribute: ChildDomains + - ComputersContainer - A property of type System.String, derived from + the directory attribute: ComputersContainer + - DomainControllersContainer - A property of type System.String, + derived from the directory attribute: DomainControllersContainer + - DomainMode - A property of type System.Int32, derived from the + directory attribute: msDS-Behavior-Version + - DomainSID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - ForeignSecurityPrincipalsContainer - A property of type + System.String, derived from the directory attribute: + ForeignSecurityPrincipalsContainer + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - InfrastructureMaster - A property of type System.String, derived from + the directory attribute: InfrastructureMaster + - LastLogonReplicationInterval - A property of type System.TimeSpan, + derived from the directory attribute: msDS-LogonTimeSyncInterval + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: LinkedGroupPolicyObjects + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - NetBIOSName - A property of type System.String, derived from the + directory attribute: NetBIOSName + - ParentDomain - A property of type System.String, derived from the + directory attribute: ParentDomain + - PDCEmulator - A property of type System.String, derived from the + directory attribute: PDCEmulator + - RIDMaster - A property of type System.String, derived from the + directory attribute: RIDMaster + - SystemsContainer - A property of type System.String, derived from the + directory attribute: SystemsContainer + - UsersContainer - A property of type System.String, derived from the + directory attribute: UsersContainer + - ADPrincipal - Represents a security principal, which is an Active + Directory object of type user, computer, group or iNetOrgPerson and is + derived from ADObject. An ADPrincipal may contain the following + properties in addition to those inherited from its parent. + - HomePage - A property of type System.String, derived from the + directory attribute: wWWHomePage + - MemberOf - A property of type System.String, derived from the + directory attribute: memberOf + - SamAccountName - A property of type System.String, derived from the + directory attribute: sAMAccountName. This property is not supported + for AD LDS. + - SID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - SIDHistory - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: sIDHistory. This property is not supported for + AD LDS. + - ADAccount - Represents a security account; that is, an Active + Directory object of type user, computer or iNetOrgPerson and is + derived from ADPrincipal. An ADAccount may contain the following + properties in addition to those inherited from its parent. + - AccountExpirationDate - A property of type System.DateTime, derived + from the directory attribute: accountExpires + - AccountLockoutTime - A property of type System.DateTime, derived + from the directory attribute: lockoutTime + - AccountNotDelegated - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - AllowReversiblePasswordEncryption - A property of type + System.Boolean, for AD DS it is derived from the directory + attribute: userAccountControl; for AD LDS it is derived from the + directory attribute: ms-DS-UserEncryptedTextPasswordAllowed + - BadLogonCount - A property of type System.Int32, derived from the + directory attribute: badPwdCount + - CannotChangePassword - A property of type System.Boolean, derived + from the directory attribute: nTSecurityDescriptor + - Certificates - A property of type + System.Security.Cryptography.X509Certificates.X509Certificate, + derived from the directory attribute: userCertificate + - DoesNotRequirePreAuth - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - Enabled - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserAccountDisabled + - HomedirRequired - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - LastBadPasswordAttempt - A property of type System.DateTime, + derived from the directory attribute: badPasswordTime + - LastLogonDate - A property of type System.DateTime, derived from + the directory attribute: lastLogonTimestamp + - LockedOut - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed, lockoutTime; for AD LDS it is + derived from the directory attribute msDS-UserAccountDisabled + - MNSLogonAccount - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - PasswordExpired - A property of type System.Boolean, for AD DS it + is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserPasswordExpired + - PasswordLastSet - A property of type System.DateTime, derived from + the directory attribute: pwdLastSet + - PasswordNeverExpires - A property of type System.Boolean, for AD + LDS it is derived from the directory attributes: + userAccountControl, msDS-User-Account-Control-Computed; for AD LDS + it is derived from the directory attribute: + msDS-UserDontExpirePassword + - PasswordNotRequired - A property of type System.Boolean, for AD DS + it is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute: ms-DS-UserPasswordNotRequired + - PrimaryGroup - A property of type System.String, derived from the + directory attributes: primaryGroupID, objectSid. This property is + not supported by AD LDS. + - ServicePrincipalNames - A property of type System.String, derived + from the directory attribute: servicePrincipalName. This property + is not supported by AD LDS. + - TrustedForDelegation - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - TrustedToAuthForDelegation - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UseDESKeyOnly - A property of type System.Boolean, derived from the + directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UserPrincipalName - A property of type System.String, derived from + the directory attribute: userPrincipalName + - ADComputer - Represents a computer and is derived from ADAccount. + An ADComputer may contain the following properties in addition to + those inherited from its parent. + - DNSHostName - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv4Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - Location - A property of type System.String, derived from the + directory attribute: location + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - OperatingSystem - A property of type System.String, derived from + the directory attribute: operatingSystem + - OperatingSystemHotfix - A property of type System.String, derived + from the directory attribute: operatingSystemHotfix + - OperatingSystemServicePack - A property of type System.String, + derived from the directory attribute: operatingSystemServicePack + - OperatingSystemVersion - A property of type System.String, + derived from the directory attribute: operatingSystemVersion + - ServiceAccount - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccount + - ADServiceAccount - Represents a managed service account; that is, + an Active Directory object of type msDS-ManagerdServiceAccount and + is derived from ADAccount. This class is not supported by AD LDS. + An ADServiceAccount may contain the following properties in + addition to those inherited from its parent. + - HostComputers - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccountBL + - ADUser - Represents a user (or iNetOrgPerson) and is derived from + ADAccount. An ADUser may contain the following properties in + addition to those inherited from its parent. + - City - A property of type System.String, derived from the + directory attribute: l + - Company - A property of type System.String, derived from the + directory attribute: company + - Country - A property of type System.String, derived from the + directory attribute: c + - Department - A property of type System.String, derived from the + directory attribute: department + - Division - A property of type System.String, derived from the + directory attribute: division + - EmailAddress - A property of type System.String, derived from the + directory attribute: mail + - EmployeeID - A property of type System.String, derived from the + directory attribute: employeeID + - EmployeeNumber - A property of type System.String, derived from + the directory attribute: employeeNumber + - Fax - A property of type System.String, derived from the + directory attribute: facsimileTelephoneNumber + - GivenName - A property of type System.String, derived from the + directory attribute: givenName + - HomeDirectory - A property of type System.String, derived from + the directory attribute: homeDirectory. This property is not + supported by AD LDS. + - HomeDrive - A property of type System.String, derived from the + directory attribute: homeDrive. This property is not supported by + AD LDS. + - HomePhone - A property of type System.String, derived from the + directory attribute: homePhone + - Initials - A property of type System.String, derived from the + directory attribute: initials + - LogonWorkstations - A property of type System.String, derived + from the directory attribute: userWorkstations. This property is + not supported by AD LDS. + - Manager - A property of type System.String, derived from the + directory attribute: manager + - MobilePhone - A property of type System.String, derived from the + directory attribute: mobile + - Office - A property of type System.String, derived from the + directory attribute: physicalDeliveryOfficeName + - OfficePhone - A property of type System.String, derived from the + directory attribute: telephoneNumber + - Organization - A property of type System.String, derived from the + directory attribute: o + - OtherName - A property of type System.String, derived from the + directory attribute: middleName + - POBox - A property of type System.String, derived from the + directory attribute: postOfficeBox + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - ProfilePath - A property of type System.String, derived from the + directory attribute: profilePath. This property is not supported + by AD LDS. + - ScriptPath - A property of type System.String, derived from the + directory attribute: scriptPath. This property is not supported + by AD LDS. + - SmartcardLogonRequired - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not + supported by AD LDS. + - State - A property of type System.String, derived from the + directory attribute: st + - StreetAddress - A property of type System.String, derived from + the directory attribute: streetAddress + - Surname - A property of type System.String, derived from the + directory attribute: sn + - Title - A property of type System.String, derived from the + directory attribute: title + - ADGroup -Represents a group and is derived from ADPrincipal. An + ADGroup may contain the following properties in addition to those + inherited from its parent. + - GroupCategory - A property of type + Microsoft.ActiveDirectory.Management.ADGroupCategory, derived from + the directory attribute: groupType + - GroupScope - A property of type + Microsoft.ActiveDirectory.Management.ADGroupScope, derived from the + directory attribute: groupType + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - Members - A property of type System.String, derived from the + directory attribute: member + - ADDefaultDomainPasswordPolicy - Represents the domain-wide password policy + of an Active Directory domain and is derived from ADEntity. This class is + not supported by AD LDS. An ADDefaultDomainPasswordPolicy may contain the + following properties in addition to those inherited from its parent. + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: pwdProperties + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: lockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: lockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: lockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: maxPwdAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: minPwdAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: minPwdLength + - PasswordHistoryCount - A property of type System.Int32, derived from the + directory attribute: pwdHistoryLength + - ReversibleEncryptionEnabled - A property of type System.Boolean, derived + from the directory attribute: pwdProperties + - ADForest - Represents a Active Directory forest in AD DS or a Configuration + Set in AD LDS and is derived from ADEntity. This class is not supported by + AD LDS. An ADForest may contain the following properties in addition to + those inherited from its parent. + - ApplicationPartitions - A property of type System.String, derived from + the directory attribute: ApplicationPartitions + - CrossForestReferences - A property of type System.String, derived from + the directory attribute: CrossForestReferences + - DomainNamingMaster - A property of type System.String, derived from the + directory attribute: DomainNamingMaster + - Domains - A property of type System.String, derived from the directory + attribute: Domains + - ForestMode - A property of type System.Int32, derived from the directory + attribute: msDS-Behavior-Version + - GlobalCatalogs - A property of type System.String, derived from the + directory attribute: GlobalCatalogs + - Name - A property of type System.String, derived from the directory + attribute: name + - PartitionContainerName - A property of type System.String, derived from + the directory attribute: distinguishedName + - RootDomain - A property of type System.String, derived from the directory + attribute: RootDomain + - SchemaMaster - A property of type System.String, derived from the + directory attribute: SchemaMaster + - Sites - A property of type System.String, derived from the directory + attribute: Sites + - SPNSuffixes - A property of type System.String, derived from the + directory attribute: msDS-SPNSuffixes + - UPNSuffixes - A property of type System.String, derived from the + directory attribute: uPNSuffixes + - ADDirectoryServer - Represents a directory server used as either a domain + controller or an AD LDS instance and is derived from ADEntity. An + ADDirectoryServer may contain the following properties in addition to those + inherited from its parent. + - DefaultPartition - A property of type System.String, derived from the + directory attribute: DefaultPartition + - HostName - A property of type System.String, derived from the directory + attribute: HostName + - InvocationId - A property of type System.Guid, derived from the directory + attribute: InvocationId + - IPv4Address - A property of type System.String, derived from the + directory attribute: HostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: HostName + - LdapPort - A property of type System.Int32, derived from the directory + attribute: LdapPort + - Name - A property of type System.String, derived from the directory + attribute: Name + - NTDSSettingsObjectDN - A property of type System.String, derived from the + directory attribute: NTDSSettingsObjectDN + - OperationMasterRoles - A property of type + Microsoft.ActiveDirectory.Management.ADOperationMasterRole, derived from + the directory attribute: OperationMasterRole + - Partitions - A property of type System.String, derived from the directory + attribute: Partitions + - ServerObjectDN - A property of type System.String, derived from the + directory attribute: ServerObjectDN + - ServerObjectGuid - A property of type System.Guid, derived from the + directory attribute: ServerObjectGuid + - Site - A property of type System.String, derived from the directory + attribute: Site + - SslPort - A property of type System.Int32, derived from the directory + attribute: SslPort + - ADDomainController - Represents a domain controller in AD DS and is + derived from ADDirectoryServer. An ADDomainController may contain the + following properties in addition to those inherited from its parent. + - ComputerObjectDN - A property of type System.String, derived from the + directory attribute: ComputerDN + - Domain - A property of type System.String, derived from the directory + attribute: Domain + - Enabled - A property of type System.Boolean, derived from the directory + attribute: Enabled + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - IsGlobalCatalog - A property of type System.Boolean, derived from the + directory attribute: IsGlobalCatalog + - IsReadOnly - A property of type System.Boolean, derived from the + directory attribute: IsReadOnly + - OperatingSystem - A property of type System.String, derived from the + directory attribute: OSName + - OperatingSystemHotfix - A property of type System.String, derived from + the directory attribute: OSHotFix + - OperatingSystemServicePack - A property of type System.String, derived + from the directory attribute: OSServicepack + - OperatingSystemVersion - A property of type System.String, derived from + the directory attribute: OSVersion diff --git a/docset/winserver2022-ps/activedirectory/About/About.md b/docset/winserver2022-ps/activedirectory/About/About.md index adc76085b9..449df28850 100644 --- a/docset/winserver2022-ps/activedirectory/About/About.md +++ b/docset/winserver2022-ps/activedirectory/About/About.md @@ -2,7 +2,7 @@ description: About articles for the ActiveDirectory module. Help Version: 3.1.0.0 Locale: en-US -ms.date: 04/22/2013 +ms.date: 07/03/2024 title: About articles --- # About topics @@ -13,5 +13,14 @@ About topics cover a range of concepts about PowerShell. ## About Topics +### [about_ActiveDirectory](about_ActiveDirectory.md) +The Active Directory module is a command line interface for managing Active Directory. + ### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. + +### [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md) +The Active Directory module for Windows PowerShell objects have a range of identifying attributes that are used for search and retrieval. + +### [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md) +Describes the object model of the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory.md b/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory.md new file mode 100644 index 0000000000..1b7183dcd2 --- /dev/null +++ b/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory.md @@ -0,0 +1,81 @@ +--- +title: about_ActiveDirectory +ms.date: 04/22/2013 +description: The Active Directory module is a command line interface for managing Active Directory. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory + +## SHORT DESCRIPTION + +The Active Directory module is a command line interface for managing Active +Directory. + +## LONG DESCRIPTION + +The Active Directory module for Windows PowerShell is for IT Professionals who +are administering and interfacing with Active Directory. The Active Directory +module provides an efficient way to complete many administrative, +configuration, and diagnostic tasks across Active Directory Domain Services (AD +DS) and Active Directory Lightweight Directory Services (AD LDS) instances in +their environments. The Active Directory module includes a set of Windows +PowerShell cmdlets and a provider. The provider exposes the Active Directory +database through a hierarchical navigation system, which is very similar to the +file system. As with drives in a file system, such as C:, you can connect +Windows PowerShell drives to Active Directory domains and AD LDS, as well as +Active Directory snapshots. + +### Coverage of Active Directory Module Cmdlets + +Create, Read, Update, and Delete actions are supported for Active Directory +objects by cmdlets such as `New-ADUser`, `Get-ADOrganizationalUnit`, +`Set-ADComputer`, and `Remove-ADUser`. + +Account and Password Policy Management are supported by cmdlets such as +`Enable-ADAccount`, `Unlock-ADAccount`, `New-ADServiceAccount`, +`Set-ADAccountControl`, and `Remove-ADFineGrainedPasswordPolicy`. + +Domain and Forest Management is supported by cmdlets such as `Get-ADForest`, +`Set-ADForest`, `Set-ADForestMode`, `Enable-ADOptionalFeature`, +`Get-ADDomainController`, and `Get-ADDomain`. + +### Listing the Active Directory Module Cmdlets + +To get a list of all of the Active Directory module cmdlets, run + +```powershell +Get-Command -Module ActiveDirectory +``` + +### Getting Started + +Getting started with the Active Directory module for Windows PowerShell is as +easy as clicking the following shortcut: + +Run the following command in any Windows PowerShell prompt to import the Active +Directory module: + +```powershell +Import-Module ActiveDirectory +``` + +### Overview and Conceptual Topics + +The first two of these topics offer a high level overview of the Active +Directory module and the Active Directory Provider. + +- For a brief introduction to the Active Directory provider for Windows + PowerShell, see [ActiveDirectory](/powershell/module/activedirectory). +- The following topics are conceptual support topics for the Active Directory + module cmdlets. + - For an introduction to the **Identity** parameter, which is used by the + Active Directory module cmdlets to identify objects in the directory, see + [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md). + - For an introduction to the **Filter** parameter which is used by Active + Directory module cmdlets to search for objects in the directory, see + [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md). + - For an introduction to the .NET Framework-based object model implemented by + the Active Directory module, see + [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). diff --git a/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_Identity.md b/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_Identity.md new file mode 100644 index 0000000000..c007277b19 --- /dev/null +++ b/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_Identity.md @@ -0,0 +1,196 @@ +--- +title: about_ActiveDirectory_Identity +ms.date: 04/22/2013 +description: This article lists the identifying attributes that are used for search and retrieval supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Identity + +## SHORT DESCRIPTION + +The Active Directory module for Windows PowerShell objects have a range of +identifying attributes that are used for search and retrieval. + +## LONG DESCRIPTION + +In order to identify the objects in Active Directory, each object has +attributes that can be used as identifiers. In the Active Directory module, the +value of the identity of an object can be passed using the Identity parameter. +Each object type has its own set of possible types and values for use by the +Identity parameter. See the detailed description of the Identity parameter of +the given cmdlet for more information about its usage. + +When searching with the Active Directory module cmdlets, the value of the +Identity parameter, along with the values of the Server and Partition +parameters, is used to uniquely identify a single object. The Server parameter +is used to locate which server to connect with. The Partition parameter further +narrows the search to a specific partition. The Identity parameter then +resolves to a single unique object in the partition. + +Note that using the Security Accounts Manager (SAM) Account Name +(**sAMAccountName**) when targeting a global catalog port, you will not find a +user in a different domain if you are using the Identity parameter + +If more than one object is found using identity resolution, the Active +Directory module throws an error. + +For more information about the Server and Partition parameters, see the help +topics for the individual cmdlets where they are used, such as `Get-ADUser`, by +typing: + +```powershell +Get-Help Get-ADUser +``` + +### Objects and Identities + +Each object has a list of attributes that can be used as an identity for that +object. Additionally, if the object inherits from another object, then the +parent object's identities can also be used as the child object's identities. +For more information on the Active Directory object hierarchy, see +[about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). + +> [!NOTE] +> For Active Directory Provider cmdlets, only an object's 'Distinguished Name' +> or 'Relative Distinguished Name' can be used as the identity. For a list of +> Active Directory Provider cmdlets, see ActiveDirectory. + +### Identity Attributes + +The following is a list of identity attributes by object type. + +- ADAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADComputer + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager Account Name (sAMAccountName) + +- ADDirectoryServer + - Name of the server object (name) + - For AD LDS instances the syntax of a name is `$` + - For other Active Directory instances, use the value of the name property. + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the directory + server. + - GUID (objectGUID) of server object under the configuration partition. + - GUID (objectGUID) of NTDS settings object under the configuration partition + +- ADDomain + - Distinguished Name + - GUID + - Security Identifier + - DNS domain name + - NetBIOS domain name + +- ADDomainController + - GUID (objectGUID) + - IPV4Address + - Global IPV6Address + - DNS Host Name (dNSHostName) + - Name of the server object + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the domain controller + - GUID of NTDS settings object under the configuration partition + - GUID of server object under the configuration partition + - Distinguished Name of the computer object that represents the domain controller. + +- ADFineGrainedPasswordPolicy + - Distinguished Name + - GUID (objectGUID) + - Name (name) + +- ADForest + - Fully qualified domain name + - DNS host name + - NetBIOS name + +- ADGroup + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager (SAM) Account Name (sAMAccountName) + +- ADObject + - Distinguished Name + - GUID (objectGUID) + +- ADOptionalFeature + - Distinguished Name + - Name (name) + - Feature GUID (featureGUID) + - GUID (objectGUID) + +- ADOrganizationalUnit + - Distinguished Name + - GUID (objectGUID) + +- ADPrincipal + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADServiceAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADUser + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM User Name (sAMUserName) + + +### Identities Formats + +Active Directory module objects have a range of identity attributes. Below is a +list of these, their types and formats. + +- Distinguished Name + - Example: CN=SaraDavis,CN=Europe,CN=Users, DC=corp,DC=contoso,DC=com + +- DNS domain name + - Example: redmond.corp.contoso.com + +- DNS Host Name (dNSHostName) + - Example: corp-DC01.corp.contoso.com + +- Feature GUID (featureGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- Fully qualified domain name + - Example: corp.contoso.com + +- Global IPV6Address + - Example: 2001:4898:0:fff:200:5efe:157.59.132.61 + +- GUID (objectGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- IPV4Address + - Example:157.59.132.61 + +- NetBIOS domain name + - Example: redmond + +- Name of the server object + - Example: corp-DC01$ + +- SAM Account Name (sAMAccountName) + - Example: saradavisreports + +- Security Identifier (objectSid) + - Example: S-1-5-21-3165297888-301567370-576410423-1103 + +- Name + - Example: Recycle Bin Feature diff --git a/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md b/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md new file mode 100644 index 0000000000..8535a97464 --- /dev/null +++ b/docset/winserver2022-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md @@ -0,0 +1,595 @@ +--- +title: about_ActiveDirectory_ObjectModel +ms.date: 04/22/2013 +description: Describes the object model of the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_ObjectModel + +## SHORT DESCRIPTION +Describes the object model of the Active Directory module for Windows +PowerShell. + +## LONG DESCRIPTION + +This topic explains the Active Directory module classes and their properties +used to model actual Active Directory attributes. It also outlines the class +hierarchy constructed from its Active Directory counterpart. The object model +establishes a data foundation for all the operations supported by Active +Directory module cmdlets. + +### Class Hierarchy + +The following list shows the class hierarchy defined in the Active Directory +module object model, with class inheritance implied by indentation. This +inheritance model allows for Active Directory cmdlets to accept a range of +object types as input. This means, for example, that the cmdlet +Get-ADPrincipalGroupMembership can accept as input any of the following +objects: ADGroup, ADAccount, ADComputer, ADServiceAccount or ADUser. This works +because of the inheritance model and guarantees that an ADUser object has all +of the properties of an ADPrincipal object. + +``` +ADEntity + ADRootDSE + ADObject + ADFineGrainedPasswordPolicy + ADOptionalFeature + ADOrganizationalUnit + ADPartition + ADDomain + ADPrincipal + ADAccount + ADComputer + ADServiceAccount + ADUser + ADGroup + ADDefaultDomainPasswordPolicy + ADForest + ADDirectoryServer + ADDomainController +``` + +### Active Directory Module Classes + +The following listing shows every Active Directory module class from the class +hierarchy listing. Each class defines a set of properties, some of which are +LDAP attributes that are retrieved by default and some are new properties +created specifically for the Active Directory module. These new properties are +derived from one or more LDAP attributes as outlined in the class listings. + + +- ADEntity - The base level class from which all other classes are derived. + - ADRootDSE - Represents the rootDSE and is derived from ADEntity. An + ADRootDSE may contain the following properties in addition to those + inherited from its parent. + - ConfigurationNamingContext - A property of type System.String, derived + from the directory attribute ConfigurationNamingContext + - CurrentTime - A property of type System.DateTime, derived from the + directory attribute CurrentTime + - DefaultNamingContext - A property of type System.String, derived from the + directory attribute DefaultNamingContext + - DnsHostName - A property of type System.String, derived from the + directory attribute DnsHostName + - DomainControllerFunctionality - A property of type + ADDomainControllerMode, derived from the directory attribute + DomainControllerFunctionality + - DomainFunctionality - A property of type ADDomainMode, derived from the + directory attribute DomainFunctionality + - DsServiceName - A property of type System.String, derived from the + directory attribute DsServiceName + - ForestFunctionality - A property of type ADForestMode, derived from the + directory attribute ForestFunctionality + - GlobalCatalogReady - A property of type System.Boolean, derived from the + directory attribute GlobalCatalogReady + - HighestCommittedUSN - A property of type System.Long, derived from the + directory attribute HighestCommittedUSN + - LdapServiceName - A property of type System.String, derived from the + directory attribute LdapServiceName + - NamingContexts - A property of type System.String, derived from the + directory attribute NamingContexts + - RootDomainNamingContext - A property of type System.String, derived from + the directory attribute RootDomainNamingContext + - SchemaNamingContext - A property of type System.String, derived from the + directory attribute SchemaNamingContext + - ServerName - A property of type System.String, derived from the directory + attribute ServerName + - SubschemaSubentry - A property of type ADObject, derived from the + directory attribute SubschemaSubentry + - SupportedCapabilities - A property of type ADObjectIdentifier, derived + from the directory attribute SupportedCapabilities + - SupportedControl - A property of type ADObjectIdentifier, derived from + the directory attribute SupportedControl + - SupportedLDAPPolicies - A property of type System.String, derived from + the directory attribute SupportedLDAPPolicies + - SupportedLDAPVersion - A property of type System.Int, derived from the + directory attribute SupportedLDAPVersion + - SupportedRootDSEOperations - A property of type + ADPropertyValueCollection, derived from the directory attribute + SupportedRootDSEOperations + - SupportedSASLMechanisms - A property of type System.String, derived from + the directory attribute SupportedSASLMechanisms + - Syncronized - A property of type System.Boolean, derived from the + directory attribute IsSynchronized. + - ADObject - Represents any object in Active Directory and is derived from + ADEntity. An ADObject may contain the following properties in addition to + those inherited from its parent. + - CanonicalName - A property of type System.String, derived from the + directory attribute: canonicalName + - CN - A property of type System.String, derived from the directory + attribute: cn + - Created - A property of type System.DateTime, derived from the directory + attribute: createTimeStamp + - Deleted - A property of type System.Boolean, derived from the directory + attribute: isDeleted + - Description - A property of type System.String, derived from the + directory attribute: description + - DisplayName - A property of type System.String, derived from the + directory attribute: displayName + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LastKnownParent - A property of type System.String, derived from the + directory attribute: lastKnownParent + - Modified - A property of type System.DateTime, derived from the directory + attribute: modifyTimeStamp + - Name - A property of type System.String, derived from the directory + attribute: name + - ObjectCategory - A property of type System.String, derived from the + directory attribute: objectCategory + - ObjectClass - A property of type System.String, derived from the + directory attribute: objectClass + - ObjectGUID - A property of type System.Guid, derived from the directory + attribute: objectGUID + - ProtectedFromAccidentalDeletion - A property of type System.Boolean, + derived from the directory attributes: nTSecurityDescriptor, + sdRightsEffective, instanceType, isDeleted + - ADFineGrainedPasswordPolicy Represents a fine grained password policy + object; that is, an AD object of type msDS-PasswordSettings in AD DS and + is derived from ADObject. This class is not supported by AD LDS. An + ADFineGrainedPasswordPolicy may contain the following properties in + addition to those inherited from its parent. + - AppliesTo - A property of type System.String, derived from the + directory attribute: msDS-PSOAppliesTo + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: msDS-PasswordComplexityEnabled + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: msDS-LockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: msDS-LockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: msDS-LockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MaximumPasswordAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MinimumPasswordAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: msDS-MinimumPasswordLength + - PasswordHistoryCount - A property of type System.Int32, derived from + the directory attribute: msDS-PasswordHistoryLength + - Precedence - A property of type System.Int32, derived from the + directory attribute: msDS-PasswordSettingsPrecedence + - ReversibleEncryptionEnabled - A property of type System.Boolean, + derived from the directory attribute: + msDS-PasswordReversibleEncryptionEnabled + - ADOptionalFeature Represents an optional feature, an Active Directory + object of type msDS-OptionalFeature, and is derived from ADObject. An + ADOptionalFeaturemay contain the following properties in addition to + those inherited from its parent. + - EnabledScopes - A property of type System.String, derived from the + directory attribute: msDS-EnabledFeatureBL + - FeatureGUID - A property of type System.Guid, derived from the + directory attribute: msDS-OptionalFeatureGUID + - FeatureScope - A property of type System.Int32, derived from the + directory attribute: msDS-OptionalFeatureFlags + - IsDisableable - A property of type System.Boolean, derived from the + directory attribute: msDS-OptionalFeatureFlags + - RequiredDomainMode - A property of type + Microsoft.ActiveDirectory.Management.ADDomainMode, derived from the + directory attribute: msDS-RequiredDomainBehaviorVersion + - RequiredForestMode - A property of type + Microsoft.ActiveDirectory.Management.ADForestMode, derived from the + directory attribute: msDS-RequiredForestBehaviorVersion + - ADOrganizationalUnit Represents an organizationalUnit (OU) object and is + derived from ADObject. An ADOrganizationalUnit may contain the following + properties in addition to those inherited from its parent. + - City - A property of type System.String, derived from the directory + attribute: l + - Country - A property of type System.String, derived from the directory + attribute: c + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: gpLink. This property is not supported on + AD LDS. + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - State - A property of type System.String, derived from the directory + attribute: st + - StreetAddress - A property of type System.String, derived from the + directory attribute: street + - ADPartition - Represents a naming context, Configuration, Schema, Domain + or Application Partition(ND NC) and is derived from ADObject. This class + is not supported by AD LDS. An ADPartition may contain the following + properties in addition to those inherited from its parent. + - DeletedObjectsContainer - A property of type System.String, derived + from the directory attribute: DeletedObjectsContainer + - DNSRoot - A property of type System.String, derived from the directory + attribute: DNSRoot + - LostAndFoundContainer - A property of type System.String, derived from + the directory attribute: LostAndFoundContainer + - QuotasContainer - A property of type System.String, derived from the + directory attribute: QuotasContainer + - ReadOnlyReplicaDirectoryServers - A property of type System.String, + derived from the directory attribute: ReadOnlyReplicaDirectoryServers + - ReplicaDirectoryServers - A property of type System.String, derived + from the directory attribute: ReplicaDirectoryServers + - SubordinateReferences - A property of type System.String, derived from + the directory attribute: SubordinateReferences + - ADDomain - Represents a domain in AD DS or an instance in AD LDS; for + example, an Active Directory object of type domainDNS and is derived + from ADPartition. This class is not supported by AD LDS. An ADDomain + may contain the following properties in addition to those inherited + from its parent. + - AllowedDNSSuffixes - A property of type System.String, derived from + the directory attribute: msDS-AllowedDNSSuffixes + - ChildDomains - A property of type System.String, derived from the + directory attribute: ChildDomains + - ComputersContainer - A property of type System.String, derived from + the directory attribute: ComputersContainer + - DomainControllersContainer - A property of type System.String, + derived from the directory attribute: DomainControllersContainer + - DomainMode - A property of type System.Int32, derived from the + directory attribute: msDS-Behavior-Version + - DomainSID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - ForeignSecurityPrincipalsContainer - A property of type + System.String, derived from the directory attribute: + ForeignSecurityPrincipalsContainer + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - InfrastructureMaster - A property of type System.String, derived from + the directory attribute: InfrastructureMaster + - LastLogonReplicationInterval - A property of type System.TimeSpan, + derived from the directory attribute: msDS-LogonTimeSyncInterval + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: LinkedGroupPolicyObjects + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - NetBIOSName - A property of type System.String, derived from the + directory attribute: NetBIOSName + - ParentDomain - A property of type System.String, derived from the + directory attribute: ParentDomain + - PDCEmulator - A property of type System.String, derived from the + directory attribute: PDCEmulator + - RIDMaster - A property of type System.String, derived from the + directory attribute: RIDMaster + - SystemsContainer - A property of type System.String, derived from the + directory attribute: SystemsContainer + - UsersContainer - A property of type System.String, derived from the + directory attribute: UsersContainer + - ADPrincipal - Represents a security principal, which is an Active + Directory object of type user, computer, group or iNetOrgPerson and is + derived from ADObject. An ADPrincipal may contain the following + properties in addition to those inherited from its parent. + - HomePage - A property of type System.String, derived from the + directory attribute: wWWHomePage + - MemberOf - A property of type System.String, derived from the + directory attribute: memberOf + - SamAccountName - A property of type System.String, derived from the + directory attribute: sAMAccountName. This property is not supported + for AD LDS. + - SID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - SIDHistory - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: sIDHistory. This property is not supported for + AD LDS. + - ADAccount - Represents a security account; that is, an Active + Directory object of type user, computer or iNetOrgPerson and is + derived from ADPrincipal. An ADAccount may contain the following + properties in addition to those inherited from its parent. + - AccountExpirationDate - A property of type System.DateTime, derived + from the directory attribute: accountExpires + - AccountLockoutTime - A property of type System.DateTime, derived + from the directory attribute: lockoutTime + - AccountNotDelegated - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - AllowReversiblePasswordEncryption - A property of type + System.Boolean, for AD DS it is derived from the directory + attribute: userAccountControl; for AD LDS it is derived from the + directory attribute: ms-DS-UserEncryptedTextPasswordAllowed + - BadLogonCount - A property of type System.Int32, derived from the + directory attribute: badPwdCount + - CannotChangePassword - A property of type System.Boolean, derived + from the directory attribute: nTSecurityDescriptor + - Certificates - A property of type + System.Security.Cryptography.X509Certificates.X509Certificate, + derived from the directory attribute: userCertificate + - DoesNotRequirePreAuth - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - Enabled - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserAccountDisabled + - HomedirRequired - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - LastBadPasswordAttempt - A property of type System.DateTime, + derived from the directory attribute: badPasswordTime + - LastLogonDate - A property of type System.DateTime, derived from + the directory attribute: lastLogonTimestamp + - LockedOut - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed, lockoutTime; for AD LDS it is + derived from the directory attribute msDS-UserAccountDisabled + - MNSLogonAccount - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - PasswordExpired - A property of type System.Boolean, for AD DS it + is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserPasswordExpired + - PasswordLastSet - A property of type System.DateTime, derived from + the directory attribute: pwdLastSet + - PasswordNeverExpires - A property of type System.Boolean, for AD + LDS it is derived from the directory attributes: + userAccountControl, msDS-User-Account-Control-Computed; for AD LDS + it is derived from the directory attribute: + msDS-UserDontExpirePassword + - PasswordNotRequired - A property of type System.Boolean, for AD DS + it is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute: ms-DS-UserPasswordNotRequired + - PrimaryGroup - A property of type System.String, derived from the + directory attributes: primaryGroupID, objectSid. This property is + not supported by AD LDS. + - ServicePrincipalNames - A property of type System.String, derived + from the directory attribute: servicePrincipalName. This property + is not supported by AD LDS. + - TrustedForDelegation - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - TrustedToAuthForDelegation - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UseDESKeyOnly - A property of type System.Boolean, derived from the + directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UserPrincipalName - A property of type System.String, derived from + the directory attribute: userPrincipalName + - ADComputer - Represents a computer and is derived from ADAccount. + An ADComputer may contain the following properties in addition to + those inherited from its parent. + - DNSHostName - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv4Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - Location - A property of type System.String, derived from the + directory attribute: location + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - OperatingSystem - A property of type System.String, derived from + the directory attribute: operatingSystem + - OperatingSystemHotfix - A property of type System.String, derived + from the directory attribute: operatingSystemHotfix + - OperatingSystemServicePack - A property of type System.String, + derived from the directory attribute: operatingSystemServicePack + - OperatingSystemVersion - A property of type System.String, + derived from the directory attribute: operatingSystemVersion + - ServiceAccount - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccount + - ADServiceAccount - Represents a managed service account; that is, + an Active Directory object of type msDS-ManagerdServiceAccount and + is derived from ADAccount. This class is not supported by AD LDS. + An ADServiceAccount may contain the following properties in + addition to those inherited from its parent. + - HostComputers - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccountBL + - ADUser - Represents a user (or iNetOrgPerson) and is derived from + ADAccount. An ADUser may contain the following properties in + addition to those inherited from its parent. + - City - A property of type System.String, derived from the + directory attribute: l + - Company - A property of type System.String, derived from the + directory attribute: company + - Country - A property of type System.String, derived from the + directory attribute: c + - Department - A property of type System.String, derived from the + directory attribute: department + - Division - A property of type System.String, derived from the + directory attribute: division + - EmailAddress - A property of type System.String, derived from the + directory attribute: mail + - EmployeeID - A property of type System.String, derived from the + directory attribute: employeeID + - EmployeeNumber - A property of type System.String, derived from + the directory attribute: employeeNumber + - Fax - A property of type System.String, derived from the + directory attribute: facsimileTelephoneNumber + - GivenName - A property of type System.String, derived from the + directory attribute: givenName + - HomeDirectory - A property of type System.String, derived from + the directory attribute: homeDirectory. This property is not + supported by AD LDS. + - HomeDrive - A property of type System.String, derived from the + directory attribute: homeDrive. This property is not supported by + AD LDS. + - HomePhone - A property of type System.String, derived from the + directory attribute: homePhone + - Initials - A property of type System.String, derived from the + directory attribute: initials + - LogonWorkstations - A property of type System.String, derived + from the directory attribute: userWorkstations. This property is + not supported by AD LDS. + - Manager - A property of type System.String, derived from the + directory attribute: manager + - MobilePhone - A property of type System.String, derived from the + directory attribute: mobile + - Office - A property of type System.String, derived from the + directory attribute: physicalDeliveryOfficeName + - OfficePhone - A property of type System.String, derived from the + directory attribute: telephoneNumber + - Organization - A property of type System.String, derived from the + directory attribute: o + - OtherName - A property of type System.String, derived from the + directory attribute: middleName + - POBox - A property of type System.String, derived from the + directory attribute: postOfficeBox + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - ProfilePath - A property of type System.String, derived from the + directory attribute: profilePath. This property is not supported + by AD LDS. + - ScriptPath - A property of type System.String, derived from the + directory attribute: scriptPath. This property is not supported + by AD LDS. + - SmartcardLogonRequired - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not + supported by AD LDS. + - State - A property of type System.String, derived from the + directory attribute: st + - StreetAddress - A property of type System.String, derived from + the directory attribute: streetAddress + - Surname - A property of type System.String, derived from the + directory attribute: sn + - Title - A property of type System.String, derived from the + directory attribute: title + - ADGroup -Represents a group and is derived from ADPrincipal. An + ADGroup may contain the following properties in addition to those + inherited from its parent. + - GroupCategory - A property of type + Microsoft.ActiveDirectory.Management.ADGroupCategory, derived from + the directory attribute: groupType + - GroupScope - A property of type + Microsoft.ActiveDirectory.Management.ADGroupScope, derived from the + directory attribute: groupType + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - Members - A property of type System.String, derived from the + directory attribute: member + - ADDefaultDomainPasswordPolicy - Represents the domain-wide password policy + of an Active Directory domain and is derived from ADEntity. This class is + not supported by AD LDS. An ADDefaultDomainPasswordPolicy may contain the + following properties in addition to those inherited from its parent. + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: pwdProperties + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: lockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: lockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: lockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: maxPwdAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: minPwdAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: minPwdLength + - PasswordHistoryCount - A property of type System.Int32, derived from the + directory attribute: pwdHistoryLength + - ReversibleEncryptionEnabled - A property of type System.Boolean, derived + from the directory attribute: pwdProperties + - ADForest - Represents a Active Directory forest in AD DS or a Configuration + Set in AD LDS and is derived from ADEntity. This class is not supported by + AD LDS. An ADForest may contain the following properties in addition to + those inherited from its parent. + - ApplicationPartitions - A property of type System.String, derived from + the directory attribute: ApplicationPartitions + - CrossForestReferences - A property of type System.String, derived from + the directory attribute: CrossForestReferences + - DomainNamingMaster - A property of type System.String, derived from the + directory attribute: DomainNamingMaster + - Domains - A property of type System.String, derived from the directory + attribute: Domains + - ForestMode - A property of type System.Int32, derived from the directory + attribute: msDS-Behavior-Version + - GlobalCatalogs - A property of type System.String, derived from the + directory attribute: GlobalCatalogs + - Name - A property of type System.String, derived from the directory + attribute: name + - PartitionContainerName - A property of type System.String, derived from + the directory attribute: distinguishedName + - RootDomain - A property of type System.String, derived from the directory + attribute: RootDomain + - SchemaMaster - A property of type System.String, derived from the + directory attribute: SchemaMaster + - Sites - A property of type System.String, derived from the directory + attribute: Sites + - SPNSuffixes - A property of type System.String, derived from the + directory attribute: msDS-SPNSuffixes + - UPNSuffixes - A property of type System.String, derived from the + directory attribute: uPNSuffixes + - ADDirectoryServer - Represents a directory server used as either a domain + controller or an AD LDS instance and is derived from ADEntity. An + ADDirectoryServer may contain the following properties in addition to those + inherited from its parent. + - DefaultPartition - A property of type System.String, derived from the + directory attribute: DefaultPartition + - HostName - A property of type System.String, derived from the directory + attribute: HostName + - InvocationId - A property of type System.Guid, derived from the directory + attribute: InvocationId + - IPv4Address - A property of type System.String, derived from the + directory attribute: HostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: HostName + - LdapPort - A property of type System.Int32, derived from the directory + attribute: LdapPort + - Name - A property of type System.String, derived from the directory + attribute: Name + - NTDSSettingsObjectDN - A property of type System.String, derived from the + directory attribute: NTDSSettingsObjectDN + - OperationMasterRoles - A property of type + Microsoft.ActiveDirectory.Management.ADOperationMasterRole, derived from + the directory attribute: OperationMasterRole + - Partitions - A property of type System.String, derived from the directory + attribute: Partitions + - ServerObjectDN - A property of type System.String, derived from the + directory attribute: ServerObjectDN + - ServerObjectGuid - A property of type System.Guid, derived from the + directory attribute: ServerObjectGuid + - Site - A property of type System.String, derived from the directory + attribute: Site + - SslPort - A property of type System.Int32, derived from the directory + attribute: SslPort + - ADDomainController - Represents a domain controller in AD DS and is + derived from ADDirectoryServer. An ADDomainController may contain the + following properties in addition to those inherited from its parent. + - ComputerObjectDN - A property of type System.String, derived from the + directory attribute: ComputerDN + - Domain - A property of type System.String, derived from the directory + attribute: Domain + - Enabled - A property of type System.Boolean, derived from the directory + attribute: Enabled + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - IsGlobalCatalog - A property of type System.Boolean, derived from the + directory attribute: IsGlobalCatalog + - IsReadOnly - A property of type System.Boolean, derived from the + directory attribute: IsReadOnly + - OperatingSystem - A property of type System.String, derived from the + directory attribute: OSName + - OperatingSystemHotfix - A property of type System.String, derived from + the directory attribute: OSHotFix + - OperatingSystemServicePack - A property of type System.String, derived + from the directory attribute: OSServicepack + - OperatingSystemVersion - A property of type System.String, derived from + the directory attribute: OSVersion diff --git a/docset/winserver2025-ps/activedirectory/About/About.md b/docset/winserver2025-ps/activedirectory/About/About.md index adc76085b9..449df28850 100644 --- a/docset/winserver2025-ps/activedirectory/About/About.md +++ b/docset/winserver2025-ps/activedirectory/About/About.md @@ -2,7 +2,7 @@ description: About articles for the ActiveDirectory module. Help Version: 3.1.0.0 Locale: en-US -ms.date: 04/22/2013 +ms.date: 07/03/2024 title: About articles --- # About topics @@ -13,5 +13,14 @@ About topics cover a range of concepts about PowerShell. ## About Topics +### [about_ActiveDirectory](about_ActiveDirectory.md) +The Active Directory module is a command line interface for managing Active Directory. + ### [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md) Describes the syntax and behavior of the search filter supported by the Active Directory module for Windows PowerShell. + +### [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md) +The Active Directory module for Windows PowerShell objects have a range of identifying attributes that are used for search and retrieval. + +### [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md) +Describes the object model of the Active Directory module for Windows PowerShell. diff --git a/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory.md b/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory.md new file mode 100644 index 0000000000..1b7183dcd2 --- /dev/null +++ b/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory.md @@ -0,0 +1,81 @@ +--- +title: about_ActiveDirectory +ms.date: 04/22/2013 +description: The Active Directory module is a command line interface for managing Active Directory. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory + +## SHORT DESCRIPTION + +The Active Directory module is a command line interface for managing Active +Directory. + +## LONG DESCRIPTION + +The Active Directory module for Windows PowerShell is for IT Professionals who +are administering and interfacing with Active Directory. The Active Directory +module provides an efficient way to complete many administrative, +configuration, and diagnostic tasks across Active Directory Domain Services (AD +DS) and Active Directory Lightweight Directory Services (AD LDS) instances in +their environments. The Active Directory module includes a set of Windows +PowerShell cmdlets and a provider. The provider exposes the Active Directory +database through a hierarchical navigation system, which is very similar to the +file system. As with drives in a file system, such as C:, you can connect +Windows PowerShell drives to Active Directory domains and AD LDS, as well as +Active Directory snapshots. + +### Coverage of Active Directory Module Cmdlets + +Create, Read, Update, and Delete actions are supported for Active Directory +objects by cmdlets such as `New-ADUser`, `Get-ADOrganizationalUnit`, +`Set-ADComputer`, and `Remove-ADUser`. + +Account and Password Policy Management are supported by cmdlets such as +`Enable-ADAccount`, `Unlock-ADAccount`, `New-ADServiceAccount`, +`Set-ADAccountControl`, and `Remove-ADFineGrainedPasswordPolicy`. + +Domain and Forest Management is supported by cmdlets such as `Get-ADForest`, +`Set-ADForest`, `Set-ADForestMode`, `Enable-ADOptionalFeature`, +`Get-ADDomainController`, and `Get-ADDomain`. + +### Listing the Active Directory Module Cmdlets + +To get a list of all of the Active Directory module cmdlets, run + +```powershell +Get-Command -Module ActiveDirectory +``` + +### Getting Started + +Getting started with the Active Directory module for Windows PowerShell is as +easy as clicking the following shortcut: + +Run the following command in any Windows PowerShell prompt to import the Active +Directory module: + +```powershell +Import-Module ActiveDirectory +``` + +### Overview and Conceptual Topics + +The first two of these topics offer a high level overview of the Active +Directory module and the Active Directory Provider. + +- For a brief introduction to the Active Directory provider for Windows + PowerShell, see [ActiveDirectory](/powershell/module/activedirectory). +- The following topics are conceptual support topics for the Active Directory + module cmdlets. + - For an introduction to the **Identity** parameter, which is used by the + Active Directory module cmdlets to identify objects in the directory, see + [about_ActiveDirectory_Identity](about_ActiveDirectory_Identity.md). + - For an introduction to the **Filter** parameter which is used by Active + Directory module cmdlets to search for objects in the directory, see + [about_ActiveDirectory_Filter](about_ActiveDirectory_Filter.md). + - For an introduction to the .NET Framework-based object model implemented by + the Active Directory module, see + [about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). diff --git a/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_Identity.md b/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_Identity.md new file mode 100644 index 0000000000..c007277b19 --- /dev/null +++ b/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_Identity.md @@ -0,0 +1,196 @@ +--- +title: about_ActiveDirectory_Identity +ms.date: 04/22/2013 +description: This article lists the identifying attributes that are used for search and retrieval supported by the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_Identity + +## SHORT DESCRIPTION + +The Active Directory module for Windows PowerShell objects have a range of +identifying attributes that are used for search and retrieval. + +## LONG DESCRIPTION + +In order to identify the objects in Active Directory, each object has +attributes that can be used as identifiers. In the Active Directory module, the +value of the identity of an object can be passed using the Identity parameter. +Each object type has its own set of possible types and values for use by the +Identity parameter. See the detailed description of the Identity parameter of +the given cmdlet for more information about its usage. + +When searching with the Active Directory module cmdlets, the value of the +Identity parameter, along with the values of the Server and Partition +parameters, is used to uniquely identify a single object. The Server parameter +is used to locate which server to connect with. The Partition parameter further +narrows the search to a specific partition. The Identity parameter then +resolves to a single unique object in the partition. + +Note that using the Security Accounts Manager (SAM) Account Name +(**sAMAccountName**) when targeting a global catalog port, you will not find a +user in a different domain if you are using the Identity parameter + +If more than one object is found using identity resolution, the Active +Directory module throws an error. + +For more information about the Server and Partition parameters, see the help +topics for the individual cmdlets where they are used, such as `Get-ADUser`, by +typing: + +```powershell +Get-Help Get-ADUser +``` + +### Objects and Identities + +Each object has a list of attributes that can be used as an identity for that +object. Additionally, if the object inherits from another object, then the +parent object's identities can also be used as the child object's identities. +For more information on the Active Directory object hierarchy, see +[about_ActiveDirectory_ObjectModel](about_ActiveDirectory_ObjectModel.md). + +> [!NOTE] +> For Active Directory Provider cmdlets, only an object's 'Distinguished Name' +> or 'Relative Distinguished Name' can be used as the identity. For a list of +> Active Directory Provider cmdlets, see ActiveDirectory. + +### Identity Attributes + +The following is a list of identity attributes by object type. + +- ADAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADComputer + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager Account Name (sAMAccountName) + +- ADDirectoryServer + - Name of the server object (name) + - For AD LDS instances the syntax of a name is `$` + - For other Active Directory instances, use the value of the name property. + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the directory + server. + - GUID (objectGUID) of server object under the configuration partition. + - GUID (objectGUID) of NTDS settings object under the configuration partition + +- ADDomain + - Distinguished Name + - GUID + - Security Identifier + - DNS domain name + - NetBIOS domain name + +- ADDomainController + - GUID (objectGUID) + - IPV4Address + - Global IPV6Address + - DNS Host Name (dNSHostName) + - Name of the server object + - Distinguished Name of the NTDS Settings object + - Distinguished Name of the server object that represents the domain controller + - GUID of NTDS settings object under the configuration partition + - GUID of server object under the configuration partition + - Distinguished Name of the computer object that represents the domain controller. + +- ADFineGrainedPasswordPolicy + - Distinguished Name + - GUID (objectGUID) + - Name (name) + +- ADForest + - Fully qualified domain name + - DNS host name + - NetBIOS name + +- ADGroup + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - Security Accounts Manager (SAM) Account Name (sAMAccountName) + +- ADObject + - Distinguished Name + - GUID (objectGUID) + +- ADOptionalFeature + - Distinguished Name + - Name (name) + - Feature GUID (featureGUID) + - GUID (objectGUID) + +- ADOrganizationalUnit + - Distinguished Name + - GUID (objectGUID) + +- ADPrincipal + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADServiceAccount + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM Account Name (sAMAccountName) + +- ADUser + - Distinguished Name + - GUID (objectGUID) + - Security Identifier (objectSid) + - SAM User Name (sAMUserName) + + +### Identities Formats + +Active Directory module objects have a range of identity attributes. Below is a +list of these, their types and formats. + +- Distinguished Name + - Example: CN=SaraDavis,CN=Europe,CN=Users, DC=corp,DC=contoso,DC=com + +- DNS domain name + - Example: redmond.corp.contoso.com + +- DNS Host Name (dNSHostName) + - Example: corp-DC01.corp.contoso.com + +- Feature GUID (featureGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- Fully qualified domain name + - Example: corp.contoso.com + +- Global IPV6Address + - Example: 2001:4898:0:fff:200:5efe:157.59.132.61 + +- GUID (objectGUID) + - Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 + +- IPV4Address + - Example:157.59.132.61 + +- NetBIOS domain name + - Example: redmond + +- Name of the server object + - Example: corp-DC01$ + +- SAM Account Name (sAMAccountName) + - Example: saradavisreports + +- Security Identifier (objectSid) + - Example: S-1-5-21-3165297888-301567370-576410423-1103 + +- Name + - Example: Recycle Bin Feature diff --git a/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md b/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md new file mode 100644 index 0000000000..8535a97464 --- /dev/null +++ b/docset/winserver2025-ps/activedirectory/About/about_ActiveDirectory_ObjectModel.md @@ -0,0 +1,595 @@ +--- +title: about_ActiveDirectory_ObjectModel +ms.date: 04/22/2013 +description: Describes the object model of the Active Directory module for Windows PowerShell. +Locale: en-US +schema: 2.0.0 +--- + +# about_ActiveDirectory_ObjectModel + +## SHORT DESCRIPTION +Describes the object model of the Active Directory module for Windows +PowerShell. + +## LONG DESCRIPTION + +This topic explains the Active Directory module classes and their properties +used to model actual Active Directory attributes. It also outlines the class +hierarchy constructed from its Active Directory counterpart. The object model +establishes a data foundation for all the operations supported by Active +Directory module cmdlets. + +### Class Hierarchy + +The following list shows the class hierarchy defined in the Active Directory +module object model, with class inheritance implied by indentation. This +inheritance model allows for Active Directory cmdlets to accept a range of +object types as input. This means, for example, that the cmdlet +Get-ADPrincipalGroupMembership can accept as input any of the following +objects: ADGroup, ADAccount, ADComputer, ADServiceAccount or ADUser. This works +because of the inheritance model and guarantees that an ADUser object has all +of the properties of an ADPrincipal object. + +``` +ADEntity + ADRootDSE + ADObject + ADFineGrainedPasswordPolicy + ADOptionalFeature + ADOrganizationalUnit + ADPartition + ADDomain + ADPrincipal + ADAccount + ADComputer + ADServiceAccount + ADUser + ADGroup + ADDefaultDomainPasswordPolicy + ADForest + ADDirectoryServer + ADDomainController +``` + +### Active Directory Module Classes + +The following listing shows every Active Directory module class from the class +hierarchy listing. Each class defines a set of properties, some of which are +LDAP attributes that are retrieved by default and some are new properties +created specifically for the Active Directory module. These new properties are +derived from one or more LDAP attributes as outlined in the class listings. + + +- ADEntity - The base level class from which all other classes are derived. + - ADRootDSE - Represents the rootDSE and is derived from ADEntity. An + ADRootDSE may contain the following properties in addition to those + inherited from its parent. + - ConfigurationNamingContext - A property of type System.String, derived + from the directory attribute ConfigurationNamingContext + - CurrentTime - A property of type System.DateTime, derived from the + directory attribute CurrentTime + - DefaultNamingContext - A property of type System.String, derived from the + directory attribute DefaultNamingContext + - DnsHostName - A property of type System.String, derived from the + directory attribute DnsHostName + - DomainControllerFunctionality - A property of type + ADDomainControllerMode, derived from the directory attribute + DomainControllerFunctionality + - DomainFunctionality - A property of type ADDomainMode, derived from the + directory attribute DomainFunctionality + - DsServiceName - A property of type System.String, derived from the + directory attribute DsServiceName + - ForestFunctionality - A property of type ADForestMode, derived from the + directory attribute ForestFunctionality + - GlobalCatalogReady - A property of type System.Boolean, derived from the + directory attribute GlobalCatalogReady + - HighestCommittedUSN - A property of type System.Long, derived from the + directory attribute HighestCommittedUSN + - LdapServiceName - A property of type System.String, derived from the + directory attribute LdapServiceName + - NamingContexts - A property of type System.String, derived from the + directory attribute NamingContexts + - RootDomainNamingContext - A property of type System.String, derived from + the directory attribute RootDomainNamingContext + - SchemaNamingContext - A property of type System.String, derived from the + directory attribute SchemaNamingContext + - ServerName - A property of type System.String, derived from the directory + attribute ServerName + - SubschemaSubentry - A property of type ADObject, derived from the + directory attribute SubschemaSubentry + - SupportedCapabilities - A property of type ADObjectIdentifier, derived + from the directory attribute SupportedCapabilities + - SupportedControl - A property of type ADObjectIdentifier, derived from + the directory attribute SupportedControl + - SupportedLDAPPolicies - A property of type System.String, derived from + the directory attribute SupportedLDAPPolicies + - SupportedLDAPVersion - A property of type System.Int, derived from the + directory attribute SupportedLDAPVersion + - SupportedRootDSEOperations - A property of type + ADPropertyValueCollection, derived from the directory attribute + SupportedRootDSEOperations + - SupportedSASLMechanisms - A property of type System.String, derived from + the directory attribute SupportedSASLMechanisms + - Syncronized - A property of type System.Boolean, derived from the + directory attribute IsSynchronized. + - ADObject - Represents any object in Active Directory and is derived from + ADEntity. An ADObject may contain the following properties in addition to + those inherited from its parent. + - CanonicalName - A property of type System.String, derived from the + directory attribute: canonicalName + - CN - A property of type System.String, derived from the directory + attribute: cn + - Created - A property of type System.DateTime, derived from the directory + attribute: createTimeStamp + - Deleted - A property of type System.Boolean, derived from the directory + attribute: isDeleted + - Description - A property of type System.String, derived from the + directory attribute: description + - DisplayName - A property of type System.String, derived from the + directory attribute: displayName + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LastKnownParent - A property of type System.String, derived from the + directory attribute: lastKnownParent + - Modified - A property of type System.DateTime, derived from the directory + attribute: modifyTimeStamp + - Name - A property of type System.String, derived from the directory + attribute: name + - ObjectCategory - A property of type System.String, derived from the + directory attribute: objectCategory + - ObjectClass - A property of type System.String, derived from the + directory attribute: objectClass + - ObjectGUID - A property of type System.Guid, derived from the directory + attribute: objectGUID + - ProtectedFromAccidentalDeletion - A property of type System.Boolean, + derived from the directory attributes: nTSecurityDescriptor, + sdRightsEffective, instanceType, isDeleted + - ADFineGrainedPasswordPolicy Represents a fine grained password policy + object; that is, an AD object of type msDS-PasswordSettings in AD DS and + is derived from ADObject. This class is not supported by AD LDS. An + ADFineGrainedPasswordPolicy may contain the following properties in + addition to those inherited from its parent. + - AppliesTo - A property of type System.String, derived from the + directory attribute: msDS-PSOAppliesTo + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: msDS-PasswordComplexityEnabled + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: msDS-LockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: msDS-LockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: msDS-LockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MaximumPasswordAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: msDS-MinimumPasswordAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: msDS-MinimumPasswordLength + - PasswordHistoryCount - A property of type System.Int32, derived from + the directory attribute: msDS-PasswordHistoryLength + - Precedence - A property of type System.Int32, derived from the + directory attribute: msDS-PasswordSettingsPrecedence + - ReversibleEncryptionEnabled - A property of type System.Boolean, + derived from the directory attribute: + msDS-PasswordReversibleEncryptionEnabled + - ADOptionalFeature Represents an optional feature, an Active Directory + object of type msDS-OptionalFeature, and is derived from ADObject. An + ADOptionalFeaturemay contain the following properties in addition to + those inherited from its parent. + - EnabledScopes - A property of type System.String, derived from the + directory attribute: msDS-EnabledFeatureBL + - FeatureGUID - A property of type System.Guid, derived from the + directory attribute: msDS-OptionalFeatureGUID + - FeatureScope - A property of type System.Int32, derived from the + directory attribute: msDS-OptionalFeatureFlags + - IsDisableable - A property of type System.Boolean, derived from the + directory attribute: msDS-OptionalFeatureFlags + - RequiredDomainMode - A property of type + Microsoft.ActiveDirectory.Management.ADDomainMode, derived from the + directory attribute: msDS-RequiredDomainBehaviorVersion + - RequiredForestMode - A property of type + Microsoft.ActiveDirectory.Management.ADForestMode, derived from the + directory attribute: msDS-RequiredForestBehaviorVersion + - ADOrganizationalUnit Represents an organizationalUnit (OU) object and is + derived from ADObject. An ADOrganizationalUnit may contain the following + properties in addition to those inherited from its parent. + - City - A property of type System.String, derived from the directory + attribute: l + - Country - A property of type System.String, derived from the directory + attribute: c + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: gpLink. This property is not supported on + AD LDS. + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - State - A property of type System.String, derived from the directory + attribute: st + - StreetAddress - A property of type System.String, derived from the + directory attribute: street + - ADPartition - Represents a naming context, Configuration, Schema, Domain + or Application Partition(ND NC) and is derived from ADObject. This class + is not supported by AD LDS. An ADPartition may contain the following + properties in addition to those inherited from its parent. + - DeletedObjectsContainer - A property of type System.String, derived + from the directory attribute: DeletedObjectsContainer + - DNSRoot - A property of type System.String, derived from the directory + attribute: DNSRoot + - LostAndFoundContainer - A property of type System.String, derived from + the directory attribute: LostAndFoundContainer + - QuotasContainer - A property of type System.String, derived from the + directory attribute: QuotasContainer + - ReadOnlyReplicaDirectoryServers - A property of type System.String, + derived from the directory attribute: ReadOnlyReplicaDirectoryServers + - ReplicaDirectoryServers - A property of type System.String, derived + from the directory attribute: ReplicaDirectoryServers + - SubordinateReferences - A property of type System.String, derived from + the directory attribute: SubordinateReferences + - ADDomain - Represents a domain in AD DS or an instance in AD LDS; for + example, an Active Directory object of type domainDNS and is derived + from ADPartition. This class is not supported by AD LDS. An ADDomain + may contain the following properties in addition to those inherited + from its parent. + - AllowedDNSSuffixes - A property of type System.String, derived from + the directory attribute: msDS-AllowedDNSSuffixes + - ChildDomains - A property of type System.String, derived from the + directory attribute: ChildDomains + - ComputersContainer - A property of type System.String, derived from + the directory attribute: ComputersContainer + - DomainControllersContainer - A property of type System.String, + derived from the directory attribute: DomainControllersContainer + - DomainMode - A property of type System.Int32, derived from the + directory attribute: msDS-Behavior-Version + - DomainSID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - ForeignSecurityPrincipalsContainer - A property of type + System.String, derived from the directory attribute: + ForeignSecurityPrincipalsContainer + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - InfrastructureMaster - A property of type System.String, derived from + the directory attribute: InfrastructureMaster + - LastLogonReplicationInterval - A property of type System.TimeSpan, + derived from the directory attribute: msDS-LogonTimeSyncInterval + - LinkedGroupPolicyObjects - A property of type System.String, derived + from the directory attribute: LinkedGroupPolicyObjects + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - NetBIOSName - A property of type System.String, derived from the + directory attribute: NetBIOSName + - ParentDomain - A property of type System.String, derived from the + directory attribute: ParentDomain + - PDCEmulator - A property of type System.String, derived from the + directory attribute: PDCEmulator + - RIDMaster - A property of type System.String, derived from the + directory attribute: RIDMaster + - SystemsContainer - A property of type System.String, derived from the + directory attribute: SystemsContainer + - UsersContainer - A property of type System.String, derived from the + directory attribute: UsersContainer + - ADPrincipal - Represents a security principal, which is an Active + Directory object of type user, computer, group or iNetOrgPerson and is + derived from ADObject. An ADPrincipal may contain the following + properties in addition to those inherited from its parent. + - HomePage - A property of type System.String, derived from the + directory attribute: wWWHomePage + - MemberOf - A property of type System.String, derived from the + directory attribute: memberOf + - SamAccountName - A property of type System.String, derived from the + directory attribute: sAMAccountName. This property is not supported + for AD LDS. + - SID - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: objectSid + - SIDHistory - A property of type + System.Security.Principal.SecurityIdentifier, derived from the + directory attribute: sIDHistory. This property is not supported for + AD LDS. + - ADAccount - Represents a security account; that is, an Active + Directory object of type user, computer or iNetOrgPerson and is + derived from ADPrincipal. An ADAccount may contain the following + properties in addition to those inherited from its parent. + - AccountExpirationDate - A property of type System.DateTime, derived + from the directory attribute: accountExpires + - AccountLockoutTime - A property of type System.DateTime, derived + from the directory attribute: lockoutTime + - AccountNotDelegated - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - AllowReversiblePasswordEncryption - A property of type + System.Boolean, for AD DS it is derived from the directory + attribute: userAccountControl; for AD LDS it is derived from the + directory attribute: ms-DS-UserEncryptedTextPasswordAllowed + - BadLogonCount - A property of type System.Int32, derived from the + directory attribute: badPwdCount + - CannotChangePassword - A property of type System.Boolean, derived + from the directory attribute: nTSecurityDescriptor + - Certificates - A property of type + System.Security.Cryptography.X509Certificates.X509Certificate, + derived from the directory attribute: userCertificate + - DoesNotRequirePreAuth - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - Enabled - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserAccountDisabled + - HomedirRequired - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - LastBadPasswordAttempt - A property of type System.DateTime, + derived from the directory attribute: badPasswordTime + - LastLogonDate - A property of type System.DateTime, derived from + the directory attribute: lastLogonTimestamp + - LockedOut - A property of type System.Boolean, for AD DS it is + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed, lockoutTime; for AD LDS it is + derived from the directory attribute msDS-UserAccountDisabled + - MNSLogonAccount - A property of type System.Boolean, derived from + the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - PasswordExpired - A property of type System.Boolean, for AD DS it + is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute msDS-UserPasswordExpired + - PasswordLastSet - A property of type System.DateTime, derived from + the directory attribute: pwdLastSet + - PasswordNeverExpires - A property of type System.Boolean, for AD + LDS it is derived from the directory attributes: + userAccountControl, msDS-User-Account-Control-Computed; for AD LDS + it is derived from the directory attribute: + msDS-UserDontExpirePassword + - PasswordNotRequired - A property of type System.Boolean, for AD DS + it is derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed; for AD LDS it is derived from + the directory attribute: ms-DS-UserPasswordNotRequired + - PrimaryGroup - A property of type System.String, derived from the + directory attributes: primaryGroupID, objectSid. This property is + not supported by AD LDS. + - ServicePrincipalNames - A property of type System.String, derived + from the directory attribute: servicePrincipalName. This property + is not supported by AD LDS. + - TrustedForDelegation - A property of type System.Boolean, derived + from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - TrustedToAuthForDelegation - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UseDESKeyOnly - A property of type System.Boolean, derived from the + directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not supported + by AD LDS. + - UserPrincipalName - A property of type System.String, derived from + the directory attribute: userPrincipalName + - ADComputer - Represents a computer and is derived from ADAccount. + An ADComputer may contain the following properties in addition to + those inherited from its parent. + - DNSHostName - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv4Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: dNSHostName + - Location - A property of type System.String, derived from the + directory attribute: location + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - OperatingSystem - A property of type System.String, derived from + the directory attribute: operatingSystem + - OperatingSystemHotfix - A property of type System.String, derived + from the directory attribute: operatingSystemHotfix + - OperatingSystemServicePack - A property of type System.String, + derived from the directory attribute: operatingSystemServicePack + - OperatingSystemVersion - A property of type System.String, + derived from the directory attribute: operatingSystemVersion + - ServiceAccount - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccount + - ADServiceAccount - Represents a managed service account; that is, + an Active Directory object of type msDS-ManagerdServiceAccount and + is derived from ADAccount. This class is not supported by AD LDS. + An ADServiceAccount may contain the following properties in + addition to those inherited from its parent. + - HostComputers - A property of type System.String, derived from + the directory attribute: msDS-HostServiceAccountBL + - ADUser - Represents a user (or iNetOrgPerson) and is derived from + ADAccount. An ADUser may contain the following properties in + addition to those inherited from its parent. + - City - A property of type System.String, derived from the + directory attribute: l + - Company - A property of type System.String, derived from the + directory attribute: company + - Country - A property of type System.String, derived from the + directory attribute: c + - Department - A property of type System.String, derived from the + directory attribute: department + - Division - A property of type System.String, derived from the + directory attribute: division + - EmailAddress - A property of type System.String, derived from the + directory attribute: mail + - EmployeeID - A property of type System.String, derived from the + directory attribute: employeeID + - EmployeeNumber - A property of type System.String, derived from + the directory attribute: employeeNumber + - Fax - A property of type System.String, derived from the + directory attribute: facsimileTelephoneNumber + - GivenName - A property of type System.String, derived from the + directory attribute: givenName + - HomeDirectory - A property of type System.String, derived from + the directory attribute: homeDirectory. This property is not + supported by AD LDS. + - HomeDrive - A property of type System.String, derived from the + directory attribute: homeDrive. This property is not supported by + AD LDS. + - HomePhone - A property of type System.String, derived from the + directory attribute: homePhone + - Initials - A property of type System.String, derived from the + directory attribute: initials + - LogonWorkstations - A property of type System.String, derived + from the directory attribute: userWorkstations. This property is + not supported by AD LDS. + - Manager - A property of type System.String, derived from the + directory attribute: manager + - MobilePhone - A property of type System.String, derived from the + directory attribute: mobile + - Office - A property of type System.String, derived from the + directory attribute: physicalDeliveryOfficeName + - OfficePhone - A property of type System.String, derived from the + directory attribute: telephoneNumber + - Organization - A property of type System.String, derived from the + directory attribute: o + - OtherName - A property of type System.String, derived from the + directory attribute: middleName + - POBox - A property of type System.String, derived from the + directory attribute: postOfficeBox + - PostalCode - A property of type System.String, derived from the + directory attribute: postalCode + - ProfilePath - A property of type System.String, derived from the + directory attribute: profilePath. This property is not supported + by AD LDS. + - ScriptPath - A property of type System.String, derived from the + directory attribute: scriptPath. This property is not supported + by AD LDS. + - SmartcardLogonRequired - A property of type System.Boolean, + derived from the directory attributes: userAccountControl, + msDS-User-Account-Control-Computed. This property is not + supported by AD LDS. + - State - A property of type System.String, derived from the + directory attribute: st + - StreetAddress - A property of type System.String, derived from + the directory attribute: streetAddress + - Surname - A property of type System.String, derived from the + directory attribute: sn + - Title - A property of type System.String, derived from the + directory attribute: title + - ADGroup -Represents a group and is derived from ADPrincipal. An + ADGroup may contain the following properties in addition to those + inherited from its parent. + - GroupCategory - A property of type + Microsoft.ActiveDirectory.Management.ADGroupCategory, derived from + the directory attribute: groupType + - GroupScope - A property of type + Microsoft.ActiveDirectory.Management.ADGroupScope, derived from the + directory attribute: groupType + - ManagedBy - A property of type System.String, derived from the + directory attribute: managedBy + - Members - A property of type System.String, derived from the + directory attribute: member + - ADDefaultDomainPasswordPolicy - Represents the domain-wide password policy + of an Active Directory domain and is derived from ADEntity. This class is + not supported by AD LDS. An ADDefaultDomainPasswordPolicy may contain the + following properties in addition to those inherited from its parent. + - ComplexityEnabled - A property of type System.Boolean, derived from the + directory attribute: pwdProperties + - DistinguishedName - A property of type System.String, derived from the + directory attribute: distinguishedName + - LockoutDuration - A property of type System.TimeSpan, derived from the + directory attribute: lockoutDuration + - LockoutObservationWindow - A property of type System.TimeSpan, derived + from the directory attribute: lockoutObservationWindow + - LockoutThreshold - A property of type System.Int32, derived from the + directory attribute: lockoutThreshold + - MaxPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: maxPwdAge + - MinPasswordAge - A property of type System.TimeSpan, derived from the + directory attribute: minPwdAge + - MinPasswordLength - A property of type System.Int32, derived from the + directory attribute: minPwdLength + - PasswordHistoryCount - A property of type System.Int32, derived from the + directory attribute: pwdHistoryLength + - ReversibleEncryptionEnabled - A property of type System.Boolean, derived + from the directory attribute: pwdProperties + - ADForest - Represents a Active Directory forest in AD DS or a Configuration + Set in AD LDS and is derived from ADEntity. This class is not supported by + AD LDS. An ADForest may contain the following properties in addition to + those inherited from its parent. + - ApplicationPartitions - A property of type System.String, derived from + the directory attribute: ApplicationPartitions + - CrossForestReferences - A property of type System.String, derived from + the directory attribute: CrossForestReferences + - DomainNamingMaster - A property of type System.String, derived from the + directory attribute: DomainNamingMaster + - Domains - A property of type System.String, derived from the directory + attribute: Domains + - ForestMode - A property of type System.Int32, derived from the directory + attribute: msDS-Behavior-Version + - GlobalCatalogs - A property of type System.String, derived from the + directory attribute: GlobalCatalogs + - Name - A property of type System.String, derived from the directory + attribute: name + - PartitionContainerName - A property of type System.String, derived from + the directory attribute: distinguishedName + - RootDomain - A property of type System.String, derived from the directory + attribute: RootDomain + - SchemaMaster - A property of type System.String, derived from the + directory attribute: SchemaMaster + - Sites - A property of type System.String, derived from the directory + attribute: Sites + - SPNSuffixes - A property of type System.String, derived from the + directory attribute: msDS-SPNSuffixes + - UPNSuffixes - A property of type System.String, derived from the + directory attribute: uPNSuffixes + - ADDirectoryServer - Represents a directory server used as either a domain + controller or an AD LDS instance and is derived from ADEntity. An + ADDirectoryServer may contain the following properties in addition to those + inherited from its parent. + - DefaultPartition - A property of type System.String, derived from the + directory attribute: DefaultPartition + - HostName - A property of type System.String, derived from the directory + attribute: HostName + - InvocationId - A property of type System.Guid, derived from the directory + attribute: InvocationId + - IPv4Address - A property of type System.String, derived from the + directory attribute: HostName + - IPv6Address - A property of type System.String, derived from the + directory attribute: HostName + - LdapPort - A property of type System.Int32, derived from the directory + attribute: LdapPort + - Name - A property of type System.String, derived from the directory + attribute: Name + - NTDSSettingsObjectDN - A property of type System.String, derived from the + directory attribute: NTDSSettingsObjectDN + - OperationMasterRoles - A property of type + Microsoft.ActiveDirectory.Management.ADOperationMasterRole, derived from + the directory attribute: OperationMasterRole + - Partitions - A property of type System.String, derived from the directory + attribute: Partitions + - ServerObjectDN - A property of type System.String, derived from the + directory attribute: ServerObjectDN + - ServerObjectGuid - A property of type System.Guid, derived from the + directory attribute: ServerObjectGuid + - Site - A property of type System.String, derived from the directory + attribute: Site + - SslPort - A property of type System.Int32, derived from the directory + attribute: SslPort + - ADDomainController - Represents a domain controller in AD DS and is + derived from ADDirectoryServer. An ADDomainController may contain the + following properties in addition to those inherited from its parent. + - ComputerObjectDN - A property of type System.String, derived from the + directory attribute: ComputerDN + - Domain - A property of type System.String, derived from the directory + attribute: Domain + - Enabled - A property of type System.Boolean, derived from the directory + attribute: Enabled + - Forest - A property of type System.String, derived from the directory + attribute: Forest + - IsGlobalCatalog - A property of type System.Boolean, derived from the + directory attribute: IsGlobalCatalog + - IsReadOnly - A property of type System.Boolean, derived from the + directory attribute: IsReadOnly + - OperatingSystem - A property of type System.String, derived from the + directory attribute: OSName + - OperatingSystemHotfix - A property of type System.String, derived from + the directory attribute: OSHotFix + - OperatingSystemServicePack - A property of type System.String, derived + from the directory attribute: OSServicepack + - OperatingSystemVersion - A property of type System.String, derived from + the directory attribute: OSVersion From 36debb2ff8e3c1939310c1a35a369aaa953a619e Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 11:38:52 -0400 Subject: [PATCH 34/98] Updated command set --- .../hyper-v/Get-VMHostPartitionableGpu.md | 64 +++++++++++++------ .../hyper-v/Set-VMHostPartitionableGpu.md | 57 ++++++++++++----- 2 files changed, 86 insertions(+), 35 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md b/docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md index 18d7eeec17..7607bba193 100644 --- a/docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md +++ b/docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md @@ -2,7 +2,7 @@ description: Gets the host machine’s partitionable GPU. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/get-vmhostpartitionablegpu?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Get-VMHostPartitionableGpu @@ -16,49 +16,66 @@ Gets the host machine’s partitionable GPU. ## SYNTAX ### ComputerName (Default) + ``` -Get-VMHostPartitionableGpu [[-ComputerName] ] [[-Credential] ] [-Name ] - [] +Get-VMHostPartitionableGpu [[-ComputerName] ] [[-Credential] ] + [-Name ] [] ``` ### CimSession + ``` Get-VMHostPartitionableGpu [-CimSession] [-Name ] [] ``` ## DESCRIPTION -The 'Get-VMHostPartitionableGpu' cmdlet gets the host machine’s partitionable graphic processing unit. -This displays the information of the GPU as provided by the manufacturer's driver. + +The `Get-VMHostPartitionableGpu` cmdlet gets the host machine’s partitionable graphic processing +unit. This displays the information of the GPU as provided by the manufacturer's driver. ## EXAMPLES ### Example 1 -``` + +```powershell Get-VMHostPartitionableGpu ``` This example gets the details of the local partitionable graphic processing unit on the host. ### Example 2 + ```powershell -Get-VMHostPartitionableGpu -ComputerName "SampleHost" +Get-VMHostPartitionableGpu -ComputerName "MyHost" ``` -This example gets a partitionable GPU by using the host name. This command will display all the GPU devices available for partitioning in the host. +This example gets a partitionable GPU by using the host name. This command will display all the GPU +devices available for partitioning in the host. ### Example 3 + +```powershell +Get-VMHostPartitionableGpu -Name "GPUDeviceIDName" +``` + +### Example 4 + ```powershell -Get-VMHostPartitionableGpu -name "SampleGPUDeviceIDName" +Get-VMHostPartitionableGpu | FL Name, ValidPartitionCounts ``` -Displays a partitionable GPU by using the specific GPU device name. The result will show the details of the specific GPU listed. +This example retrieves information about the partitionable GPUs available on a virtual machine host +and formats the output as a list, displaying the name of each GPU and the number of valid +partitions that can be created on each GPU. ## PARAMETERS ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -73,10 +90,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts that run this cmdlet. -NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts that run this cmdlet. NetBIOS names, IP addresses, and fully +qualified domain names are allowed. The default is the local computer. Use localhost or a dot (`.`) +to specify the local computer explicitly. ```yaml Type: String[] @@ -91,7 +108,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -106,6 +125,7 @@ Accept wildcard characters: False ``` ### -Name + Specifies the name of the graphic processing unit to be retrieved. ```yaml @@ -121,7 +141,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -134,3 +158,5 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Set-VMHostPartitionableGpu](set-vmhostpartitionablegpu.md) diff --git a/docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md b/docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md index a6ef57aec9..9339de7acf 100644 --- a/docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md +++ b/docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md @@ -2,7 +2,7 @@ description: Configures the host partitionable GPU to the number of partitions supported by the manufacturer. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 10/21/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/set-vmhostpartitionablegpu?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Set-VMHostPartitionableGpu @@ -16,44 +16,53 @@ Configures the host partitionable GPU to the number of partitions supported by t ## SYNTAX ### ComputerName (Default) + ``` Set-VMHostPartitionableGpu [[-ComputerName] ] [[-Credential] ] [-Passthru] [-PartitionCount ] [] ``` ### CimSession + ``` Set-VMHostPartitionableGpu [-CimSession] [-Passthru] [-PartitionCount ] [] ``` ### Object + ``` Set-VMHostPartitionableGpu [-HostPartitionableGpu] [-Passthru] [-PartitionCount ] [] ``` ### Name + ``` -Set-VMHostPartitionableGpu [-Passthru] [-Name ] [-PartitionCount ] [] +Set-VMHostPartitionableGpu [-Passthru] [-Name ] [-PartitionCount ] + [] ``` ## DESCRIPTION -The `Set-VMHostPartitionableGpu` cmdlet configures the host partitionable GPU to the number of partitions supported by the manufacturer. + +The `Set-VMHostPartitionableGpu` cmdlet configures the host partitionable GPU to the number of +partitions supported by the manufacturer. ## EXAMPLES ### Example 1 + ```powershell -Set-VMHostPartitionableGpu -ComputerName SampleHost -partitioncount 8 +Set-VMHostPartitionableGpu -ComputerName "MyHost" -PartitionCount 8 ``` This example partitions a GPU in a specific host into eight partitions. ### Example 2 + ```powershell -$GPU = Get-VMHostPartitionableGpu -name "SampleGPUDeviceIDName" -Set-VMHostPartitionableGpu -Name $GPU -partitionCount 4 +$GPU = Get-VMHostPartitionableGpu -Name "GPUDeviceIDName" +Set-VMHostPartitionableGpu -Name $GPU -PartitionCount 4 ``` This example partitions a GPU in a host into four partitions by using the GPU device ID name. @@ -61,8 +70,11 @@ This example partitions a GPU in a host into four partitions by using the GPU de ## PARAMETERS ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -77,9 +89,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -94,8 +107,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. -The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -110,7 +124,8 @@ Accept wildcard characters: False ``` ### -HostPartitionableGpu -Full GPU object, obtained by executing 'Get-VMHostPartitionableGpu'. + +Full GPU object, obtained by executing `Get-VMHostPartitionableGpu`. ```yaml Type: VMHostPartitionableGpu[] @@ -125,6 +140,7 @@ Accept wildcard characters: False ``` ### -Name + Specifies the name of the GPU. ```yaml @@ -140,7 +156,9 @@ Accept wildcard characters: False ``` ### -PartitionCount -Specifies the number of partitions that the GPU will assign. The number of partitions is defined by the manufacturer. + +Specifies the number of partitions that the GPU will assign. The number of partitions is defined by +the manufacturer. ```yaml Type: UInt16 @@ -155,6 +173,7 @@ Accept wildcard characters: False ``` ### -Passthru + Returns an object for each process that the cmdlet started. ```yaml @@ -170,7 +189,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -185,3 +208,5 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Get-VMHostPartitionableGpu](get-vmhostpartitionablegpu.md) From ec3f12c51baec466e05768f33085a7a9fd977aef Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 12:25:14 -0400 Subject: [PATCH 35/98] Updated command set --- .../hyper-v/Add-VMGpuPartitionAdapter.md | 111 +++++++++++++----- .../hyper-v/Get-VMGpuPartitionAdapter.md | 64 +++++++--- .../hyper-v/Remove-VMGpuPartitionAdapter.md | 69 +++++++---- .../hyper-v/Set-VMGpuPartitionAdapter.md | 109 ++++++++++++----- 4 files changed, 257 insertions(+), 96 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md b/docset/winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md index c20efc5557..81e37bb922 100644 --- a/docset/winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md @@ -2,7 +2,7 @@ description: Adds a GPU partition adapter to a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/add-vmgpupartitionadapter?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Add-VMGpuPartitionAdapter @@ -16,53 +16,62 @@ Adds a GPU partition adapter to a virtual machine. ## SYNTAX ### VMName (Default) + ``` Add-VMGpuPartitionAdapter [-CimSession ] [-ComputerName ] [-Credential ] [-VMName] [-Passthru] [-InstancePath ] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ### VMObject + ``` Add-VMGpuPartitionAdapter [-VM] [-Passthru] [-InstancePath ] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The 'Add-VMGpuPartitionAdapter' cmdlet adds a GPU partition adapter to a virtual machine. With no parameter, it assigns a full partition from an assignable GPU to a VM. + +The `Add-VMGpuPartitionAdapter` cmdlet adds a GPU partition adapter to a virtual machine. With no +parameter, it assigns a full partition from an assignable GPU to a VM. ## EXAMPLES ### Example 1 + ```powershell -$vm = Get-VM -name "TestVM" +$vm = Get-VM -Name "TestVM" Add-VMGpuPartitionAdapter -VM $vm ``` This example assigns a partition to a specific VM object. ### Example 2 + ```powershell -$vm = Get-VM -name "TestVM" -Add-VMGpuPartitionAdapter -VM $vm -Instancepath "SampleGPUInstancePath" +$vm = Get-VM -Name "TestVM" +Add-VMGpuPartitionAdapter -VM $vm -InstancePath "GPUInstancePath" ``` -This example assigns a partition from a specific GPU to a VM where the instance path is the GPU device ID name on the host. +This example assigns a partition from a specific GPU to a VM where the instance path is the GPU +device ID name on the host. ## PARAMETERS ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -77,10 +86,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts from which virtual machines are to be retrieved. -NetBIOS names, IP addresses, and fully qualified domain names are allowable. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts from which virtual machines are to be retrieved. NetBIOS names, +IP addresses, and fully qualified domain names are allowable. The default is the local computer. +Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -95,8 +104,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. -The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -111,7 +121,9 @@ Accept wildcard characters: False ``` ### -InstancePath -Represents the Device Instance path of a GPU in the host. This value can be obtained from the "Name" property of the command 'Get-VMHostPartitionableGpu'. + +Represents the Device Instance path of a GPU in the host. This value can be obtained from the +"Name" property of the command `Get-VMHostPartitionableGpu`. ```yaml Type: String @@ -126,7 +138,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionCompute -The maximum number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -141,7 +155,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionDecode -The maximum number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -156,7 +172,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionEncode -The maximum number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -171,6 +189,7 @@ Accept wildcard characters: False ``` ### -MaxPartitionVRAM + The maximum VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -186,7 +205,9 @@ Accept wildcard characters: False ``` ### -MinPartitionCompute -The minimum number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -201,7 +222,9 @@ Accept wildcard characters: False ``` ### -MinPartitionDecode -The minimum number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -216,7 +239,9 @@ Accept wildcard characters: False ``` ### -MinPartitionEncode -The minimum number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -231,6 +256,7 @@ Accept wildcard characters: False ``` ### -MinPartitionVRAM + The minimum VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -246,7 +272,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionCompute -The optimal number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -261,7 +289,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionDecode -The optimal number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -276,7 +306,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionEncode -The optimal number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -291,6 +323,7 @@ Accept wildcard characters: False ``` ### -OptimalPartitionVRAM + The optimal VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -306,6 +339,7 @@ Accept wildcard characters: False ``` ### -Passthru + Returns an object for each process that the cmdlet started. ```yaml @@ -321,6 +355,7 @@ Accept wildcard characters: False ``` ### -VM + Specifies the virtual machine on which the network adapter is to be added. ```yaml @@ -336,6 +371,7 @@ Accept wildcard characters: False ``` ### -VMName + Specifies the name of the virtual machine on which the network adapter is to be added. ```yaml @@ -351,6 +387,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -366,8 +403,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -382,7 +419,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -397,3 +438,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) + +- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) + +- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md b/docset/winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md index 4143c49ecd..07ff8b3907 100644 --- a/docset/winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md @@ -2,7 +2,7 @@ description: Gets the information of assigned GPU partitions to a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/get-vmgpupartitionadapter?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Get-VMGpuPartitionAdapter @@ -16,33 +16,54 @@ Gets the information of assigned GPU partitions to a virtual machine. ## SYNTAX ### VMName (Default) + ``` Get-VMGpuPartitionAdapter [-CimSession ] [-ComputerName ] [-Credential ] [-VMName] [-AdapterId ] [] ``` ### VMObject + ``` Get-VMGpuPartitionAdapter [-VM] [-AdapterId ] [] ``` ## DESCRIPTION -The 'Get-VMGpuPartitionAdapter' cmdlet gets the information of assigned graphic processing unit partitions to a virtual machine. + +The `Get-VMGpuPartitionAdapter` cmdlet gets the information of assigned graphic processing unit +partitions to a virtual machine. ## EXAMPLES ### Example 1 + ```powershell -$testvm = get-VM "TestVM" +$testvm = Get-VM "TestVM" Get-VMGpuPartitionAdapter -VM $testvm ``` This example gets the GPU information assigned to a VM object. +### Example 2 + +```powershell +Get-VMGpuPartitionAdapter -VMName "TestVM" | FL InstancePath, Id, SupportsOutgoingLiveMigration +``` + +This command retrieves information about the GPU partition adapter for the virtual machine named +**TestVM** and displays the `InstancePath`, `Id`, and `SupportsOutgoingLiveMigration` properties. + +When live migrating a virtual machine with a GPU partition adapter, certain hardware and software +conditions must be met on both the source and target hosts. The `SupportsOutgoingLiveMigration` +field can be used to pre-validate a live migration, ensuring that all necessary conditions are met +before attempting the migration. + ## PARAMETERS ### -AdapterId -This is a VM's GPU partition identification number used to display the GPU information assigned to a VM. + +This is a VM's GPU partition identification number used to display the GPU information assigned to a +VM. ```yaml Type: String @@ -57,9 +78,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -74,10 +97,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. -NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -92,8 +115,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. -The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -108,6 +132,7 @@ Accept wildcard characters: False ``` ### -VM + Specifies the virtual machine whose virtual network adapters are to be retrieved. The asterisk (`*`) is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. @@ -125,6 +150,7 @@ Accept wildcard characters: True ``` ### -VMName + Specifies the name of the virtual machine whose network adapters are to be retrieved. ```yaml @@ -140,7 +166,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -155,3 +185,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) + +- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) + +- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2025-ps/hyper-v/Remove-VMGpuPartitionAdapter.md b/docset/winserver2025-ps/hyper-v/Remove-VMGpuPartitionAdapter.md index 052bd5e136..efd3a8e770 100644 --- a/docset/winserver2025-ps/hyper-v/Remove-VMGpuPartitionAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Remove-VMGpuPartitionAdapter.md @@ -2,7 +2,7 @@ description: Removes an assigned GPU partition from a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/remove-vmgpupartitionadapter?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Remove-VMGpuPartitionAdapter @@ -16,30 +16,36 @@ Removes an assigned GPU partition from a virtual machine. ## SYNTAX ### VMName (Default) + ``` Remove-VMGpuPartitionAdapter [-CimSession ] [-ComputerName ] - [-Credential ] [-VMName] [-Passthru] [-AdapterId ] [-WhatIf] [-Confirm] - [] + [-Credential ] [-VMName] [-Passthru] [-AdapterId ] [-WhatIf] + [-Confirm] [] ``` ### VMObject + ``` -Remove-VMGpuPartitionAdapter [-VM] [-Passthru] [-AdapterId ] [-WhatIf] [-Confirm] - [] +Remove-VMGpuPartitionAdapter [-VM] [-Passthru] [-AdapterId ] [-WhatIf] + [-Confirm] [] ``` ### Object + ``` -Remove-VMGpuPartitionAdapter [-VMGpuPartitionAdapter] [-Passthru] [-WhatIf] - [-Confirm] [] +Remove-VMGpuPartitionAdapter [-VMGpuPartitionAdapter] [-Passthru] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The 'Remove-VMGpuPartitionAdapter' cmdlet removes an assigned graphic processing unit partition from a virtual machine and releases that partition back to the host GPU. + +The `Remove-VMGpuPartitionAdapter` cmdlet removes an assigned graphic processing unit partition from +a virtual machine and releases that partition back to the host GPU. ## EXAMPLES ### Example 1 + ```powershell $testvm = Get-VM "TestVM" Remove-VMGpuPartitionAdapter -VM $testvm @@ -48,6 +54,7 @@ Remove-VMGpuPartitionAdapter -VM $testvm This example removes a partition assigned to a specific VM object. ### Example 2 + ```powershell $testvm = Get-VM "TestVM" $GPUpartition = Get-VMGpuPartitionAdapter -VM $testvm @@ -59,7 +66,8 @@ This example removes a specific partition object from a specific VM. ## PARAMETERS ### -AdapterId -This is a VM's GPU partition identification number used to remove a GPU from a VM. + +This is a VM's GPU partition identification number used to remove a GPU from a VM. ```yaml Type: String @@ -74,9 +82,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -91,8 +101,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer.Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer.Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -107,7 +119,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -122,6 +136,7 @@ Accept wildcard characters: False ``` ### -Passthru + Returns an object for each process that the cmdlet started. ```yaml @@ -137,6 +152,7 @@ Accept wildcard characters: False ``` ### -VM + Specifies the virtual machine whose virtual network adapters are to be retrieved. The asterisk (`*`) is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. @@ -154,7 +170,8 @@ Accept wildcard characters: False ``` ### -VMGpuPartitionAdapter -GPU partition object obtained from 'Get-VMGpuPartitionAdapter'. + +GPU partition object obtained from `Get-VMGpuPartitionAdapter`. ```yaml Type: VMGpuPartitionAdapter[] @@ -169,7 +186,8 @@ Accept wildcard characters: False ``` ### -VMName -Specifies the name of the virtual machine whose network adapters are to be retrieved. + +Specifies the name of the virtual machine whose network adapters are to be removed. ```yaml Type: String[] @@ -184,6 +202,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -199,8 +218,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -215,7 +234,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -230,3 +253,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) + +- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) + +- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md b/docset/winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md index 42f57e5749..a8ed8872b7 100644 --- a/docset/winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md @@ -2,7 +2,7 @@ description: Assigns a partition of a GPU to a virtual machine. external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml Module Name: Hyper-V -ms.date: 09/22/2022 +ms.date: 06/12/2024 online version: https://learn.microsoft.com/powershell/module/hyper-v/set-vmgpupartitionadapter?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Set-VMGpuPartitionAdapter @@ -16,44 +16,51 @@ Assigns a partition of a GPU to a virtual machine. ## SYNTAX ### VMName (Default) + ``` Set-VMGpuPartitionAdapter [-CimSession ] [-ComputerName ] [-Credential ] [-VMName] [-Passthru] [-AdapterId ] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ### VMObject + ``` Set-VMGpuPartitionAdapter [-VM] [-Passthru] [-AdapterId ] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ### Object + ``` Set-VMGpuPartitionAdapter [-VMGpuPartitionAdapter] [-Passthru] [-MinPartitionVRAM ] [-MaxPartitionVRAM ] [-OptimalPartitionVRAM ] [-MinPartitionEncode ] [-MaxPartitionEncode ] [-OptimalPartitionEncode ] [-MinPartitionDecode ] [-MaxPartitionDecode ] [-OptimalPartitionDecode ] - [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] [-WhatIf] - [-Confirm] [] + [-MinPartitionCompute ] [-MaxPartitionCompute ] [-OptimalPartitionCompute ] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The 'Set-VMGpuPartitionAdapter' cmdlet assigns a partition of a GPU to a virtual machine. Running the command against a virtual machine assigns a full partition. Additional parameters exist to assign more specific options to a VM. + +The `Set-VMGpuPartitionAdapter` cmdlet assigns a partition of a GPU to a virtual machine. Running +the command against a virtual machine assigns a full partition. Additional parameters exist to +assign more specific options to a VM. ## EXAMPLES ### Example 1 + ```powershell -$vm = get-vm test +$vm = Get-VM "Test" Set-VMGpuPartitionAdapter -VM $vm ``` @@ -62,6 +69,7 @@ This example assign a partition to a VM passing a VM object. ## PARAMETERS ### -AdapterId + A VM's GPU partition identification number used to display the GPU information assigned to a VM. ```yaml @@ -77,8 +85,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -93,9 +104,10 @@ Accept wildcard characters: False ``` ### -ComputerName -Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. -The default is the local computer. -Use localhost or a dot ('.') to specify the local computer explicitly. + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. ```yaml Type: String[] @@ -110,8 +122,9 @@ Accept wildcard characters: False ``` ### -Credential -Specifies one or more user accounts that have permission to perform this action. -The default is the current user. + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. ```yaml Type: PSCredential[] @@ -126,7 +139,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionCompute -The maximum number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -141,7 +156,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionDecode -The maximum number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -156,7 +173,9 @@ Accept wildcard characters: False ``` ### -MaxPartitionEncode -The maximum number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The maximum number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -171,6 +190,7 @@ Accept wildcard characters: False ``` ### -MaxPartitionVRAM + The maximum VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -186,7 +206,9 @@ Accept wildcard characters: False ``` ### -MinPartitionCompute -The minimum number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -201,7 +223,9 @@ Accept wildcard characters: False ``` ### -MinPartitionDecode -The minimum number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -216,7 +240,9 @@ Accept wildcard characters: False ``` ### -MinPartitionEncode -The minimum number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The minimum number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -231,6 +257,7 @@ Accept wildcard characters: False ``` ### -MinPartitionVRAM + The minimum VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -246,7 +273,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionCompute -The optimal number of compute assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of compute assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -261,7 +290,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionDecode -The optimal number of decoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of decoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -276,7 +307,9 @@ Accept wildcard characters: False ``` ### -OptimalPartitionEncode -The optimal number of encoders assigned by the host GPU. This is defined by the manufacturer's driver. + +The optimal number of encoders assigned by the host GPU. This is defined by the manufacturer's +driver. ```yaml Type: UInt64 @@ -291,6 +324,7 @@ Accept wildcard characters: False ``` ### -OptimalPartitionVRAM + The optimal VRAM in bytes supported by the host GPU. This is defined by the manufacturer's driver. ```yaml @@ -306,6 +340,7 @@ Accept wildcard characters: False ``` ### -Passthru + Returns an object for each process that the cmdlet started. ```yaml @@ -321,6 +356,7 @@ Accept wildcard characters: False ``` ### -VM + Specifies the virtual machine whose virtual network adapters are to be retrieved. The asterisk (`*`) is the wildcard. If it is specified the cmdlet returns virtual network adapters from every virtual machine in the system. @@ -338,7 +374,8 @@ Accept wildcard characters: False ``` ### -VMGpuPartitionAdapter -GPU partition object obtained from 'Get-VMGpuPartitionAdapter'. + +GPU partition object obtained from `Get-VMGpuPartitionAdapter`. ```yaml Type: VMGpuPartitionAdapter[] @@ -353,7 +390,8 @@ Accept wildcard characters: False ``` ### -VMName -Specifies the name of the virtual machine whose network adapters are to be retrieved. + +Specifies the name of the virtual machine whose network adapters are to be configured. ```yaml Type: String[] @@ -368,6 +406,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -383,8 +422,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -399,7 +438,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -416,3 +459,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) + +- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) + +- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) From 2da3da6aea34b64f521d4ab816ccda23e2f3a374 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 13:14:31 -0400 Subject: [PATCH 36/98] Updated command set --- .../hyper-v/Add-VMAssignableDevice.md | 286 ++++++++++++++++++ .../hyper-v/Get-VMAssignableDevice.md | 194 ++++++++++++ .../hyper-v/Remove-VMAssignableDevice.md | 257 ++++++++++++++++ 3 files changed, 737 insertions(+) create mode 100644 docset/winserver2025-ps/hyper-v/Add-VMAssignableDevice.md create mode 100644 docset/winserver2025-ps/hyper-v/Get-VMAssignableDevice.md create mode 100644 docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md diff --git a/docset/winserver2025-ps/hyper-v/Add-VMAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Add-VMAssignableDevice.md new file mode 100644 index 0000000000..aac6d3bdf3 --- /dev/null +++ b/docset/winserver2025-ps/hyper-v/Add-VMAssignableDevice.md @@ -0,0 +1,286 @@ +--- +description: Assigns a device to a virtual machine. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/add-vmassignabledevice?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Add-VMAssignableDevice +--- + +# Add-VMAssignableDevice + +## SYNOPSIS +Adds an assignable device to a specific virtual machine. + +## SYNTAX + +### VMName (Default) + +``` +Add-VMAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-VMName] [-InstancePath ] + [-LocationPath ] [-VirtualFunction ] [-ResourcePoolName ] [-Passthru] + [-WhatIf] [-Confirm] [] +``` + +### VMObject + +``` +Add-VMAssignableDevice [-VM] [-InstancePath ] [-LocationPath ] + [-VirtualFunction ] [-ResourcePoolName ] [-Passthru] [-WhatIf] [-Confirm] + [] +``` + +## DESCRIPTION + +The `Add-VMAssignableDevice` cmdlet assigns a physical device to a specified virtual machine (VM). +This is commonly used for tasks such as attaching GPUs or network adapters directly to a VM to +enhance performance for specific applications or workloads. The device can be specified through its +instance path, location path, or assignable device object. + +## EXAMPLES + +### Example 1 + +```powershell +Add-VMAssignableDevice -VMName "MyVM" -InstancePath "PCIROOT(0)#PCI(0300)#PCI(0000)" +``` + +This example attaches a physical device, identified by its instance path, to the virtual machine +named **MyVM**. + +### Example 2 + +```powershell +$gpu = Get-VMHostAssignableDevice +Add-VMHostAssignableDevice -HostAssignableDevice $gpu -ResourcePoolName "GpuChildPool" +``` + +This example retrieves a list of GPUs or other assignable devices and adds these devices to a +resource pool named **GpuChildPool**, making the devices available for use by virtual machines in +that resource pool. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on which the assignable devices are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Passthru + +Returns an object for each process that the cmdlet started. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourcePoolName + +Specifies the name of the resource pool to which the device is to be assigned. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VirtualFunction + +Specifies the number of the virtual function (VF) of an SR-IOV-capable network adapter assigned to +the virtual machine. + +```yaml +Type: UInt16 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VM + +Specifies the virtual machine to which the device is to be assigned. + +```yaml +Type: VirtualMachine[] +Parameter Sets: VMObject +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -VMName + +Specifies the name of the virtual machine to which the device is to be assigned. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VirtualMachine[] + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMAssignedDevice + +## NOTES + +## RELATED LINKS + +[Get-VMAssignableDevice](get-vmassignabledevice.md) + +[Remove-VMAssignableDevice](remove-vmassignabledevice.md) diff --git a/docset/winserver2025-ps/hyper-v/Get-VMAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Get-VMAssignableDevice.md new file mode 100644 index 0000000000..66fb3601d4 --- /dev/null +++ b/docset/winserver2025-ps/hyper-v/Get-VMAssignableDevice.md @@ -0,0 +1,194 @@ +--- +description: Retrieves information about a device assigned to a virtual machine. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/get-vmassignabledevice?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-VMAssignableDevice +--- + +# Get-VMAssignableDevice + +## SYNOPSIS +Retrieves information about the assignable device from a specific virtual machine. + +## SYNTAX + +### VMName (Default) + +``` +Get-VMAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-VMName] [-InstancePath ] + [-LocationPath ] [] +``` + +### VMObject + +``` +Get-VMAssignableDevice [-VM] [-InstancePath ] [-LocationPath ] + [] +``` + +## DESCRIPTION + +The `Get-VMAssignableDevice` cmdlet retrieves information about the assignable devices that are +associated with a specific virtual machine (VM). This cmdlet can be used to list all assignable +devices that can be attached to a VM or to retrieve details about specific devices that are already +assigned. The retrieved information can include the device's instance path, location path, and +other relevant properties. + +## EXAMPLES + +### Example 1 + +```powershell +Get-VMAssignableDevice -VMName "MyVM" +``` + +This example retrieves all assignable devices associated with the virtual machine named **MyVM**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts from which the assignable devices are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Retrieves one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VM + +Retrieves the virtual machine which a device is assigned. + +```yaml +Type: VirtualMachine[] +Parameter Sets: VMObject +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -VMName + +Retrieves the names of the assignable devices assigned to the specified virtual machine. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.HyperV.PowerShell.VirtualMachine[] + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMAssignedDevice + +## NOTES + +## RELATED LINKS + +[Add-VMAssignableDevice](add-vmassignabledevice.md) + +[Remove-VMAssignableDevice](remove-vmassignabledevice.md) diff --git a/docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md new file mode 100644 index 0000000000..2f77354c84 --- /dev/null +++ b/docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md @@ -0,0 +1,257 @@ +--- +description: Removes a device assigned to a virtual machine. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/remove-vmassignabledevice?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Remove-VMAssignableDevice +--- + +# Remove-VMAssignableDevice + +## SYNOPSIS +Removes information about the assignable devices from a specific virtual machine. + +## SYNTAX + +### VMName (Default) + +``` +Remove-VMAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-VMName] [-InstancePath ] + [-LocationPath ] [-Passthru] [-WhatIf] [-Confirm] [] +``` + +### Object + +``` +Remove-VMAssignableDevice [-VMAssignableDevice] [-Passthru] [-WhatIf] + [-Confirm] [] +``` + +## DESCRIPTION + +The `Remove-VMAssignableDevice` cmdlet removes an assignable device from a specified virtual +machine (VM). This is often used in scenarios where a physical device, such as a GPU or network +adapter, was previously assigned to a VM and needs to be unassigned. + +## EXAMPLES + +### Example 1 + +```powershell +$params = @{ +VMName = "MyVM" +InstancePath = "PCIROOT(0)#PCI(0300)#PCI(0000)#PCI(0800)#PCI(0000)#PCI(1000)" +} +Remove-VMAssignableDevice $params +``` + +This example removes a specific assignable device, identified by its instance path, from the +virtual machine named **MyVM**. + +### Example 2 + +```powershell +$params = @{ +VMName = "MyVM" +} +$vm = Get-VMAssignableDevice @params | Where-Object { $_.ResourcePoolName -eq "GpuChildPool" } +$vm | Remove-VMAssignableDevice +``` + +This example removes a specific assignable device, identified by the ResourcePoolName property +**GpuChildPool**, from the virtual machine named **MyVM**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Removes the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: VMName +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Passthru + +Returns an object for each process that the cmdlet started. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VMAssignableDevice + +Specifies the assignable device object that you want to remove from the virtual machine. This is +usually an object retrieved from a cmdlet like `Get-VMAssignableDevice`. + +```yaml +Type: VMAssignedDevice[] +Parameter Sets: Object +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -VMName + +Specifies the name of the virtual machine from which you want to remove the assignable device. + +```yaml +Type: String[] +Parameter Sets: VMName +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VMAssignedDevice[] + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMAssignedDevice + +## NOTES + +## RELATED LINKS + +- [Add-VMAssignableDevice](add-vmassignabledevice.md) + +- [Get-VMAssignableDevice](get-vmassignabledevice.md) From ffff4e3a61fa3ef2990be77f9ad676b37e262da1 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 13:21:33 -0400 Subject: [PATCH 37/98] Minor edit --- docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md index 2f77354c84..4f768144a3 100644 --- a/docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md +++ b/docset/winserver2025-ps/hyper-v/Remove-VMAssignableDevice.md @@ -252,6 +252,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMAssignableDevice](add-vmassignabledevice.md) +[Add-VMAssignableDevice](add-vmassignabledevice.md) -- [Get-VMAssignableDevice](get-vmassignabledevice.md) +[Get-VMAssignableDevice](get-vmassignabledevice.md) From 42157ad6b02aed9795277b2d7cbddf80f5260621 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 13:40:51 -0400 Subject: [PATCH 38/98] Removed Example 2 as it belongs to another cmdlet --- .../hyper-v/Add-VMAssignableDevice.md | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Add-VMAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Add-VMAssignableDevice.md index aac6d3bdf3..8524d0f863 100644 --- a/docset/winserver2025-ps/hyper-v/Add-VMAssignableDevice.md +++ b/docset/winserver2025-ps/hyper-v/Add-VMAssignableDevice.md @@ -50,17 +50,6 @@ Add-VMAssignableDevice -VMName "MyVM" -InstancePath "PCIROOT(0)#PCI(0300)#PCI(00 This example attaches a physical device, identified by its instance path, to the virtual machine named **MyVM**. -### Example 2 - -```powershell -$gpu = Get-VMHostAssignableDevice -Add-VMHostAssignableDevice -HostAssignableDevice $gpu -ResourcePoolName "GpuChildPool" -``` - -This example retrieves a list of GPUs or other assignable devices and adds these devices to a -resource pool named **GpuChildPool**, making the devices available for use by virtual machines in -that resource pool. - ## PARAMETERS ### -CimSession From a64971e47c18e891b23ae4eb74b05ae20a9c32e2 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 14:06:30 -0400 Subject: [PATCH 39/98] Updated command set --- .../hyper-v/Add-VMHostAssignableDevice.md | 227 ++++++++++++++++ .../Dismount-VMHostAssignableDevice.md | 225 ++++++++++++++++ .../hyper-v/Get-VMHostAssignableDevice.md | 178 +++++++++++++ .../hyper-v/Mount-VMHostAssignableDevice.md | 232 ++++++++++++++++ .../hyper-v/Remove-VMHostAssignableDevice.md | 248 ++++++++++++++++++ 5 files changed, 1110 insertions(+) create mode 100644 docset/winserver2025-ps/hyper-v/Add-VMHostAssignableDevice.md create mode 100644 docset/winserver2025-ps/hyper-v/Dismount-VMHostAssignableDevice.md create mode 100644 docset/winserver2025-ps/hyper-v/Get-VMHostAssignableDevice.md create mode 100644 docset/winserver2025-ps/hyper-v/Mount-VMHostAssignableDevice.md create mode 100644 docset/winserver2025-ps/hyper-v/Remove-VMHostAssignableDevice.md diff --git a/docset/winserver2025-ps/hyper-v/Add-VMHostAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Add-VMHostAssignableDevice.md new file mode 100644 index 0000000000..faa9a5dff8 --- /dev/null +++ b/docset/winserver2025-ps/hyper-v/Add-VMHostAssignableDevice.md @@ -0,0 +1,227 @@ +--- +description: Assigns a device to a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/add-vmhostassignabledevice?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Add-VMHostAssignableDevice +--- + +# Add-VMHostAssignableDevice + +## SYNOPSIS +Adds an assignable device to a virtual machine (VM) host. + +## SYNTAX + +### Path (Default) + +``` +Add-VMHostAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-Force] [-InstancePath ] [-LocationPath ] + -ResourcePoolName [] +``` + +### Object + +``` +Add-VMHostAssignableDevice [-Force] [-HostAssignableDevice] + -ResourcePoolName [] +``` + +## DESCRIPTION + +The `Add-VMHostAssignableDevice` cmdlet assigns a hardware device to a virtual machine host. You +can add devices to the VM host by providing either the instance or location path of the device, or +by specifying an existing host-assignable device object. + +## EXAMPLES + +### Example 1 + +```powershell +$params = @{ +ComputerName = "MyVM01" +InstancePath = "PCI\VEN_8086&DEV_0F48&SUBSYS_72708086&REV_0B\3&11583659&0&D8" +ResourcePoolName = "MyResourcePool" +} +Add-VMHostAssignableDevice $params +``` + +This example assigns a device identified by its instance path to VM host **MyVM01** within the +resource pool **MyResourcePool**. + +### Example 2 + +```powershell +$gpu = Get-VMHostAssignableDevice +Add-VMHostAssignableDevice -HostAssignableDevice $gpu -ResourcePoolName "GpuChildPool" +``` + +This example retrieves a list of GPUs or other assignable devices and adds these devices to a +resource pool named **GpuChildPool**, making the devices available for use by virtual machines in +that resource pool. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies the name of the Hyper-V host to which the device is to be added. NetBIOS names, IP +addresses, and fully qualified domain names are allowed. The default is the local computer. Use +localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -HostAssignableDevice + +Specifies the device object to be assigned to the virtual machine. + +```yaml +Type: VMHostAssignableDevice[] +Parameter Sets: Object +Aliases: VMHostAssignableDevice + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourcePoolName + +Specifies the name of the resource pool to which the device is assigned. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice[] + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +[Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) + +[Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) + +[Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) + +[Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2025-ps/hyper-v/Dismount-VMHostAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Dismount-VMHostAssignableDevice.md new file mode 100644 index 0000000000..7cd62ac1e9 --- /dev/null +++ b/docset/winserver2025-ps/hyper-v/Dismount-VMHostAssignableDevice.md @@ -0,0 +1,225 @@ +--- +description: Dismounts an assignable device from a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/dismount-vmhostassignabledevice?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Dismount-VMHostAssignableDevice +--- + +# Dismount-VMHostAssignableDevice + +## SYNOPSIS +Dismounts a device from a virtual machine (VM) host. + +## SYNTAX + +``` +Dismount-VMHostAssignableDevice [-InstancePath ] [-LocationPath ] [-Force] + [-Passthru] [-CimSession ] [-ComputerName ] [-Credential ] + [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Dismount-VMHostAssignableDevice` cmdlet is used to dismount an assignable device from the +virtual machine host. Use this cmdlet when you need to reassign a device or resolve conflicts +between devices and virtual machines. + +## EXAMPLES + +### Example 1 + +```powershell +Dismount-VMHostAssignableDevice -InstancePath "PCIROOT(0)#PCI(1D02)#PCI(0000)" +``` + +This example dismounts the device with the specified instance path from the host, making it +available for assignment to a virtual machine. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts from which the assignable devices are to be dismounted. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +Using the **Force** parameter also overrides some security checks in the platform. To learn more, +see [Dismount the device from the host partition +](/windows-server/virtualization/hyper-v/deploy/deploying-graphics-devices-using-dda#dismount-the-device-from-the-host-partition). + +If no partitioning driver is provided, during dismount, you must use `-Force` to bypass the +security warning. For more information about the security implications, see [Plan for deploying devices by using Discrete Device Assignment](/windows-server/virtualization/hyper-v/plan/plan-for-deploying-devices-using-discrete-device-assignment). + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Passthru + +Returns an object for each process that the cmdlet started. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice + +## NOTES + +## RELATED LINKS + +[Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) + +[Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) + +[Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) + +[Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2025-ps/hyper-v/Get-VMHostAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Get-VMHostAssignableDevice.md new file mode 100644 index 0000000000..cd83f1711c --- /dev/null +++ b/docset/winserver2025-ps/hyper-v/Get-VMHostAssignableDevice.md @@ -0,0 +1,178 @@ +--- +description: Retrieves information about an assignable device to a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/get-vmhostassignabledevice?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-VMHostAssignableDevice +--- + +# Get-VMHostAssignableDevice + +## SYNOPSIS +Retrieves device information assigned to a virtual machine (VM) host. + +## SYNTAX + +``` +Get-VMHostAssignableDevice [-InstancePath ] [-LocationPath ] + [-ResourcePoolName ] [-CimSession ] [-ComputerName ] + [-Credential ] [] +``` + +## DESCRIPTION + +The `Get-VMHostAssignableDevice` cmdlet retrieves information about devices that can be assigned to +a virtual machine host. This can include devices such as GPUs, network adapters, or storage +controllers that are physically present on the host system. The cmdlet can filter devices by their +instance path or location path. + +## EXAMPLES + +### Example 1 + +```powershell +Get-VMHostAssignableDevice +``` + +This example retrieves all assignable devices on the host computer. + +### Example 2 + +```powershell +Get-VMHostAssignableDevice -ComputerName "MyHost" +``` + +In this example, the cmdlet retrieves all assignable devices from the computer named **MyHost**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts from which the assignable devices are to be retrieved. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourcePoolName + +Retrieves the name of the resource pool to which the device is assigned. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice + +## NOTES + +## RELATED LINKS + +[Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) + +[Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) + +[Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) + +[Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2025-ps/hyper-v/Mount-VMHostAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Mount-VMHostAssignableDevice.md new file mode 100644 index 0000000000..da5e197134 --- /dev/null +++ b/docset/winserver2025-ps/hyper-v/Mount-VMHostAssignableDevice.md @@ -0,0 +1,232 @@ +--- +description: Mounts an assignable device to a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/mount-vmhostassignabledevice?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Mount-VMHostAssignableDevice +--- + +# Mount-VMHostAssignableDevice + +## SYNOPSIS +Mounts a device to a virtual machine (VM) host. + +## SYNTAX + +### Path (Default) + +``` +Mount-VMHostAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-InstancePath ] [-LocationPath ] [-Passthru] + [-WhatIf] [-Confirm] [] +``` + +### Object + +``` +Mount-VMHostAssignableDevice [-HostAssignableDevice] [-Passthru] + [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Mount-VMHostAssignableDevice` cmdlet mounts a device such as GPUs, network adapters, or storage +controllers that are physically present on the virtual machine host. + +## EXAMPLES + +### Example 1 + +```powershell +$device = Get-VMHostAssignableDevice -InstancePath "PCIROOT(0)#PCI(0300)#PCI(0000)" +$params = @{ +HostAssignableDevice = $device +VMName = "MyVM" +} +Mount-VMHostAssignableDevice @params +``` + +In this example, the `Get-VMHostAssignableDevice` cmdlet retrieves the device with the specified +instance path and stores it in the `$device` variable. The `Mount-VMHostAssignableDevice` cmdlet +then assigns this device to the virtual machine named **MyVM**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts from which the assignable devices are to be mounted. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -HostAssignableDevice + +Specifies the assignable device to be mounted on the virtual machine host. + +```yaml +Type: VMHostAssignableDevice[] +Parameter Sets: Object +Aliases: VMHostAssignableDevice + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -InstancePath + +Represents the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Passthru + +Returns an object for each process that the cmdlet started. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice[] + +## OUTPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice + +## NOTES + +## RELATED LINKS + +[Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) + +[Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) + +[Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) + +[Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2025-ps/hyper-v/Remove-VMHostAssignableDevice.md b/docset/winserver2025-ps/hyper-v/Remove-VMHostAssignableDevice.md new file mode 100644 index 0000000000..1fbb70bdab --- /dev/null +++ b/docset/winserver2025-ps/hyper-v/Remove-VMHostAssignableDevice.md @@ -0,0 +1,248 @@ +--- +description: Removes an assignable device from a virtual machine host. +external help file: Microsoft.HyperV.PowerShell.Cmdlets.dll-Help.xml +Module Name: Hyper-V +ms.date: 06/12/2024 +online version: https://learn.microsoft.com/powershell/module/hyper-v/remove-vmhostassignabledevice?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Remove-VMHostAssignableDevice +--- + +# Remove-VMHostAssignableDevice + +## SYNOPSIS +Removes a device assigned to a virtual machine (VM) host. + +## SYNTAX + +### Path (Default) + +``` +Remove-VMHostAssignableDevice [-CimSession ] [-ComputerName ] + [-Credential ] [-InstancePath ] [-LocationPath ] + -ResourcePoolName [-Force] [-WhatIf] [-Confirm] [] +``` + +### Object + +``` +Remove-VMHostAssignableDevice [-HostAssignableDevice] + -ResourcePoolName [-Force] [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Remove-VMHostAssignableDevice` cmdlet removes a device that is assigned to a virtual machine +host. Depending on the parameters specified, you can remove devices by providing either the +instance or location path of the device. + +## EXAMPLES + +### Example 1 + +```powershell +$params = @{ +InstancePath = "PCIROOT(0)#PCI(0300)#PCI(0000)" +ResourcePoolName = "MyResourcePool" +} +Remove-VMHostAssignableDevice $params +``` + +This example removes the device with the specified instance path from the resource pool named +**MyResourcePool**. + +## PARAMETERS + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ComputerName + +Specifies one or more Hyper-V hosts from which the assignable devices are to be removed. NetBIOS +names, IP addresses, and fully qualified domain names are allowed. The default is the local +computer. Use localhost or a dot (`.`) to specify the local computer explicitly. + +```yaml +Type: String[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +Specifies one or more user accounts that have permission to perform this action. The default is the +current user. + +```yaml +Type: PSCredential[] +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -HostAssignableDevice + +Specifies the device object to be removed. You can get this object using +`Get-VMHostAssignableDevice`. + +```yaml +Type: VMHostAssignableDevice[] +Parameter Sets: Object +Aliases: VMHostAssignableDevice + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -InstancePath + +Specifies the Device Instance path in the host machine. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LocationPath + +Specifies the location path to the assignable device. + +```yaml +Type: String +Parameter Sets: Path +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourcePoolName + +Specifies the name of the resource pool from which to remove an assignable device. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### Microsoft.HyperV.PowerShell.VMHostAssignableDevice[] + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +[Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) + +[Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) + +[Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) + +[Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) From a588978410a4ecff1dbdf7f1c7c9e8a7ba8427a9 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 14:41:49 -0400 Subject: [PATCH 40/98] Updated Hyper-V cmdlet list --- .../hyper-v/Get-VMAssignableDevice.md | 4 +-- docset/winserver2022-ps/hyper-v/Hyper-V.md | 29 ++++++++++++++++--- .../hyper-v/Remove-VMAssignableDevice.md | 4 +-- 3 files changed, 29 insertions(+), 8 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md index 8a2ef945df..c02ee74aaa 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMAssignableDevice.md @@ -189,6 +189,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMAssignableDevice](add-vmassignabledevice.md) +[Add-VMAssignableDevice](add-vmassignabledevice.md) -- [Remove-VMAssignableDevice](remove-vmassignabledevice.md) +[Remove-VMAssignableDevice](remove-vmassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Hyper-V.md b/docset/winserver2022-ps/hyper-v/Hyper-V.md index d98210af0e..6e76f92be7 100644 --- a/docset/winserver2022-ps/hyper-v/Hyper-V.md +++ b/docset/winserver2022-ps/hyper-v/Hyper-V.md @@ -5,7 +5,7 @@ Help Version: 5.0.2.1 Locale: en-US Module Guid: af4bddd0-8583-4ff2-84b2-a33f5c8de8a7 Module Name: Hyper-V -ms.date: 12/20/2016 +ms.date: 06/12/2024 title: Hyper-V --- # Hyper-V Module @@ -16,6 +16,9 @@ This reference provides cmdlet descriptions and syntax for all Hyper-V-specific ## Hyper-V Cmdlets +### [Add-VMAssignableDevice](./Add-VMAssignableDevice.md) +Adds an assignable device to a specific virtual machine. + ### [Add-VMDvdDrive](./Add-VMDvdDrive.md) Adds a DVD drive to a virtual machine. @@ -31,6 +34,9 @@ Adds group members to a virtual machine group. ### [Add-VMHardDiskDrive](./Add-VMHardDiskDrive.md) Adds a hard disk drive to a virtual machine. +### [Add-VMHostAssignableDevice](./Add-VMHostAssignableDevice.md) +Adds an assignable device to a virtual machine (VM) host. + ### [Add-VMMigrationNetwork](./Add-VMMigrationNetwork.md) Adds a network for virtual machine migration on one or more virtual machine hosts. @@ -124,6 +130,9 @@ Removes a host bus adapter from a virtual storage area network (SAN). ### [Dismount-VHD](./Dismount-VHD.md) Dismounts a virtual hard disk. +### [Dismount-VMHostAssignableDevice](./Dismount-VMHostAssignableDevice.md) +Dismounts a device from a virtual machine (VM) host. + ### [Enable-VMConsoleSupport](./Enable-VMConsoleSupport.md) Enables keyboard, video, and mouse for virtual machines. @@ -169,6 +178,9 @@ Gets information about a checkpoint in a VHD set. ### [Get-VM](./Get-VM.md) Gets the virtual machines from one or more Hyper-V hosts. +### [Get-VMAssignableDevice](./Get-VMAssignableDevice.md) +Retrieves information about the assignable device from a specific virtual machine. + ### [Get-VMBios](./Get-VMBios.md) Gets the BIOS of a virtual machine or snapshot. @@ -202,6 +214,9 @@ Gets the virtual hard disk drives attached to one or more virtual machines. ### [Get-VMHost](./Get-VMHost.md) Gets a Hyper-V host. +### [Get-VMHostAssignableDevice](./Get-VMHostAssignableDevice.md) +Retrieves device information assigned to a virtual machine (VM) host. + ### [Get-VMHostCluster](./Get-VMHostCluster.md) Gets virtual machine host clusters. @@ -252,7 +267,6 @@ Gets members of a routing domain. ### [Get-VMNetworkAdapterTeamMapping](./Get-VMNetworkAdapterTeamMapping.md) - ### [Get-VMNetworkAdapterVlan](./Get-VMNetworkAdapterVlan.md) Gets the virtual LAN settings configured on a virtual network adapter. @@ -349,6 +363,9 @@ Merges virtual hard disks. ### [Mount-VHD](./Mount-VHD.md) Mounts one or more virtual hard disks. +### [Mount-VMHostAssignableDevice](./Mount-VMHostAssignableDevice.md) +Mounts a device to a virtual machine (VM) host. + ### [Move-VM](./Move-VM.md) Moves a virtual machine to a new Hyper-V host. @@ -391,6 +408,9 @@ Removes a checkpoint from a VHD set file. ### [Remove-VM](./Remove-VM.md) Deletes a virtual machine. +### [Remove-VMAssignableDevice](./Remove-VMAssignableDevice.md) +Removes information about the assignable devices from a specific virtual machine. + ### [Remove-VMDvdDrive](./Remove-VMDvdDrive.md) Deletes a DVD drive from a virtual machine. @@ -409,6 +429,9 @@ Removes members from a virtual machine group. ### [Remove-VMHardDiskDrive](./Remove-VMHardDiskDrive.md) Deletes a hard disk drive from a virtual machine. +### [Remove-VMHostAssignableDevice](./Remove-VMHostAssignableDevice.md) +Removes a device assigned to a virtual machine (VM) host. + ### [Remove-VMMigrationNetwork](./Remove-VMMigrationNetwork.md) Removes a network from use with migration. @@ -426,7 +449,6 @@ Removes a routing domain from a virtual network adapter. ### [Remove-VMNetworkAdapterTeamMapping](./Remove-VMNetworkAdapterTeamMapping.md) - ### [Remove-VMRemoteFx3dVideoAdapter](./Remove-VMRemoteFx3dVideoAdapter.md) Removes a RemoteFX 3D video adapter from a virtual machine. @@ -579,7 +601,6 @@ Sets virtual subnets on a routing domain. ### [Set-VMNetworkAdapterTeamMapping](./Set-VMNetworkAdapterTeamMapping.md) - ### [Set-VMNetworkAdapterVlan](./Set-VMNetworkAdapterVlan.md) Configures the virtual LAN settings for the traffic through a virtual network adapter. diff --git a/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md index 31f45152d7..66ec201bb8 100644 --- a/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Remove-VMAssignableDevice.md @@ -239,6 +239,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMAssignableDevice](add-vmassignabledevice.md) +[Add-VMAssignableDevice](add-vmassignabledevice.md) -- [Get-VMAssignableDevice](get-vmassignabledevice.md) +[Get-VMAssignableDevice](get-vmassignabledevice.md) From 0f66787e796a5cb946905d8d3d3bd708794ec567 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 14:53:59 -0400 Subject: [PATCH 41/98] Fixing indents --- .../hyper-v/Add-VMHostAssignableDevice.md | 8 ++++---- .../hyper-v/Dismount-VMHostAssignableDevice.md | 8 ++++---- .../hyper-v/Get-VMHostAssignableDevice.md | 8 ++++---- .../hyper-v/Mount-VMHostAssignableDevice.md | 8 ++++---- .../hyper-v/Remove-VMHostAssignableDevice.md | 8 ++++---- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md index 45e83dcdd1..efd17eaf02 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMHostAssignableDevice.md @@ -207,10 +207,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) +[Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) -- [Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) +[Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) -- [Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) +[Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) -- [Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) +[Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md index 67082c38d6..a2853e7371 100644 --- a/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Dismount-VMHostAssignableDevice.md @@ -216,10 +216,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) +[Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) -- [Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) +[Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) -- [Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) +[Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) -- [Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) +[Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md index 7519405bfe..21710a4e47 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMHostAssignableDevice.md @@ -169,10 +169,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) +[Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) -- [Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) +[Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) -- [Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) +[Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) -- [Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) +[Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md index 7c27dffc06..f369872edc 100644 --- a/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Mount-VMHostAssignableDevice.md @@ -223,10 +223,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) +[Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) -- [Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) +[Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) -- [Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) +[Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) -- [Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) +[Remove-VMHostAssignableDevice](remove-vmhostassignabledevice.md) diff --git a/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md b/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md index 093e9ad96e..fa796cc38e 100644 --- a/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md +++ b/docset/winserver2022-ps/hyper-v/Remove-VMHostAssignableDevice.md @@ -239,10 +239,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) +[Add-VMHostAssignableDevice](add-vmhostassignabledevice.md) -- [Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) +[Get-VMHostAssignableDevice](get-vmhostassignabledevice.md) -- [Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) +[Dismount-VMHostAssignableDevice](dismount-vmhostassignabledevice.md) -- [Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) +[Mount-VMHostAssignableDevice](mount-vmhostassignabledevice.md) From 2c4d896678d1542c631430cb5548d784c764afe4 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 15:00:32 -0400 Subject: [PATCH 42/98] Fixing indents --- .../winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md | 6 +++--- .../winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md | 6 +++--- .../hyper-v/Remove-VMGpuPartitionAdapter.md | 6 +++--- .../winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md index a94f869a7c..db45b5514f 100644 --- a/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Add-VMGpuPartitionAdapter.md @@ -439,8 +439,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) +[Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) -- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) +[Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) -- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) +[Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md index 32775b771d..ac4dfa9373 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMGpuPartitionAdapter.md @@ -172,8 +172,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) +[Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) -- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) +[Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) -- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) +[Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2022-ps/hyper-v/Remove-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Remove-VMGpuPartitionAdapter.md index 503ba2b8cb..c56b987873 100644 --- a/docset/winserver2022-ps/hyper-v/Remove-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Remove-VMGpuPartitionAdapter.md @@ -254,8 +254,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) +[Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) -- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) +[Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) -- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) +[Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) diff --git a/docset/winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md b/docset/winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md index 58446c4185..cbbc027a4e 100644 --- a/docset/winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md +++ b/docset/winserver2022-ps/hyper-v/Set-VMGpuPartitionAdapter.md @@ -460,8 +460,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) +[Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) -- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) +[Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) -- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) +[Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) From df69d6ced55b8eb2d11730f287415305162c40b1 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 15:06:02 -0400 Subject: [PATCH 43/98] Fixing indents --- docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md | 2 +- docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md b/docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md index c436d9573f..21c54739a9 100644 --- a/docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md +++ b/docset/winserver2022-ps/hyper-v/Get-VMHostPartitionableGpu.md @@ -152,4 +152,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Set-VMHostPartitionableGpu](set-vmhostpartitionablegpu.md) +[Set-VMHostPartitionableGpu](set-vmhostpartitionablegpu.md) diff --git a/docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md b/docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md index 18d7b5f8fa..3a2bf70ec7 100644 --- a/docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md +++ b/docset/winserver2022-ps/hyper-v/Set-VMHostPartitionableGpu.md @@ -207,4 +207,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Get-VMHostPartitionableGpu](get-vmhostpartitionablegpu.md) +[Get-VMHostPartitionableGpu](get-vmhostpartitionablegpu.md) From 4e920c0a4c4ccc5c2db23668dcad39cce52c8b22 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 8 Jul 2024 15:11:59 -0400 Subject: [PATCH 44/98] Updated Hyper-V cmdlet list --- docset/winserver2025-ps/hyper-v/Hyper-V.md | 29 +++++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Hyper-V.md b/docset/winserver2025-ps/hyper-v/Hyper-V.md index a78f953d39..32b28c8a90 100644 --- a/docset/winserver2025-ps/hyper-v/Hyper-V.md +++ b/docset/winserver2025-ps/hyper-v/Hyper-V.md @@ -5,7 +5,7 @@ Help Version: 5.0.2.1 Locale: en-US Module Guid: af4bddd0-8583-4ff2-84b2-a33f5c8de8a7 Module Name: Hyper-V -ms.date: 12/20/2016 +ms.date: 06/12/2024 title: Hyper-V --- # Hyper-V Module @@ -16,6 +16,9 @@ This reference provides cmdlet descriptions and syntax for all Hyper-V-specific ## Hyper-V Cmdlets +### [Add-VMAssignableDevice](./Add-VMAssignableDevice.md) +Adds an assignable device to a specific virtual machine. + ### [Add-VMDvdDrive](./Add-VMDvdDrive.md) Adds a DVD drive to a virtual machine. @@ -31,6 +34,9 @@ Adds group members to a virtual machine group. ### [Add-VMHardDiskDrive](./Add-VMHardDiskDrive.md) Adds a hard disk drive to a virtual machine. +### [Add-VMHostAssignableDevice](./Add-VMHostAssignableDevice.md) +Adds an assignable device to a virtual machine (VM) host. + ### [Add-VMMigrationNetwork](./Add-VMMigrationNetwork.md) Adds a network for virtual machine migration on one or more virtual machine hosts. @@ -124,6 +130,9 @@ Removes a host bus adapter from a virtual storage area network (SAN). ### [Dismount-VHD](./Dismount-VHD.md) Dismounts a virtual hard disk. +### [Dismount-VMHostAssignableDevice](./Dismount-VMHostAssignableDevice.md) +Dismounts a device from a virtual machine (VM) host. + ### [Enable-VMConsoleSupport](./Enable-VMConsoleSupport.md) Enables keyboard, video, and mouse for virtual machines. @@ -169,6 +178,9 @@ Gets information about a checkpoint in a VHD set. ### [Get-VM](./Get-VM.md) Gets the virtual machines from one or more Hyper-V hosts. +### [Get-VMAssignableDevice](./Get-VMAssignableDevice.md) +Retrieves information about the assignable device from a specific virtual machine. + ### [Get-VMBios](./Get-VMBios.md) Gets the BIOS of a virtual machine or snapshot. @@ -202,6 +214,9 @@ Gets the virtual hard disk drives attached to one or more virtual machines. ### [Get-VMHost](./Get-VMHost.md) Gets a Hyper-V host. +### [Get-VMHostAssignableDevice](./Get-VMHostAssignableDevice.md) +Retrieves device information assigned to a virtual machine (VM) host. + ### [Get-VMHostCluster](./Get-VMHostCluster.md) Gets virtual machine host clusters. @@ -252,7 +267,6 @@ Gets members of a routing domain. ### [Get-VMNetworkAdapterTeamMapping](./Get-VMNetworkAdapterTeamMapping.md) - ### [Get-VMNetworkAdapterVlan](./Get-VMNetworkAdapterVlan.md) Gets the virtual LAN settings configured on a virtual network adapter. @@ -349,6 +363,9 @@ Merges virtual hard disks. ### [Mount-VHD](./Mount-VHD.md) Mounts one or more virtual hard disks. +### [Mount-VMHostAssignableDevice](./Mount-VMHostAssignableDevice.md) +Mounts a device to a virtual machine (VM) host. + ### [Move-VM](./Move-VM.md) Moves a virtual machine to a new Hyper-V host. @@ -391,6 +408,9 @@ Removes a checkpoint from a VHD set file. ### [Remove-VM](./Remove-VM.md) Deletes a virtual machine. +### [Remove-VMAssignableDevice](./Remove-VMAssignableDevice.md) +Removes information about the assignable devices from a specific virtual machine. + ### [Remove-VMDvdDrive](./Remove-VMDvdDrive.md) Deletes a DVD drive from a virtual machine. @@ -409,6 +429,9 @@ Removes members from a virtual machine group. ### [Remove-VMHardDiskDrive](./Remove-VMHardDiskDrive.md) Deletes a hard disk drive from a virtual machine. +### [Remove-VMHostAssignableDevice](./Remove-VMHostAssignableDevice.md) +Removes a device assigned to a virtual machine (VM) host. + ### [Remove-VMMigrationNetwork](./Remove-VMMigrationNetwork.md) Removes a network from use with migration. @@ -426,7 +449,6 @@ Removes a routing domain from a virtual network adapter. ### [Remove-VMNetworkAdapterTeamMapping](./Remove-VMNetworkAdapterTeamMapping.md) - ### [Remove-VMRemoteFx3dVideoAdapter](./Remove-VMRemoteFx3dVideoAdapter.md) Removes a RemoteFX 3D video adapter from a virtual machine. @@ -579,7 +601,6 @@ Sets virtual subnets on a routing domain. ### [Set-VMNetworkAdapterTeamMapping](./Set-VMNetworkAdapterTeamMapping.md) - ### [Set-VMNetworkAdapterVlan](./Set-VMNetworkAdapterVlan.md) Configures the virtual LAN settings for the traffic through a virtual network adapter. From 6af3e0480eacb30856fdfe57e58364ddb56657cf Mon Sep 17 00:00:00 2001 From: David Strome <21028455+dstrome@users.noreply.github.com> Date: Tue, 9 Jul 2024 11:58:47 -0700 Subject: [PATCH 45/98] Create ContentOwners.txt --- ContentOwners.txt | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 ContentOwners.txt diff --git a/ContentOwners.txt b/ContentOwners.txt new file mode 100644 index 0000000000..e92052d1f4 --- /dev/null +++ b/ContentOwners.txt @@ -0,0 +1,9 @@ + +# Each line is a file pattern followed by one or more owners. + +# Order is important! The last matching pattern has the most precedence. +# So if a pull request only touches javascript files, only these owners +# will be requested to review. + +/docset/ @officedocspr + From 4f3fab53ab716e14c84c77d0d0a1498376072f58 Mon Sep 17 00:00:00 2001 From: Gary Moore Date: Wed, 10 Jul 2024 13:29:42 -0400 Subject: [PATCH 46/98] Replace officedocspr (the void) with Robin Harwood --- ContentOwners.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ContentOwners.txt b/ContentOwners.txt index e92052d1f4..e44f0a60e3 100644 --- a/ContentOwners.txt +++ b/ContentOwners.txt @@ -5,5 +5,5 @@ # So if a pull request only touches javascript files, only these owners # will be requested to review. -/docset/ @officedocspr +/docset/ @roharwoo From 46e9e7d1a51fa6bb84a6ec1331e04ac922c33543 Mon Sep 17 00:00:00 2001 From: MattTB <49200399+mtrilbybassett@users.noreply.github.com> Date: Wed, 10 Jul 2024 15:32:16 -0400 Subject: [PATCH 47/98] Update Add-VMGpuPartitionAdapter.md --- .../winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md b/docset/winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md index 81e37bb922..df04c023ca 100644 --- a/docset/winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Add-VMGpuPartitionAdapter.md @@ -439,8 +439,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) +[Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) -- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) +[Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) -- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) +[Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) From 26b3086e09cd40f7552f37c752f4a818363b1509 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 15 Jul 2024 11:24:55 -0400 Subject: [PATCH 48/98] 2nd pass --- .../Add-CauClusterRole.md | 29 ++-- .../ClusterAwareUpdating.md | 2 - .../Enable-CauClusterRole.md | 42 +++-- .../Get-CauDeviceInfoForFeatureUpdates.md | 13 +- .../clusterawareupdating/Get-CauReport.md | 17 +-- .../clusterawareupdating/Invoke-CauRun.md | 115 +++++++------- .../clusterawareupdating/Invoke-CauScan.md | 69 +++++---- .../Register-CauPlugin.md | 41 +++-- .../Save-CauDebugTrace.md | 9 +- .../Set-CauClusterRole.md | 144 +++++++++--------- 10 files changed, 258 insertions(+), 223 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index f7fea7b583..b074052396 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -229,7 +229,7 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the default name DefaultHotfixConfigFile.xml is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see - [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). + [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] @@ -631,13 +631,20 @@ Accept wildcard characters: False ### -RebootMode -{{ Fill RebootMode Description }} +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType Parameter Sets: (All) Aliases: -Accepted values: ClusProp, FullReboot, SoftReboot +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault Required: False Position: Named @@ -682,7 +689,8 @@ Accept wildcard characters: False ### -RunOnce -{{ Fill RunOnce Description }} +Specifies that the CAU run should only be performed once, rather than on a recurring schedule. This +can be useful if you only need to perform a one-time update of your cluster nodes. ```yaml Type: SwitchParameter @@ -934,7 +942,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -948,13 +956,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Disable-CauClusterRole](./Disable-CauClusterRole.md) - -[Enable-CauClusterRole](./Enable-CauClusterRole.md) +[Disable-CauClusterRole](disable-cauclusterrole.md) -[Get-CauClusterRole](./Get-CauClusterRole.md) +[Enable-CauClusterRole](enable-cauclusterrole.md) -[Remove-CauClusterRole](./Remove-CauClusterRole.md) +[Get-CauClusterRole](get-cauclusterrole.md) -[Set-CauClusterRole](./Set-CauClusterRole.md) +[Remove-CauClusterRole](remove-cauclusterrole.md) +[Set-CauClusterRole](set-cauclusterrole.md) diff --git a/docset/winserver2022-ps/clusterawareupdating/ClusterAwareUpdating.md b/docset/winserver2022-ps/clusterawareupdating/ClusterAwareUpdating.md index d0dc4a2f3a..21cd1c8819 100644 --- a/docset/winserver2022-ps/clusterawareupdating/ClusterAwareUpdating.md +++ b/docset/winserver2022-ps/clusterawareupdating/ClusterAwareUpdating.md @@ -72,5 +72,3 @@ Tests whether a cluster is properly set up to apply software updates using CAU. ### [Unregister-CauPlugin](./Unregister-CauPlugin.md) Removes a software updating plug-in from the list of plug-ins that are used by CAU. - - diff --git a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md index 7634c34aa0..bddf7addce 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md @@ -34,7 +34,7 @@ cluster. The self-updating functionality of the cluster can be disabled with the Enable-CauClusterRole -ClusterName "CONTOSO-FC1" -Force ``` -This command enables the CAU clustered role on the CONTOSO-FC1 cluster to begin performing Updating +This command enables the CAU clustered role on the `CONTOSO-FC1` cluster to begin performing Updating Runs. The cmdlet changes the status of the CAU clustered role to Running. The cmdlet runs without displaying confirmation prompts, as the **Force** parameter was used. @@ -58,28 +58,28 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -Confirm +### -Credential -Prompts you for confirmation before running the cmdlet. +Specifies the administrative credentials for the target cluster. ```yaml -Type: SwitchParameter +Type: PSCredential Parameter Sets: (All) -Aliases: cf +Aliases: Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` -### -Credential +### -Force -Specifies the administrative credentials for the target cluster. +Forces the command to run without asking for user confirmation. ```yaml -Type: PSCredential +Type: SwitchParameter Parameter Sets: (All) Aliases: @@ -90,26 +90,25 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -Force +### -Confirm -Forces the command to run without asking for user confirmation. +Prompts you for confirmation before running the cmdlet. ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: cf Required: False Position: Named -Default value: None +Default value: False Accept pipeline input: False Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet isn't run. +Shows what would happen if the cmdlet runs. The cmdlet isn't run. ```yaml Type: SwitchParameter @@ -128,7 +127,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -142,13 +141,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-CauClusterRole](./Add-CauClusterRole.md) - -[Disable-CauClusterRole](./Disable-CauClusterRole.md) +[Add-CauClusterRole](add-cauclusterrole.md) -[Get-CauClusterRole](./Get-CauClusterRole.md) +[Disable-CauClusterRole](disable-cauclusterrole.md) -[Remove-CauClusterRole](./Remove-CauClusterRole.md) +[Get-CauClusterRole](get-cauclusterrole.md) -[Set-CauClusterRole](./Set-CauClusterRole.md) +[Remove-CauClusterRole](remove-cauclusterrole.md) +[Set-CauClusterRole](set-cauclusterrole.md) diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md index 59bfe3bf4a..fffdccf441 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md @@ -22,7 +22,8 @@ Get-CauDeviceInfoForFeatureUpdates [[-ClusterName] ] [-Credential ] [-Last] [-Detailed] [-Credential ] [-Report ] [-Credential ] - [] +Get-CauReport [[-ClusterName] ] [-Report ] + [-Credential ] [] ``` ## DESCRIPTION @@ -62,8 +62,8 @@ Updating (CAU) report summary object. Get-CauReport -ClusterName Contoso-FC1 -StartDate 01/01/2012 -Detailed ``` -This command gets a detailed list of the updating runs performed on the cluster named Contoso-FC1 on -01/01/2012 or later. +This command gets a detailed list of the updating runs performed on the cluster named `Contoso-FC1` +on 01/01/2012 or later. ### Example 2: Get a detailed list of updating runs from a date span from the specified cluster @@ -71,7 +71,7 @@ This command gets a detailed list of the updating runs performed on the cluster Get-CauReport -ClusterName "Contoso-FC1" -StartDate 01/01/2012 -EndDate 04/01/2012 -Detailed ``` -This command gets a detailed list of the updating runs performed on the cluster called Contoso-FC1 +This command gets a detailed list of the updating runs performed on the cluster called `Contoso-FC1` starting with updating runs on 01/01/2012 and ending with updating runs on 04/01/2012. ### Example 3: Get the last updating run summary from the specified cluster @@ -81,7 +81,7 @@ $CauReportSummary = Get-CauReport "Contoso-FC1" -Last Get-CauReport "Contoso-FC1" -Report $CauReportSummary ``` -The first command gets the last updating run report summary from the cluster named Contoso-FC1 and +The first command gets the last updating run report summary from the cluster named `Contoso-FC1` and stores the result in the variable named `$CauReportSummary`. The second command gets the detailed report from the information stored in the `$CauReportSummary` @@ -208,7 +208,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -224,5 +224,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Export-CauReport](./Export-CauReport.md) - +[Export-CauReport](export-caureport.md) diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md index 2a07458316..20aa940ffd 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md @@ -20,13 +20,13 @@ Performs a scan of cluster nodes for applicable updates and installs those updat ``` Invoke-CauRun [-MaxFailedNodes ] [-MaxRetriesPerNode ] [-NodeOrder ] [-PreUpdateScript ] [-PostUpdateScript ] [-ConfigurationName ] - [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] [-RebootTimeoutMinutes ] - [-SeparateReboots] [-EnableFirewallRules] [-FailbackMode ] - [-SuspendClusterNodeTimeoutMinutes ] [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrain] - [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] [-ForceSelfUpdate] [-SiteAwareUpdatingOrder ] - [[-ClusterName] ] [[-CauPluginName] ] [[-Credential] ] - [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] [-OsRollingUpgrade] - [-AttemptSoftReboot] [-RebootMode ] [-WhatIf] [-Confirm] [] + [-RequireAllNodesOnline] [-WarnAfter ] [-StopAfter ] + [-RebootTimeoutMinutes ] [-SeparateReboots] [-EnableFirewallRules] + [-FailbackMode ] [-SuspendClusterNodeTimeoutMinutes ] [-Force] + [-ForcePauseNoDrain] [-ForcePauseAndDrain] [-ForcePauseDrainAndReboot] [-SkipUpdateChecks] + [-ForceSelfUpdate] [-SiteAwareUpdatingOrder ] [[-ClusterName] ] + [[-CauPluginName] ] [[-Credential] ] [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] [-OsRollingUpgrade] [-AttemptSoftReboot] + [-RebootMode ] [-WhatIf] [-Confirm] [] ``` ### RecoverParamSet @@ -42,18 +42,19 @@ Invoke-CauRun [-ForceRecovery] [-Force] [-ForcePauseNoDrain] [-ForcePauseAndDrai The `Invoke-CauRun` cmdlet performs a scan of cluster nodes for applicable updates and installs those updates through an updating run on the specified cluster. The updating run process includes the following: -- Scanning for and downloading applicable updates on each cluster node. -- Moving currently running clustered roles off each cluster node. -- Installing the updates on each cluster node. -- Restarting cluster nodes if required by the installed updates. -- Moving the clustered roles back to the original nodes. + +- Scanning for and downloading applicable updates on each cluster node. +- Moving currently running clustered roles off each cluster node. +- Installing the updates on each cluster node. +- Restarting cluster nodes if required by the installed updates. +- Moving the clustered roles back to the original nodes. - The updating run process also includes ensuring that quorum is maintained, checking for additional updates that can only be installed after the initial set of updates are installed, and saving a report of the actions taken. -To run this cmdlet with the **PostUpdateScript** or **PreUpdateScript** parameter, Windows PowerShell -remoting must be enabled on each node. To do this, run the `Enable-PSRemoting` cmdlet. In -addition, ensure that the **Windows Remote Management - Compatibility Mode (HTTP-In)** firewall +To run this cmdlet with the **PostUpdateScript** or **PreUpdateScript** parameter, Windows +PowerShell remoting must be enabled on each node. To do this, run the `Enable-PSRemoting` cmdlet. +In addition, ensure that the **Windows Remote Management - Compatibility Mode (HTTP-In)** firewall exception is enabled on each node. ## EXAMPLES @@ -72,12 +73,12 @@ $parameters = @{ Invoke-CauRun @parameters ``` -This command performs a scan and a full updating run on the cluster named CONTOSO-FC1. This cmdlet -uses the **Microsoft.WindowsUpdatePlugin** plug-in and requires that all cluster nodes be online -before the running this cmdlet. In addition, this cmdlet allows no more than three retries per node -before marking the node as failed, and allows no more than one node to fail before marking the -entire updating run as failed. Because the command specifies the **Force** parameter, the cmdlet runs -without displaying confirmation prompts. +This command performs a scan and a full updating run on the cluster named `CONTOSO-FC1`. This +cmdlet uses the **Microsoft.WindowsUpdatePlugin** plug-in and requires that all cluster nodes be +online before the running this cmdlet. In addition, this cmdlet allows no more than three retries +per node before marking the node as failed, and allows no more than one node to fail before marking +the entire updating run as failed. Because the command specifies the **Force** parameter, the +cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -99,7 +100,7 @@ $parameters = @{ Invoke-CauRun @parameters ``` -This command performs a scan and a full updating run on the cluster named CONTOSO-FC1. This cmdlet +This command performs a scan and a full updating run on the cluster named `CONTOSO-FC1`. This cmdlet uses the **Microsoft.WindowsUpdatePlugin** plug-in with the default configuration, and the **Microsoft.HotfixPlugin** plug-in using the hotfix root folder `\\CauHotfixSrv\shareName` and the default hotfix configuration file. If it isn't already enabled, the **Remote Shutdown** Windows @@ -120,8 +121,8 @@ Invoke-CauRun -ClusterName "CONTOSO-FC1"-ForceRecovery -Force ``` This command recovers from a previous updating run that failed and left the cluster in a Locked -state for the cluster named CONTOSO-FC1. Because the command specifies the **Force** parameter, the -recovery is performed without confirmation prompts. +state for the cluster named `CONTOSO-FC1`. Because the command specifies the **Force** parameter, +the recovery is performed without confirmation prompts. ## PARAMETERS @@ -147,10 +148,10 @@ Accept wildcard characters: False ### -CauPluginArguments Specifies a set of name=value pairs for each updating plug-in to use. -For instance, to specify a Domain argument for one plug-in: +For instance, to specify a Domain argument for one plug-in: - `@{Domain=Domain.local}` You can specify multiple pairs in a set separated with semicolons. -For instance: +For instance: - `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the **CauPluginName** that you specify. If you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, separated by @@ -158,7 +159,7 @@ For instance: - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +The following arguments are optional: - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is **'False'**. @@ -170,13 +171,13 @@ The following arguments are optional: For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see -[IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). -For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: +For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: - **HotfixRootFolderPath**: The UNC path to a hotfix root folder in an SMB share with a structure that contains the updates to apply and that contains the hotfix configuration file. -The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: +The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption is enforced for data accessed from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -187,10 +188,10 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. -If not specified, the default name DefaultHotfixConfig.xml is used. +If not specified, the default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** -plug-in, see [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +plug-in, see [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] @@ -211,7 +212,7 @@ separated with commas. The default is the **Microsoft.WindowsUpdatePlugin** plug coordinates the Windows Update Agent software resident on each cluster node, the same software that is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with CAU, see -[How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +[How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: String[] @@ -323,9 +324,9 @@ Specifies the method used to bring drained workloads back to the node, at the en node. Drained workloads are workloads that were previously run on the node, but were moved to another node. The acceptable values for this parameter are: -- NoFailback -- Immediate -- Policy +- `NoFailback` +- `Immediate` +- `Policy` The default value is Immediate. @@ -435,7 +436,7 @@ Accept wildcard characters: False ### -ForceSelfUpdate -{{ Fill ForceSelfUpdate Description }} +Specifies whether to update the CAU plugin on the local computer before running the update. ```yaml Type: SwitchParameter @@ -503,7 +504,8 @@ Accept wildcard characters: False ### -OsRollingUpgrade -Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without +stopping the Hyper-V or the Scale-Out File Server workloads. ```yaml Type: SwitchParameter @@ -540,7 +542,7 @@ Accept wildcard characters: False ### -PreUpdateScript Specifies the path and file name for a Windows PowerShell script to run on each node before updating -begins, and before the node is put into Maintenance mode. The file name extension must be .ps1 and +begins, and before the node is put into Maintenance mode. The file name extension must be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, or at a highly available network share, to ensure that the script is always accessible to all the cluster nodes. If a @@ -560,13 +562,20 @@ Accept wildcard characters: False ### -RebootMode -{{ Fill RebootMode Description }} +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType Parameter Sets: DefaultParamSet Aliases: -Accepted values: ClusProp, FullReboot, SoftReboot +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault Required: False Position: Named @@ -616,8 +625,8 @@ used during an updating run. By default, CAU scans and stages the applicable upd plug-ins in parallel. Regardless of the configuration of this parameter, CAU installs the applicable updates for each plug-in sequentially. -The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -638,8 +647,8 @@ the node, if the installation of an update by a plug-in requires a restart when are used during an updating run. By default, during an updating run, all plug-ins complete the installation of updates on a cluster node before the node restarts one time. -The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -716,8 +725,8 @@ subsequent updates on the node that are coordinated by the remaining plug-ins ar multiple plug-ins are used during an updating run. By default, a failure by one plug-in doesn't affect the application of updates on a node by other plug-ins. -The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +The parameter is valid only when multiple plug-ins are specified for the **CauPluginName** +parameter. If a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -776,8 +785,7 @@ Accept wildcard characters: False ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet isn't run. +Shows what would happen if the cmdlet runs. The cmdlet isn't run. ```yaml Type: SwitchParameter @@ -796,7 +804,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -822,9 +830,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-CauClusterRole](./Add-CauClusterRole.md) +[Add-CauClusterRole](add-cauclusterrole.md) -[Get-CauRun](./Get-CauRun.md) +[Get-CauRun](get-caurun.md) -[Stop-CauRun](./Stop-CauRun.md) +[Invoke-CauScan](invoke-causcan.md) +[Stop-CauRun](stop-caurun.md) diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md index 190c4148a3..5840b69a76 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md @@ -17,9 +17,10 @@ updates that are applied to each node in a specified cluster. ## SYNTAX ``` -Invoke-CauScan [[-ClusterName] ] [[-CauPluginName] ] [[-Credential] ] - [-CauPluginArguments ] [-RunPluginsSerially] [-StopOnPluginFailure] - [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] [] +Invoke-CauScan [[-ClusterName] ] [[-CauPluginName] ] + [[-Credential] ] [-CauPluginArguments ] [-RunPluginsSerially] + [-StopOnPluginFailure] [-OsRollingUpgrade] [-AttemptSoftReboot] [-RebootMode ] + [] ``` ## DESCRIPTION @@ -43,7 +44,7 @@ Invoke-CauScan -ClusterName "CONTOSO-FC1" -CauPluginName "Microsoft.WindowsUpdat ``` This command gets a detailed list of the initial set of updates that would currently be applied to -each node in the cluster named CONTOSO-FC1. The list is based on the updates that would be applied +each node in the cluster named `CONTOSO-FC1`. The list is based on the updates that would be applied by the **Microsoft.WindowsUpdatePlugin** plug-in, which is the default plug-in. The preview list includes only an initial set of updates, and doesn't include updates that might become applicable only after the initial updates are installed. @@ -67,11 +68,11 @@ Invoke-CauScan $parameters -Credential $Cred ``` This example gets a detailed list of the initial set of updates that would currently be applied to -each node in the cluster named CONTOSO-FC1. The list is based on the updates that would be applied +each node in the cluster named `CONTOSO-FC1`. The list is based on the updates that would be applied by the **Microsoft.WindowsUpdatePlugin** plug-in, using a specified query string, and the **Microsoft.HotfixPlugin**, after the necessary hotfixes and the hotfix configuration file have been downloaded to `\\CauHotfixSrv\shareName`. This example also shows how to pass the administrative -credentials for cluster CONTOSO-FC1 to the cmdlet. +credentials for cluster `CONTOSO-FC1` to the cmdlet. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -100,19 +101,23 @@ Accept wildcard characters: False ### -CauPluginArguments Specifies a set of name=value pairs for each updating plug-in to use. -For instance, to specify a **Domain** argument for one plug-in: +For instance, to specify a **Domain** argument for one plug-in: + - `@{Domain=Domain.local}` You can specify multiple pairs in a set separated with semicolons. -For instance: +For instance: + - `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order that you pass values into the **CauPluginName** parameter, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +The following arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -124,14 +129,13 @@ The following arguments are optional: For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see -[IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). -For the **Microsoft.HotfixPlugin** plug-in. -the following argument is required: +For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a - structure that contains the updates to apply and that contains the hotfix configuration file + structure that contains the updates to apply and that contains the hotfix configuration file. -The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: +The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -142,10 +146,10 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfig.xml is used. + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** -plug-in, see [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +plug-in, see [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] @@ -169,7 +173,7 @@ Server Update Services (WSUS) server. For more information about how plug-ins work with Cluster-Aware Updating (CAU), see -[Cluster-Aware Updating plug-ins](https://go.microsoft.com/fwlink/p/?LinkId=235333). +[Cluster-Aware Updating plug-ins](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: String[] @@ -219,7 +223,8 @@ Accept wildcard characters: False ### -OsRollingUpgrade -Indicates that the CAU cluster role scans for upgrades to the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. +Indicates that the CAU cluster role scans for upgrades to the operating system of the cluster nodes +without stopping the Hyper-V or the Scale-Out File Server workloads. ```yaml Type: SwitchParameter @@ -235,13 +240,20 @@ Accept wildcard characters: False ### -RebootMode -{{ Fill RebootMode Description }} +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType -Parameter Sets: (All) +Parameter Sets: DefaultParamSet Aliases: -Accepted values: ClusProp, FullReboot, SoftReboot +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault Required: False Position: Named @@ -256,9 +268,9 @@ Indicates that CAU scans each cluster node for applicable updates and stages the plug-in in the plug-in order passed into the **CauPluginName** parameter then multiple plug-ins are used during a scan for updates -By default, CAU scans and stages the applicable updates for all plug-ins in parallel. -This parameter is valid only when multiple plug-ins are specified in the **CauPluginName** parameter. -If a single plug-in is specified, a warning appears. +By default, CAU scans and stages the applicable updates for all plug-ins in parallel. This +parameter is valid only when multiple plug-ins are specified in the **CauPluginName** parameter. If +a single plug-in is specified, a warning appears. ```yaml Type: SwitchParameter @@ -298,7 +310,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -316,5 +328,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Invoke-CauRun](./Invoke-CauRun.md) +[Add-CauClusterRole](add-cauclusterrole.md) + +[Get-CauRun](get-caurun.md) + +[Invoke-CauRun](invoke-caurun.md) +[Stop-CauRun](stop-caurun.md) diff --git a/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md b/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md index 92bd0623d4..c0bddf2c4b 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md +++ b/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md @@ -29,7 +29,7 @@ because CAU uses the **Microsoft.WindowsUpdatePlugin** plug-in by default. This with the Windows Update Agent software resident on each node, the same software that is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows Server Update Services (WSUS) server. For more information about how plug-ins work in CAU, see -[How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +[How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ## EXAMPLES @@ -45,22 +45,6 @@ confirmation prompts. ## PARAMETERS -### -Confirm - -Prompts you for confirmation before running the cmdlet. - -```yaml -Type: SwitchParameter -Parameter Sets: (All) -Aliases: cf - -Required: False -Position: Named -Default value: False -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -Path Specifies the path to the binary that implements the plug-in. Classes that implement the plug-in @@ -79,6 +63,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WhatIf Shows what would happen if the cmdlet runs. @@ -101,7 +101,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -115,7 +115,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Get-CauPlugin](./Get-CauPlugin.md) - -[Unregister-CauPlugin](./Unregister-CauPlugin.md) +[Get-CauPlugin](get-cauplugin.md) +[Unregister-CauPlugin](unregister-cauplugin.md) diff --git a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md index c471a63977..652a5d2283 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md +++ b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md @@ -38,8 +38,8 @@ Compatibility Mode (HTTP-In)** firewall exception is enabled on each node. Save-CauDebugTrace -ClusterName "CONTOSO-FC1" -FilePath "C:\temp\testrun.zip" ``` -This command saves the debug tracing information for the cluster named CONTOSO-FC1, to a trace file -called `testrun.zip` in the `C:\temp` folder. +This command saves the debug tracing information for the cluster named `CONTOSO-FC1`, to a trace +file called `testrun.zip` in the `C:\temp` folder. ## PARAMETERS @@ -147,7 +147,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -163,5 +163,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Invoke-CauRun](./Invoke-CauRun.md) - +[Invoke-CauRun](invoke-caurun.md) diff --git a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md index 861d5dfb12..563bd01e43 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md @@ -82,9 +82,9 @@ The `Set-CauClusterRole` cmdlet sets configuration properties for the Cluster-Aw clustered role on the specified cluster. This cmdlet can specify properties such as the updating schedule and updating run parameters. -To run this cmdlet with the **PostUpdateScript** or **PreUpdateScript** parameters, Windows PowerShell -remoting must be enabled on each node. To do this, use the `Enable-PSRemoting` cmdlet. In -addition, ensure that the **Windows Remote Management - Compatibility Mode (HTTP-In)** firewall +To run this cmdlet with the **PostUpdateScript** or **PreUpdateScript** parameters, Windows +PowerShell remoting must be enabled on each node. To do this, use the `Enable-PSRemoting` cmdlet. +In addition, ensure that the **Windows Remote Management - Compatibility Mode (HTTP-In)** firewall exception is enabled on each node. ## EXAMPLES @@ -102,12 +102,12 @@ $parameters = @{ Set-CauClusterRole $parameters ``` -This command configures settings for the CAU clustered role on the cluster named CONTOSO-FC1. The +This command configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. The CAU clustered role is configured to perform updating runs on Tuesdays on the first and second weeks of each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a restart is necessary. If the restart doesn't complete within this time, then the updating run on -that node is marked as failed. Because the command specifies the **Force** parameter, the cmdlet runs -without displaying confirmation prompts. +that node is marked as failed. Because the command specifies the **Force** parameter, the cmdlet +runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -139,14 +139,14 @@ DaysOfWeek Tuesday WeeksInterval 2 ``` -This command configures settings for the CAU clustered role on the cluster named CONTOSO-FC1. The +This command configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. The CAU clustered role is configured to perform updating runs on Tuesdays on the second week of each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a restart is necessary. If the restart doesn't complete within this time, then the updating run on that node is -marked as failed. The CAU clustered role runs a script after updating completes, just after the node -leaves Maintenance mode. The script is located at the root of drive G: in clustered storage and is -named verifyupdatesinstalled.ps1. Because the command specifies the **Force** parameter, the cmdlet -runs without displaying confirmation prompts. +marked as failed. The CAU clustered role runs a script after updating completes, just after the +node leaves Maintenance mode. The script is located at the root of drive G: in clustered storage +and is named `verifyupdatesinstalled.ps1`. Because the command specifies the **Force** parameter, +the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -158,7 +158,7 @@ Set-CauClusterRole -ClusterName "CONTOSO-FC1" -UpdateNow -Force ``` This command causes the CAU clustered role to initiate an updating run immediately on the cluster -named CONTOSO-FC1. Because the command specifies the **Force** parameter, the cmdlet runs without +named `CONTOSO-FC1`. Because the command specifies the **Force** parameter, the cmdlet runs without displaying confirmation prompts ### Example 4: Configure settings for a CAU cluster role on the specified cluster @@ -176,10 +176,10 @@ $parameters = @{ Set-CauClusterRole @parameters ``` -This example configures settings for the CAU clustered role on the cluster named CONTOSO-FC1. Time +This example configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. Time spans are specified for logging a warning or canceling the updating run if it isn't completed. The earliest date that an updating run can be triggered is 1/1/2012. Because the command specifies the -**Force** parameter, the cmdlet runs without displaying confirmation prompts +**Force** parameter, the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -208,10 +208,10 @@ Accept wildcard characters: False ### -CauPluginArguments Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. -For instance, to specify a Domain argument for one plug-in: +For instance, to specify a Domain argument for one plug-in: - `@{Domain=Domain.local}` You can specify multiple pairs in a set separated with semicolons. -For instance: +For instance: - `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, @@ -219,7 +219,7 @@ For instance: - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +The following arguments are optional: - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -231,13 +231,13 @@ The following arguments are optional: For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see -[IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). -For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: +For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a - structure that contains the updates to apply and that contains the hotfix configuration file + structure that contains the updates to apply and that contains the hotfix configuration file. -The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: +The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -248,9 +248,9 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfig.xml is used. For more information about required and optional + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see - [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). + [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] @@ -267,11 +267,11 @@ Accept wildcard characters: False ### -CauPluginName Specifies one or more plug-ins to use when performing scans or updates. You can specify multiple -values separated with commas. The default is the Microsoft.WindowsUpdatePlugin plug-in. This plug-in +values separated with commas. The default is the **Microsoft.WindowsUpdatePlugin** plug-in. This plug-in coordinates the Windows Update Agent software resident on each cluster node, the same software that is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with CAU, see -[How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +[How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: String[] @@ -307,8 +307,8 @@ Accept wildcard characters: False ### -ConfigurationName Specifies the Windows PowerShell session configuration that defines the session in which scripts, -specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and can -limit the cmdlets that are available to be run. If either a pre-update or post-update script is +specified by the **PreUpdateScript** and **PostUpdateScript** parameters, and cmdlets are run, and +can limit the cmdlets that are available to be run. If either a pre-update or post-update script is specified but a configuration name isn't specified, then the default session configuration that is built into Windows PowerShell is used. @@ -324,22 +324,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -Confirm - -Prompts you for confirmation before running the cmdlet. - -```yaml -Type: SwitchParameter -Parameter Sets: (All) -Aliases: cf - -Required: False -Position: Named -Default value: False -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -Credential Specifies the administrative credentials for the target cluster. @@ -359,15 +343,15 @@ Accept wildcard characters: False ### -DaysOfWeek Specifies the days of the week on which the task will be triggered. -Multiple values can be specified either separated with commas or as a hexadecimal sum. +Multiple values can be specified either separated with commas or as a hexadecimal sum. -- **Sunday:** (0x01) -- **Monday:** (0x02) -- **Tuesday:** (0x04) -- **Wednesday:** (0x08) -- **Thursday:** (0x10) -- **Friday:** (0x20) -- **Saturday:** (0x40) +- **Sunday:** (0x01) +- **Monday:** (0x02) +- **Tuesday:** (0x04) +- **Wednesday:** (0x08) +- **Thursday:** (0x10) +- **Friday:** (0x20) +- **Saturday:** (0x40) **Examples:** - **-DaysOfWeek:** Monday, Wednesday, Friday @@ -575,7 +559,8 @@ Accept wildcard characters: False ### -OsRollingUpgrade -Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without stopping the Hyper-V or the Scale-Out File Server workloads. +Indicates that the CAU cluster role upgrades the operating system of the cluster nodes without +stopping the Hyper-V or the Scale-Out File Server workloads. ```yaml Type: SwitchParameter @@ -592,7 +577,7 @@ Accept wildcard characters: False ### -PostUpdateScript Specifies the path and file name for a Windows PowerShell script to run after updating completes, -just after the node leaves Maintenance mode. The file name extension must be .ps1 and the total +just after the node leaves Maintenance mode. The file name extension must be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, to ensure that it is always accessible to all the cluster nodes. @@ -612,7 +597,7 @@ Accept wildcard characters: False ### -PreUpdateScript Specifies the path and file name for a Windows PowerShell script to run on each node before updating -begins, and before the node is put into Maintenance mode. The file name extension must be .ps1 and +begins, and before the node is put into Maintenance mode. The file name extension must be `.ps1` and the total length of the path plus the file name must be no longer than 260 characters. As a best practice, the script should be located on a disk in cluster storage, to ensure that it is always accessible to all the cluster nodes. @@ -631,13 +616,20 @@ Accept wildcard characters: False ### -RebootMode -{{ Fill RebootMode Description }} +Specifies the type of reboot to use for each node in the cluster during the update. The available +values are: + +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType Parameter Sets: MonthlyDayOfWeek, Weekly, Once Aliases: -Accepted values: ClusProp, FullReboot, SoftReboot +Accepted values: ClusProp, FullReboot, SoftReboot, PluginCustomReboot, OrchestratorDefault Required: False Position: Named @@ -648,8 +640,8 @@ Accept wildcard characters: False ### -RebootTimeoutMinutes -Specifies the time in minutes that CAU will allow for the restarting of a node. If the restart doesn't -complete within this time, then the updating run on that node is marked as failed. +Specifies the time in minutes that CAU will allow for the restarting of a node. If the restart +doesn't complete within this time, then the updating run on that node is marked as failed. ```yaml Type: Int32 @@ -681,7 +673,8 @@ Accept wildcard characters: False ### -RunOnce -{{ Fill RunOnce Description }} +Specifies that the CAU run should only be performed once, rather than on a recurring schedule. This +can be useful if you only need to perform a one-time update of your cluster nodes. ```yaml Type: SwitchParameter @@ -837,8 +830,8 @@ Accept wildcard characters: False ### -SuspendClusterNodeTimeoutMinutes -Specifies the maximum amount of time CAU should wait for the `Suspend-ClusterNode` cmdlet to succeed if -the underlying clustered space is in degraded condition. +Specifies the maximum amount of time CAU should wait for the `Suspend-ClusterNode` cmdlet to +succeed if the underlying clustered space is in degraded condition. If `Suspend-ClusterNode` fails with ERROR_CLUSTER_SPACE_DEGRADED error, CAU will keep retrying for **SuspendClusterNodeTimeoutMinutes** or suspend the call if the command succeeds. @@ -928,6 +921,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WhatIf Shows what would happen if the cmdlet runs. @@ -950,7 +959,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -964,13 +973,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-CauClusterRole](./Add-CauClusterRole.md) - -[Disable-CauClusterRole](./Disable-CauClusterRole.md) +[Add-CauClusterRole](add-cauclusterrole.md) -[Enable-CauClusterRole](./Enable-CauClusterRole.md) +[Disable-CauClusterRole](disable-cauclusterrole.md) -[Get-CauClusterRole](./Get-CauClusterRole.md) +[Enable-CauClusterRole](enable-cauclusterrole.md) -[Remove-CauClusterRole](./Remove-CauClusterRole.md) +[Get-CauClusterRole](get-cauclusterrole.md) +[Remove-CauClusterRole](remove-cauclusterrole.md) From 7e9c82b789c553ac175d7740da3f4160f0ee41fb Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 15 Jul 2024 12:31:57 -0400 Subject: [PATCH 49/98] Update formatting --- .../Add-CauClusterRole.md | 77 ++++++++++--------- .../Enable-CauClusterRole.md | 6 +- .../clusterawareupdating/Get-CauReport.md | 6 +- .../clusterawareupdating/Invoke-CauRun.md | 4 +- .../clusterawareupdating/Invoke-CauScan.md | 10 +-- .../Register-CauPlugin.md | 2 +- .../Save-CauDebugTrace.md | 2 +- .../Set-CauClusterRole.md | 8 +- 8 files changed, 58 insertions(+), 57 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index b074052396..c5e486e10d 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -70,8 +70,8 @@ to a cluster, the failover cluster can update itself on the schedule that is spe without requiring an external computer to coordinate the cluster updating process. To run this cmdlet, Windows PowerShell® remoting must be enabled on each node. To do this, run the -`Enable-PSRemoting` cmdlet. In addition, ensure that the Windows Remote Management - Compatibility -Mode (HTTP-In) firewall exception is enabled on each node. +`Enable-PSRemoting` cmdlet. In addition, ensure that the **Windows Remote Management - Compatibility +Mode (HTTP-In)** firewall exception is enabled on each node. ## EXAMPLES @@ -94,14 +94,14 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called CONTOSO-FC1. -The CAU clustered role is configured to perform Updating Runs on Tuesdays and Saturdays on the -second and fourth weeks of each month. In an Updating Run, the maximum number of failed nodes is two -and the maximum number of retries per node is two. A script called verifyupdatesinstalled.ps1 runs -on each node after it has been fully updated. Before an Updating Run can begin, all the nodes of -that cluster must be running. If it isn't already enabled, the Remote Shutdown Windows Firewall -rule group will be enabled on each cluster node. Because the command uses the **Force** parameter, the -cmdlet runs without displaying confirmation prompts. +This command adds the CAU clustered role, using a default name, on the cluster called +**CONTOSO-FC1**. The CAU clustered role is configured to perform Updating Runs on Tuesdays and +Saturdays on the second and fourth weeks of each month. In an Updating Run, the maximum number of +failed nodes is two and the maximum number of retries per node is two. A script called +`verifyupdatesinstalled.ps1` runs on each node after it has been fully updated. Before an Updating +Run can begin, all the nodes of that cluster must be running. If it isn't already enabled, the +Remote Shutdown Windows Firewall rule group will be enabled on each cluster node. Because the +command uses the **Force** parameter, the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -122,7 +122,7 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called CONTOSO-FC1. +This command adds the CAU clustered role, using a default name, on the cluster called **CONTOSO-FC1**. The CAU clustered role is configured to perform Updating Runs on Tuesdays and Saturdays at an interval of every three weeks. In an Updating Run, the maximum number of failed nodes is two and the maximum number of retries per node is two. Updating Runs can begin even when the nodes of the @@ -150,7 +150,7 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called CONTOSO-FC1. +This command adds the CAU clustered role, using a default name, on the cluster called **CONTOSO-FC1**. The CAU clustered role is configured to perform updates using the **Microsoft.WindowsUpdatePlugin** plug-in with the optional **IncludeRecommendedUpdates** parameter set to True, and using the **Microsoft.HotfixPlugin plug-in** using the hotfix root folder `\\CauHotfixSrv\shareName` and the @@ -187,10 +187,10 @@ Accept wildcard characters: False ### -CauPluginArguments Specifies an array of name=value pairs (arguments) for each updating plug-in to use. -For instance, to specify a Domain argument for one plug-in: +For instance, to specify a Domain argument for one plug-in: - `@{Domain=Domain.local}` You can specify multiple pairs in a set separated with semicolons. -For instance: +For instance: - `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, @@ -198,7 +198,7 @@ For instance: - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +The following arguments are optional: - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -209,14 +209,14 @@ The following arguments are optional: - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](https://go.microsoft.com/fwlink/p/?LinkId=223304). + [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in. -the following argument is required: +the following argument is required: - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a structure that contains the updates to apply and that contains the hotfix configuration file -The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: +The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -246,10 +246,11 @@ Accept wildcard characters: False ### -CauPluginName Specifies one or more plug-ins to use when performing scans or updates. You can specify multiple -values separated with commas. The default is the Microsoft.WindowsUpdatePlugin plug-in. This plug-in -coordinates the Windows Update Agent software resident on each cluster node, the same software that -is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows -Server Update Services (WSUS) server. For more information about how plug-ins work with CAU, see +values separated with commas. The default is the **Microsoft.WindowsUpdatePlugin** plug-in. This +plug-in coordinates the Windows Update Agent software resident on each cluster node, the same +software that is used when updates are downloaded from Windows Update or Microsoft Update, or from +a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with +CAU, see [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml @@ -302,22 +303,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -Confirm - -Prompts you for confirmation before running the cmdlet. - -```yaml -Type: SwitchParameter -Parameter Sets: (All) -Aliases: cf - -Required: False -Position: Named -Default value: False -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -Credential Specifies the administrative credentials for the target cluster. @@ -920,6 +905,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WhatIf Shows what would happen if the cmdlet runs. diff --git a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md index bddf7addce..6300b41950 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Enable-CauClusterRole.md @@ -34,9 +34,9 @@ cluster. The self-updating functionality of the cluster can be disabled with the Enable-CauClusterRole -ClusterName "CONTOSO-FC1" -Force ``` -This command enables the CAU clustered role on the `CONTOSO-FC1` cluster to begin performing Updating -Runs. The cmdlet changes the status of the CAU clustered role to Running. The cmdlet runs without -displaying confirmation prompts, as the **Force** parameter was used. +This command enables the CAU clustered role on the **CONTOSO-FC1** cluster to begin performing +Updating Runs. The cmdlet changes the status of the CAU clustered role to Running. The cmdlet runs +without displaying confirmation prompts, as the **Force** parameter was used. ## PARAMETERS diff --git a/docset/winserver2022-ps/clusterawareupdating/Get-CauReport.md b/docset/winserver2022-ps/clusterawareupdating/Get-CauReport.md index 7c92d1b951..e0b02d78a6 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Get-CauReport.md +++ b/docset/winserver2022-ps/clusterawareupdating/Get-CauReport.md @@ -62,7 +62,7 @@ Updating (CAU) report summary object. Get-CauReport -ClusterName Contoso-FC1 -StartDate 01/01/2012 -Detailed ``` -This command gets a detailed list of the updating runs performed on the cluster named `Contoso-FC1` +This command gets a detailed list of the updating runs performed on the cluster named **Contoso-FC1** on 01/01/2012 or later. ### Example 2: Get a detailed list of updating runs from a date span from the specified cluster @@ -71,7 +71,7 @@ on 01/01/2012 or later. Get-CauReport -ClusterName "Contoso-FC1" -StartDate 01/01/2012 -EndDate 04/01/2012 -Detailed ``` -This command gets a detailed list of the updating runs performed on the cluster called `Contoso-FC1` +This command gets a detailed list of the updating runs performed on the cluster called **Contoso-FC1** starting with updating runs on 01/01/2012 and ending with updating runs on 04/01/2012. ### Example 3: Get the last updating run summary from the specified cluster @@ -81,7 +81,7 @@ $CauReportSummary = Get-CauReport "Contoso-FC1" -Last Get-CauReport "Contoso-FC1" -Report $CauReportSummary ``` -The first command gets the last updating run report summary from the cluster named `Contoso-FC1` and +The first command gets the last updating run report summary from the cluster named **Contoso-FC1** and stores the result in the variable named `$CauReportSummary`. The second command gets the detailed report from the information stored in the `$CauReportSummary` diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md index 20aa940ffd..d39211794a 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md @@ -100,7 +100,7 @@ $parameters = @{ Invoke-CauRun @parameters ``` -This command performs a scan and a full updating run on the cluster named `CONTOSO-FC1`. This cmdlet +This command performs a scan and a full updating run on the cluster named **CONTOSO-FC1**. This cmdlet uses the **Microsoft.WindowsUpdatePlugin** plug-in with the default configuration, and the **Microsoft.HotfixPlugin** plug-in using the hotfix root folder `\\CauHotfixSrv\shareName` and the default hotfix configuration file. If it isn't already enabled, the **Remote Shutdown** Windows @@ -121,7 +121,7 @@ Invoke-CauRun -ClusterName "CONTOSO-FC1"-ForceRecovery -Force ``` This command recovers from a previous updating run that failed and left the cluster in a Locked -state for the cluster named `CONTOSO-FC1`. Because the command specifies the **Force** parameter, +state for the cluster named **CONTOSO-FC1**. Because the command specifies the **Force** parameter, the recovery is performed without confirmation prompts. ## PARAMETERS diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md index 5840b69a76..7bde753146 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md @@ -44,10 +44,10 @@ Invoke-CauScan -ClusterName "CONTOSO-FC1" -CauPluginName "Microsoft.WindowsUpdat ``` This command gets a detailed list of the initial set of updates that would currently be applied to -each node in the cluster named `CONTOSO-FC1`. The list is based on the updates that would be applied -by the **Microsoft.WindowsUpdatePlugin** plug-in, which is the default plug-in. The preview list -includes only an initial set of updates, and doesn't include updates that might become applicable -only after the initial updates are installed. +each node in the cluster named **CONTOSO-FC1**. The list is based on the updates that would be +applied by the **Microsoft.WindowsUpdatePlugin** plug-in, which is the default plug-in. The preview +list includes only an initial set of updates, and doesn't include updates that might become +applicable only after the initial updates are installed. ### Example 2: Get a detailed list of the initial set of updates on the specified cluster using a query string @@ -68,7 +68,7 @@ Invoke-CauScan $parameters -Credential $Cred ``` This example gets a detailed list of the initial set of updates that would currently be applied to -each node in the cluster named `CONTOSO-FC1`. The list is based on the updates that would be applied +each node in the cluster named **CONTOSO-FC1**. The list is based on the updates that would be applied by the **Microsoft.WindowsUpdatePlugin** plug-in, using a specified query string, and the **Microsoft.HotfixPlugin**, after the necessary hotfixes and the hotfix configuration file have been downloaded to `\\CauHotfixSrv\shareName`. This example also shows how to pass the administrative diff --git a/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md b/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md index c0bddf2c4b..a760e339b6 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md +++ b/docset/winserver2022-ps/clusterawareupdating/Register-CauPlugin.md @@ -39,7 +39,7 @@ Services (WSUS) server. For more information about how plug-ins work in CAU, see Register-CauPlugin -Path "C:\PluginDevelopment\Plugin01.dll" -Force ``` -The command registers a plug-in called Plugin01.dll located in the C:\PluginDevelopment folder. +The command registers a plug-in called **Plugin01.dll** located in the `C:\PluginDevelopment` folder. Because the command specifies the **Force** parameter, the cmdlet runs without displaying confirmation prompts. diff --git a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md index 652a5d2283..8138d08c2a 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md +++ b/docset/winserver2022-ps/clusterawareupdating/Save-CauDebugTrace.md @@ -38,7 +38,7 @@ Compatibility Mode (HTTP-In)** firewall exception is enabled on each node. Save-CauDebugTrace -ClusterName "CONTOSO-FC1" -FilePath "C:\temp\testrun.zip" ``` -This command saves the debug tracing information for the cluster named `CONTOSO-FC1`, to a trace +This command saves the debug tracing information for the cluster named **CONTOSO-FC1**, to a trace file called `testrun.zip` in the `C:\temp` folder. ## PARAMETERS diff --git a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md index 563bd01e43..bd4834d5e9 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md @@ -102,7 +102,7 @@ $parameters = @{ Set-CauClusterRole $parameters ``` -This command configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. The +This command configures settings for the CAU clustered role on the cluster named **CONTOSO-FC1**. The CAU clustered role is configured to perform updating runs on Tuesdays on the first and second weeks of each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a restart is necessary. If the restart doesn't complete within this time, then the updating run on @@ -139,7 +139,7 @@ DaysOfWeek Tuesday WeeksInterval 2 ``` -This command configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. The +This command configures settings for the CAU clustered role on the cluster named **CONTOSO-FC1**. The CAU clustered role is configured to perform updating runs on Tuesdays on the second week of each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a restart is necessary. If the restart doesn't complete within this time, then the updating run on that node is @@ -158,7 +158,7 @@ Set-CauClusterRole -ClusterName "CONTOSO-FC1" -UpdateNow -Force ``` This command causes the CAU clustered role to initiate an updating run immediately on the cluster -named `CONTOSO-FC1`. Because the command specifies the **Force** parameter, the cmdlet runs without +named **CONTOSO-FC1**. Because the command specifies the **Force** parameter, the cmdlet runs without displaying confirmation prompts ### Example 4: Configure settings for a CAU cluster role on the specified cluster @@ -176,7 +176,7 @@ $parameters = @{ Set-CauClusterRole @parameters ``` -This example configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. Time +This example configures settings for the CAU clustered role on the cluster named **CONTOSO-FC1**. Time spans are specified for logging a warning or canceling the updating run if it isn't completed. The earliest date that an updating run can be triggered is 1/1/2012. Because the command specifies the **Force** parameter, the cmdlet runs without displaying confirmation prompts. From 8f0c2370775b7d0cdaebc78cf9ce58ef06be3227 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 15 Jul 2024 14:03:25 -0400 Subject: [PATCH 50/98] Update formatting --- .../Add-CauClusterRole.md | 151 ++++++++++-------- .../Get-CauDeviceInfoForFeatureUpdates.md | 4 +- .../clusterawareupdating/Invoke-CauRun.md | 94 ++++++----- .../clusterawareupdating/Invoke-CauScan.md | 58 ++++--- .../Invoke-ClusterlessCauRun.md | 78 +++++---- .../Save-CauDebugTrace.md | 10 +- .../Set-CauClusterRole.md | 124 +++++++------- 7 files changed, 280 insertions(+), 239 deletions(-) diff --git a/docset/winserver2025-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2025-ps/clusterawareupdating/Add-CauClusterRole.md index 41b408ea08..e37893cc03 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2025-ps/clusterawareupdating/Add-CauClusterRole.md @@ -98,14 +98,14 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called `CONTOSO-FC1`. -The CAU clustered role is configured to perform Updating Runs on Tuesdays and Saturdays on the -second and fourth weeks of each month. In an Updating Run, the maximum number of failed nodes is -two and the maximum number of retries per node is two. A script called `verifyupdatesinstalled.ps1` -runs on each node after it has been fully updated. Before an Updating Run can begin, all the nodes -of that cluster must be running. If it isn't already enabled, the Remote Shutdown Windows Firewall -rule group will be enabled on each cluster node. Because the command uses the **Force** parameter, -the cmdlet runs without displaying confirmation prompts. +This command adds the CAU clustered role, using a default name, on the cluster called +**CONTOSO-FC1**. The CAU clustered role is configured to perform Updating Runs on Tuesdays and +Saturdays on the second and fourth weeks of each month. In an Updating Run, the maximum number of +failed nodes is two and the maximum number of retries per node is two. A script called +`verifyupdatesinstalled.ps1` runs on each node after it has been fully updated. Before an Updating +Run can begin, all the nodes of that cluster must be running. If it isn't already enabled, the +Remote Shutdown Windows Firewall rule group will be enabled on each cluster node. Because the +command uses the **Force** parameter, the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -126,14 +126,14 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called `CONTOSO-FC1`. -The CAU clustered role is configured to perform Updating Runs on Tuesdays and Saturdays at an -interval of every three weeks. In an Updating Run, the maximum number of failed nodes is two and the -maximum number of retries per node is two. Updating Runs can begin even when the nodes of the -cluster aren't all running (if the cluster itself has quorum and is running). If it isn't already -enabled, the Remote Shutdown Windows Firewall rule group will be enabled on each cluster node. -Because the command uses the **Force** parameter, the cmdlet runs without displaying confirmation -prompts. +This command adds the CAU clustered role, using a default name, on the cluster called +**CONTOSO-FC1**. The CAU clustered role is configured to perform Updating Runs on Tuesdays and +Saturdays at an interval of every three weeks. In an Updating Run, the maximum number of failed +nodes is two and the maximum number of retries per node is two. Updating Runs can begin even when +the nodes of the cluster aren't all running (if the cluster itself has quorum and is running). If +it isn't already enabled, the Remote Shutdown Windows Firewall rule group will be enabled on each +cluster node. Because the command uses the **Force** parameter, the cmdlet runs without displaying +confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -154,15 +154,15 @@ $parameters = @{ Add-CauClusterRole @parameters ``` -This command adds the CAU clustered role, using a default name, on the cluster called `CONTOSO-FC1`. -The CAU clustered role is configured to perform updates using the **Microsoft.WindowsUpdatePlugin** -plug-in with the optional **IncludeRecommendedUpdates** parameter set to `True`, and using the -**Microsoft.HotfixPlugin plug-in** using the hotfix root folder `\\CauHotfixSrv\shareName` and the -default hotfix configuration file. If a failure occurs during the installation of updates on a node -by **Microsoft.WindowsUpdatePlugin**, updates are applied by **Microsoft.HotfixPlugin plug-in**. If -it isn't already enabled, the Remote Shutdown Windows Firewall rule group is enabled on each -cluster node. Because the command uses the **Force** parameter, the cmdlet runs without displaying -confirmation prompts. +This command adds the CAU clustered role, using a default name, on the cluster called +**CONTOSO-FC1**. The CAU clustered role is configured to perform updates using the +**Microsoft.WindowsUpdatePlugin** plug-in with the optional **IncludeRecommendedUpdates** parameter +set to `True`, and using the **Microsoft.HotfixPlugin plug-in** using the hotfix root folder +`\\CauHotfixSrv\shareName` and the default hotfix configuration file. If a failure occurs during +the installation of updates on a node by **Microsoft.WindowsUpdatePlugin**, updates are applied by +**Microsoft.HotfixPlugin plug-in**. If it isn't already enabled, the Remote Shutdown Windows +Firewall rule group is enabled on each cluster node. Because the command uses the **Force** +parameter, the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -193,17 +193,22 @@ Accept wildcard characters: False Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. For instance, to specify a Domain argument for one plug-in: + - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, - separated by commas. For instance: + +You can specify multiple pairs in a set separated with semicolons. For instance: + +- `@{name1=value1;name2=value2;name3=value3}` + +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -211,16 +216,19 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more - information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the - criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` + +For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in +and the criteria such as IsInstalled that can be included in the query strings, see +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: + - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a - structure that contains the updates to apply and that contains the hotfix configuration file + structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: + - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -231,7 +239,7 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfig.xml is used. For more information about required and optional + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). @@ -250,10 +258,11 @@ Accept wildcard characters: False ### -CauPluginName Specifies one or more plug-ins to use when performing scans or updates. You can specify multiple -values separated with commas. The default is the Microsoft.WindowsUpdatePlugin plug-in. This plug-in -coordinates the Windows Update Agent software resident on each cluster node, the same software that -is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows -Server Update Services (WSUS) server. For more information about how plug-ins work with CAU, see +values separated with commas. The default is the **Microsoft.WindowsUpdatePlugin** plug-in. This +plug-in coordinates the Windows Update Agent software resident on each cluster node, the same +software that is used when updates are downloaded from Windows Update or Microsoft Update, or from +a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with +CAU, see [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml @@ -306,22 +315,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -Confirm - -Prompts you for confirmation before running the cmdlet. - -```yaml -Type: SwitchParameter -Parameter Sets: (All) -Aliases: cf - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -Credential Specifies the administrative credentials for the target cluster. @@ -400,9 +393,9 @@ another node. The acceptable values for this parameter are: -- NoFailback -- Immediate -- Policy +- `NoFailback` +- `Immediate` +- `Policy` The default value is **Immediate**. @@ -543,8 +536,8 @@ Accept wildcard characters: False ### -MaxRetriesPerNode Specifies the maximum number of times that the update process attempts to run. This includes any -pre-update and post-update scripts. The update process is retried per node. The maximum is **64** -and the default is **3**. +pre-update and post-update scripts. The update process is retried per node. The maximum is 64 +and the default is 3. ```yaml Type: Int32 @@ -637,11 +630,11 @@ Accept wildcard characters: False Specifies the type of reboot to use for each node in the cluster during the update. The available values are: -- ClusProp -- FullReboot -- SoftReboot -- PluginCustomReboot -- OrchestratorDefault +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType @@ -888,7 +881,7 @@ Accept wildcard characters: False Specifies the name of a pre-staged virtual computer object that is used by the CAU clustered role. For more information, see -[Steps to create computer objects in Active Directory](https://go.microsoft.com/fwlink/p/?LinkId=237624). +[Steps for prestaging the cluster name account](/windows-server/failover-clustering/configure-ad-accounts#steps-for-prestaging-the-cluster-name-account). If not specified, then a virtual computer object is created using a generated name. Generating a name automatically requires the cluster name object to have permissions to create the virtual computer object in Active Directory. @@ -942,7 +935,7 @@ Accept wildcard characters: False ### -WeeksOfMonth -Specifies the weeks of the month when the Updating Run should be run. The value `5` represents the +Specifies the weeks of the month when the Updating Run should be run. The value 5 represents the last week of the month. ```yaml @@ -957,6 +950,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WhatIf Shows what would happen if the cmdlet runs. The cmdlet is not run. diff --git a/docset/winserver2025-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md b/docset/winserver2025-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md index d912749f08..7705540fcf 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md +++ b/docset/winserver2025-ps/clusterawareupdating/Get-CauDeviceInfoForFeatureUpdates.md @@ -39,8 +39,8 @@ Get-CauDeviceInfoForFeatureUpdates $parameters ``` This command retrieves device information for feature updates from the `C:\Updates` directory for -the cluster named `CONTOSO-FC1`. It also specifies the path to the deployment cab file that will be -created for the update in `C:\Deployment\FeatureUpdate.cab`. +the cluster named **CONTOSO-FC1**. It also specifies the path to the deployment cab file that will +be created for the update in `C:\Deployment\FeatureUpdate.cab`. ## PARAMETERS diff --git a/docset/winserver2025-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2025-ps/clusterawareupdating/Invoke-CauRun.md index 835a3d20fc..1b44570c08 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2025-ps/clusterawareupdating/Invoke-CauRun.md @@ -91,7 +91,7 @@ $parameters = @{ Invoke-CauRun @parameters ``` -This command performs a scan and a full Updating Run on the cluster named `CONTOSO-FC1`. This +This command performs a scan and a full Updating Run on the cluster named **CONTOSO-FC1**. This cmdlet uses the **Microsoft.WindowsUpdatePlugin** plug-in and requires that all cluster nodes be online before the running this cmdlet. In addition, this cmdlet allows no more than three retries per node before marking the node as failed, and allows no more than one node to fail before marking @@ -118,8 +118,8 @@ $parameters = @{ Invoke-CauRun @parameters ``` -This command performs a scan and a full Updating Run on the cluster named `CONTOSO-FC1`. This cmdlet -uses the **Microsoft.WindowsUpdatePlugin** plug-in with the default configuration, and the +This command performs a scan and a full Updating Run on the cluster named **CONTOSO-FC1**. This +cmdlet uses the **Microsoft.WindowsUpdatePlugin** plug-in with the default configuration, and the **Microsoft.HotfixPlugin** plug-in using the hotfix root folder `\\CauHotfixSrv\shareName` and the default hotfix configuration file. If it isn't already enabled, the **Remote Shutdown** Windows Firewall rule group is enabled on each cluster node before the Updating Run. If a failure occurs @@ -139,7 +139,7 @@ Invoke-CauRun -ClusterName "CONTOSO-FC1" -ForceRecovery -Force ``` This command recovers from a previous Updating Run that failed and left the cluster in a Locked -state for the cluster named `CONTOSO-FC1`. Because the command specifies the **Force** parameter, +state for the cluster named **CONTOSO-FC1**. Because the command specifies the **Force** parameter, the recovery is performed without confirmation prompts. ## PARAMETERS @@ -168,17 +168,22 @@ Accept wildcard characters: False Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. For instance, to specify a Domain argument for one plug-in: + - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, - separated by commas. For instance: + +You can specify multiple pairs in a set separated with semicolons. For instance: + +- `@{name1=value1;name2=value2;name3=value3}` + +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -186,16 +191,19 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more - information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the - criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` + +For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in +and the criteria such as IsInstalled that can be included in the query strings, see +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: + - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a - structure that contains the updates to apply and that contains the hotfix configuration file + structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: + - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -206,7 +214,7 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfig.xml is used. For more information about required and optional + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). @@ -296,22 +304,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -Confirm - -Prompts you for confirmation before running the cmdlet. - -```yaml -Type: SwitchParameter -Parameter Sets: (All) -Aliases: cf - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -Credential Specifies the administrative credentials for the target cluster. @@ -359,11 +351,11 @@ Specifies the method used to bring drained workloads back to the node, at the en node. Drained workloads are workloads that were previously run on the node, but were moved to another node. The acceptable values for this parameter are: -- NoFailback -- Immediate -- Policy +- `NoFailback` +- `Immediate` +- `Policy` -The default value is **Immediate**. +The default value is `Immediate`. ```yaml Type: FailbackType @@ -599,11 +591,11 @@ Accept wildcard characters: False Specifies the type of reboot to use for each node in the cluster during the update. The available values are: -- ClusProp -- FullReboot -- SoftReboot -- PluginCustomReboot -- OrchestratorDefault +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType @@ -882,6 +874,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WhatIf Shows what would happen if the cmdlet runs. The cmdlet is not run. diff --git a/docset/winserver2025-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2025-ps/clusterawareupdating/Invoke-CauScan.md index 59bd53ff87..36b3bd5c89 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2025-ps/clusterawareupdating/Invoke-CauScan.md @@ -42,10 +42,10 @@ Invoke-CauScan -ClusterName "CONTOSO-FC1" -CauPluginName "Microsoft.WindowsUpdat ``` This command gets a detailed list of the initial set of updates that would currently be applied to -each node in the cluster named `CONTOSO-FC1`. The list is based on the updates that would be applied -by the **Microsoft.WindowsUpdatePlugin** plug-in, which is the default plug-in. The preview list -includes only an initial set of updates, and doesn't include updates that might become applicable -only after the initial updates are installed. +each node in the cluster named **CONTOSO-FC1**. The list is based on the updates that would be +applied by the **Microsoft.WindowsUpdatePlugin** plug-in, which is the default plug-in. The preview +list includes only an initial set of updates, and doesn't include updates that might become +applicable only after the initial updates are installed. ### Example 2: Get a detailed list of the initial set of updates on the specified cluster using a query string @@ -66,11 +66,11 @@ Invoke-CauScan $parameters -Credential $Cred ``` This example gets a detailed list of the initial set of updates that would currently be applied to -each node in the cluster named `CONTOSO-FC1`. The list is based on the updates that would be applied +each node in the cluster named **CONTOSO-FC1**. The list is based on the updates that would be applied by the **Microsoft.WindowsUpdatePlugin** plug-in, using a specified query string, and the **Microsoft.HotfixPlugin**, after the necessary hotfixes and the hotfix configuration file have been downloaded to `\\CauHotfixSrv\shareName`. This example also shows how to pass the administrative -credentials for cluster `CONTOSO-FC1` to the cmdlet. +credentials for cluster **CONTOSO-FC1** to the cmdlet. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -101,17 +101,22 @@ Accept wildcard characters: False Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. For instance, to specify a Domain argument for one plug-in: + - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, - separated by commas. For instance: + +You can specify multiple pairs in a set separated with semicolons. For instance: + +- `@{name1=value1;name2=value2;name3=value3}` + +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -119,16 +124,19 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more - information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the - criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` + +For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in +and the criteria such as IsInstalled that can be included in the query strings, see +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: + - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a - structure that contains the updates to apply and that contains the hotfix configuration file + structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: + - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -139,7 +147,7 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfig.xml is used. For more information about required and optional + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). @@ -233,11 +241,11 @@ Accept wildcard characters: False Specifies the type of reboot to use for each node in the cluster during the update. The available values are: -- ClusProp -- FullReboot -- SoftReboot -- PluginCustomReboot -- OrchestratorDefault +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType diff --git a/docset/winserver2025-ps/clusterawareupdating/Invoke-ClusterlessCauRun.md b/docset/winserver2025-ps/clusterawareupdating/Invoke-ClusterlessCauRun.md index 7b4cce9751..709dc6a4d7 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Invoke-ClusterlessCauRun.md +++ b/docset/winserver2025-ps/clusterawareupdating/Invoke-ClusterlessCauRun.md @@ -56,17 +56,22 @@ that fails to update. Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. For instance, to specify a Domain argument for one plug-in: + - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, - separated by commas. For instance: + +You can specify multiple pairs in a set separated with semicolons. For instance: + +- `@{name1=value1;name2=value2;name3=value3}` + +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -74,16 +79,19 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more - information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the - criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` + +For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in +and the criteria such as IsInstalled that can be included in the query strings, see +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: + - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a - structure that contains the updates to apply and that contains the hotfix configuration file + structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: + - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -94,7 +102,7 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfig.xml is used. For more information about required and optional + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). @@ -152,22 +160,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -Confirm - -Prompts you for confirmation before running the cmdlet. - -```yaml -Type: SwitchParameter -Parameter Sets: (All) -Aliases: cf - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -Credential Specifies the administrative credentials for the target cluster. @@ -325,11 +317,11 @@ Accept wildcard characters: False Specifies the type of reboot to use for each node in the cluster during the update. The available values are: -- ClusProp -- FullReboot -- SoftReboot -- PluginCustomReboot -- OrchestratorDefault +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType @@ -406,6 +398,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WhatIf Shows what would happen if the cmdlet runs. The cmdlet is not run. diff --git a/docset/winserver2025-ps/clusterawareupdating/Save-CauDebugTrace.md b/docset/winserver2025-ps/clusterawareupdating/Save-CauDebugTrace.md index 4120300ecc..a485e8cd57 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Save-CauDebugTrace.md +++ b/docset/winserver2025-ps/clusterawareupdating/Save-CauDebugTrace.md @@ -38,7 +38,7 @@ Compatibility Mode (HTTP-In)** firewall exception is enabled on each node. Save-CauDebugTrace -ClusterName "CONTOSO-FC1" -FilePath "C:\temp\testrun.zip" ``` -This command saves the debug tracing information for the cluster named `CONTOSO-FC1`, to a trace +This command saves the debug tracing information for the cluster named **CONTOSO-FC1**, to a trace file called `testrun.zip` in the `C:\temp` folder. ## PARAMETERS @@ -82,9 +82,9 @@ Accept wildcard characters: False Specifies the level of detail to include in the debug trace for feature updates. The acceptable values for this parameter are: -- **None**: No feature update logs will be included in the debug trace. -- **FailedSetup**: Only logs related to failed feature updates will be included in the debug trace. -- **All**: All feature update logs will be included in the debug trace. +- `None`: No feature update logs will be included in the debug trace. +- `FailedSetup`: Only logs related to failed feature updates will be included in the debug trace. +- `All`: All feature update logs will be included in the debug trace. ```yaml Type: FeatureUpdateLogs @@ -169,4 +169,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Invoke-CauRun](./Invoke-CauRun.md) +[Invoke-CauRun](invoke-caurun.md) diff --git a/docset/winserver2025-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2025-ps/clusterawareupdating/Set-CauClusterRole.md index 35334f34a9..1926b424ee 100644 --- a/docset/winserver2025-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2025-ps/clusterawareupdating/Set-CauClusterRole.md @@ -105,9 +105,9 @@ $parameters = @{ Set-CauClusterRole $parameters ``` -This command configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. The -CAU clustered role is configured to perform Updating Runs on Tuesdays on the first and second weeks -of each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a +This command configures settings for the CAU clustered role on the cluster named **CONTOSO-FC1**. +The CAU clustered role is configured to perform Updating Runs on Tuesdays on the first and second +weeks of each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a restart is necessary. If the restart doesn't complete within this time, then the Updating Run on that node is marked as failed. Because the command specifies the **Force** parameter, the cmdlet runs without displaying confirmation prompts. @@ -142,14 +142,14 @@ DaysOfWeek Tuesday WeeksInterval 2 ``` -This command configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. The -CAU clustered role is configured to perform Updating Runs on Tuesdays on the second week of each -month. The CAU clustered role allows 10 minutes for the restarting of each node, if a restart is -necessary. If the restart doesn't complete within this time, then the Updating Run on that node is -marked as failed. The CAU clustered role runs a script after updating completes, just after the -node leaves Maintenance mode. The script is located at the root of drive **G:** in clustered storage -and is named `verifyupdatesinstalled.ps1`. Because the command specifies the **Force** parameter, -the cmdlet runs without displaying confirmation prompts. +This command configures settings for the CAU clustered role on the cluster named **CONTOSO-FC1**. +The CAU clustered role is configured to perform Updating Runs on Tuesdays on the second week of +each month. The CAU clustered role allows 10 minutes for the restarting of each node, if a restart +is necessary. If the restart doesn't complete within this time, then the Updating Run on that node +is marked as failed. The CAU clustered role runs a script after updating completes, just after the +node leaves Maintenance mode. The script is located at the root of drive **G:** in clustered +storage and is named `verifyupdatesinstalled.ps1`. Because the command specifies the **Force** +parameter, the cmdlet runs without displaying confirmation prompts. This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -161,8 +161,8 @@ Set-CauClusterRole -ClusterName "CONTOSO-FC1" -UpdateNow -Force ``` This command causes the CAU clustered role to initiate an Updating Run immediately on the cluster -named `CONTOSO-FC1`. Because the command specifies the **Force** parameter, the cmdlet runs without -displaying confirmation prompts. +named **CONTOSO-FC1**. Because the command specifies the **Force** parameter, the cmdlet runs +without displaying confirmation prompts. ### Example 4: Configure settings for a CAU cluster role on the specified cluster @@ -179,10 +179,10 @@ $parameters = @{ Set-CauClusterRole @parameters ``` -This example configures settings for the CAU clustered role on the cluster named `CONTOSO-FC1`. Time -spans are specified for logging a warning or canceling the Updating Run if it isn't completed. The -earliest date that an Updating Run can be triggered is `1/1/2012`. Because the command specifies the -**Force** parameter, the cmdlet runs without displaying confirmation prompts +This example configures settings for the CAU clustered role on the cluster named **CONTOSO-FC1**. +Time spans are specified for logging a warning or canceling the Updating Run if it isn't completed. +The earliest date that an Updating Run can be triggered is `1/1/2012`. Because the command +specifies the **Force** parameter, the cmdlet runs without displaying confirmation prompts This example uses splatting to pass parameter values from the `$parameters` variable to the command. Learn more about [Splatting](/powershell/module/microsoft.powershell.core/about/about_splatting). @@ -213,17 +213,22 @@ Accept wildcard characters: False Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. For instance, to specify a Domain argument for one plug-in: + - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, - separated by commas. For instance: + +You can specify multiple pairs in a set separated with semicolons. For instance: + +- `@{name1=value1;name2=value2;name3=value3}` + +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -231,16 +236,19 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more - information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the - criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` + +For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in +and the criteria such as IsInstalled that can be included in the query strings, see +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: + - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a - structure that contains the updates to apply and that contains the hotfix configuration file + structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: + - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -251,7 +259,7 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfig.xml is used. For more information about required and optional + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). @@ -274,7 +282,7 @@ values separated with commas. The default is the **Microsoft.WindowsUpdatePlugin plug-in coordinates the Windows Update Agent software resident on each cluster node, the same software that is used when updates are downloaded from Windows Update or Microsoft Update, or from a Windows Server Update Services (WSUS) server. For more information about how plug-ins work with -CAU, see [How CAU Plug-ins Work](https://go.microsoft.com/fwlink/p/?LinkId=235333). +CAU, see [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: String[] @@ -327,22 +335,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -Confirm - -Prompts you for confirmation before running the cmdlet. - -```yaml -Type: SwitchParameter -Parameter Sets: (All) -Aliases: cf - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -Credential Specifies the administrative credentials for the target cluster. @@ -413,11 +405,11 @@ Specifies the method used to bring drained workloads back to the node, at the en node. Drained workloads are workloads that were previously running on the node, but were moved to another node. The acceptable values for this parameter are: -- NoFailback -- Immediate -- Policy +- `NoFailback` +- `Immediate` +- `Policy` -The default value is **Immediate**. +The default value is `Immediate`. ```yaml Type: FailbackType @@ -540,7 +532,7 @@ Accept wildcard characters: False ### -MaxRetriesPerNode Specifies the maximum number of times that the update process, which includes any pre-update and -post-update scripts, is retried per node. The maximum is **64** and the default is **3**. +post-update scripts, is retried per node. The maximum is 64 and the default is 3. ```yaml Type: Int32 @@ -632,11 +624,11 @@ Accept wildcard characters: False Specifies the type of reboot to use for each node in the cluster during the update. The available values are: -- ClusProp -- FullReboot -- SoftReboot -- PluginCustomReboot -- OrchestratorDefault +- `ClusProp` +- `FullReboot` +- `SoftReboot` +- `PluginCustomReboot` +- `OrchestratorDefault` ```yaml Type: RebootType @@ -949,6 +941,22 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -WhatIf Shows what would happen if the cmdlet runs. The cmdlet is not run. From 69533f45a94d4e052391b4cf5d7a62efc4bbaa05 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 15 Jul 2024 16:13:15 -0400 Subject: [PATCH 51/98] Update formatting --- .../Add-CauClusterRole.md | 50 +++++++++++-------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md index c5e486e10d..b3782210f1 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Add-CauClusterRole.md @@ -186,19 +186,25 @@ Accept wildcard characters: False ### -CauPluginArguments -Specifies an array of name=value pairs (arguments) for each updating plug-in to use. +Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + For instance, to specify a Domain argument for one plug-in: + - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, - separated by commas. For instance: + +You can specify multiple pairs in a set separated with semicolons. For instance: + +- `@{name1=value1;name2=value2;name3=value3}` + +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -206,30 +212,32 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: -- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more - information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the - criteria such as IsInstalled that can be included in the query strings, see - [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` + +For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in +and the criteria such as IsInstalled that can be included in the query strings, see +[IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). + +For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: -For the **Microsoft.HotfixPlugin** plug-in. -the following argument is required: - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a - structure that contains the updates to apply and that contains the hotfix configuration file + structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: + - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled for either SMB signing or SMB Encryption. -- **DisableAclChecks=\**: Boolean value to indicate that the plug-in checks for sufficient - permissions on the hotfix root folder and the hotfix configuration file. If not specified, the - default value is False. +- **DisableAclChecks=\**: Boolean value to indicate that the plug-in will check for + sufficient permissions on the hotfix root folder and the hotfix configuration file. If not + specified, the default value is False. - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name DefaultHotfixConfigFile.xml is used. For more information about required and optional + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see - [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] From 54091ae0a728d7d83badccac24339306d8ab5ef2 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 15 Jul 2024 16:14:53 -0400 Subject: [PATCH 52/98] Update formatting --- .../clusterawareupdating/Invoke-CauRun.md | 53 +++++++++++-------- 1 file changed, 30 insertions(+), 23 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md index d39211794a..814b4739b9 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauRun.md @@ -147,51 +147,58 @@ Accept wildcard characters: False ### -CauPluginArguments -Specifies a set of name=value pairs for each updating plug-in to use. +Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + For instance, to specify a Domain argument for one plug-in: + - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** that you specify. If you specify arguments for more than one plug-in, provide - the sets of name=value pairs in the order that you pass values in **CauPluginName**, separated by - commas. For instance: + +You can specify multiple pairs in a set separated with semicolons. For instance: + +- `@{name1=value1;name2=value2;name3=value3}` + +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value - is **'False'**. + is False. - A standard Windows Update Agent query string that specifies criteria used by the Windows Update Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: - - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: -- **HotfixRootFolderPath**: The UNC path to a hotfix root folder in an SMB share with a structure - that contains the updates to apply and that contains the hotfix configuration file. + +- **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a + structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: -- **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption is enforced for - data accessed from the SMB share. If not specified, the default value is False. To ensure the + +- **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced + for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled for either SMB signing or SMB Encryption. -- **DisableAclChecks=\**: Boolean value to indicate that the plug-in checks for sufficient - permissions on the hotfix root folder and the hotfix configuration file. If not specified, the - default value is False. +- **DisableAclChecks=\**: Boolean value to indicate that the plug-in will check for + sufficient permissions on the hotfix root folder and the hotfix configuration file. If not + specified, the default value is False. - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. -- **HotfixConfigFileName=\**: Name for the hotfix configuration file. -If not specified, the default name `DefaultHotfixConfig.xml` is used. - -For more information about required and optional arguments for the **Microsoft.HotfixPlugin** -plug-in, see [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). +- **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional + arguments for the **Microsoft.HotfixPlugin** plug-in, see + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] From 4c66e491d94bef8fc9107f4a6cd82bcf68f5370c Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 15 Jul 2024 16:15:49 -0400 Subject: [PATCH 53/98] Update formatting --- .../clusterawareupdating/Invoke-CauScan.md | 34 ++++++++++--------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md index 7bde753146..bf29331ebd 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md +++ b/docset/winserver2022-ps/clusterawareupdating/Invoke-CauScan.md @@ -100,23 +100,24 @@ Accept wildcard characters: False ### -CauPluginArguments -Specifies a set of name=value pairs for each updating plug-in to use. -For instance, to specify a **Domain** argument for one plug-in: +Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + +For instance, to specify a Domain argument for one plug-in: - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values into the **CauPluginName** - parameter, separated by commas. For instance: +You can specify multiple pairs in a set separated with semicolons. For instance: -- `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` +- `@{name1=value1;name2=value2;name3=value3}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + +- `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value @@ -125,17 +126,19 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: - - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: + - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: + - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -146,10 +149,9 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixInstallerTimeoutMinutes=\**: The length of time in minutes that the plug-in allows the hotfix installer process to return. If not specified, the default value is 30 minutes. - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the - default name `DefaultHotfixConfig.xml` is used. - -For more information about required and optional arguments for the **Microsoft.HotfixPlugin** -plug-in, see [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). + default name `DefaultHotfixConfig.xml` is used. For more information about required and optional + arguments for the **Microsoft.HotfixPlugin** plug-in, see + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] From b5592bebd18a55b43ac80653b849299bbcdaadbd Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Mon, 15 Jul 2024 16:16:40 -0400 Subject: [PATCH 54/98] Update formatting --- .../Set-CauClusterRole.md | 28 ++++++++++++------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md index bd4834d5e9..0e9a56042f 100644 --- a/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md +++ b/docset/winserver2022-ps/clusterawareupdating/Set-CauClusterRole.md @@ -208,18 +208,24 @@ Accept wildcard characters: False ### -CauPluginArguments Specifies a set of name=value pairs, as arguments, for each updating plug-in to use. + For instance, to specify a Domain argument for one plug-in: + - `@{Domain=Domain.local}` -You can specify multiple pairs in a set separated with semicolons. -For instance: -- `@{name1=value1;name2=value2;name3=value3}` These name=value pairs must be meaningful to the - **CauPluginName** parameter that you specify. If you specify arguments for more than one plug-in, - provide the sets of name=value pairs in the order that you pass values in **CauPluginName**, - separated by commas. For instance: + +You can specify multiple pairs in a set separated with semicolons. For instance: + +- `@{name1=value1;name2=value2;name3=value3}` + +These name=value pairs must be meaningful to the **CauPluginName** parameter that you specify. If +you specify arguments for more than one plug-in, provide the sets of name=value pairs in the order +that you pass values in **CauPluginName**, separated by commas. For instance: + - `@{name1=value1;name2=value2;name3=value3},@{name4=value4;name5=value5}` -For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. -The following arguments are optional: +For the default **Microsoft.WindowsUpdatePlugin** plug-in, no arguments are needed. The following +arguments are optional: + - **'IncludeRecommendedUpdates'='\'**: Boolean value to indicate that recommended updates will be applied in addition to important updates on each node. If not specified, the default value is False. @@ -227,17 +233,19 @@ The following arguments are optional: Agent to filter the updates that will be applied to each node. For a name, use **QueryString** and for a value, enclose the full query in quotation marks. If not specified, then the **Microsoft.WindowsUpdatePlugin** plug-in by default uses the following argument: - - `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` +- `QueryString="IsInstalled=0 and Type='Software' and IsHidden=0 and IsAssigned=1"` For more information about query strings for the default **Microsoft.WindowsUpdatePlugin** plug-in and the criteria such as IsInstalled that can be included in the query strings, see [IUpdateSearcher::Search method](/windows/win32/api/wuapi/nf-wuapi-iupdatesearcher-search). For the **Microsoft.HotfixPlugin** plug-in, the following argument is required: + - **HotfixRootFolderPath=\**: The UNC path to a hotfix root folder in an SMB share with a structure that contains the updates to apply and that contains the hotfix configuration file. The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: + - **RequireSmbEncryption=\**: Boolean value to indicate that SMB Encryption will be enforced for accessing data from the SMB share. If not specified, the default value is False. To ensure the integrity of the data accessed from the SMB share, the plug-in requires that the share is enabled @@ -250,7 +258,7 @@ The following arguments are optional for the **Microsoft.HotfixPlugin** plug-in: - **HotfixConfigFileName=\**: Name for the hotfix configuration file. If not specified, the default name `DefaultHotfixConfig.xml` is used. For more information about required and optional arguments for the **Microsoft.HotfixPlugin** plug-in, see - [How CAU Plug-ins Work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). + [How Cluster-Aware Updating plug-ins work](/windows-server/failover-clustering/cluster-aware-updating-plug-ins). ```yaml Type: Hashtable[] From b8fc0008c9f532af1f2486693c1901327ba7cd82 Mon Sep 17 00:00:00 2001 From: MattTB <49200399+mtrilbybassett@users.noreply.github.com> Date: Mon, 15 Jul 2024 18:21:52 -0400 Subject: [PATCH 55/98] Update Get-VMGpuPartitionAdapter.md --- .../winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md b/docset/winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md index 07ff8b3907..324563bc61 100644 --- a/docset/winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Get-VMGpuPartitionAdapter.md @@ -186,8 +186,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) +[Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) -- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) +[Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) -- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) +[Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) From 7f491defbf9d3bb6ce1872fee3265bbc0e39327d Mon Sep 17 00:00:00 2001 From: MattTB <49200399+mtrilbybassett@users.noreply.github.com> Date: Mon, 15 Jul 2024 18:23:46 -0400 Subject: [PATCH 56/98] Update Remove-VMGpuPartitionAdapter.md --- .../hyper-v/Remove-VMGpuPartitionAdapter.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Remove-VMGpuPartitionAdapter.md b/docset/winserver2025-ps/hyper-v/Remove-VMGpuPartitionAdapter.md index efd3a8e770..aa20c6541f 100644 --- a/docset/winserver2025-ps/hyper-v/Remove-VMGpuPartitionAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Remove-VMGpuPartitionAdapter.md @@ -254,8 +254,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) +[Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) -- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) +[Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) -- [Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) +[Set-VMGpuPartitionAdapter](set-vmgpupartitionadapter.md) From 67f57b6d1ed36264b925b9f14ad8c215a51137f1 Mon Sep 17 00:00:00 2001 From: MattTB <49200399+mtrilbybassett@users.noreply.github.com> Date: Mon, 15 Jul 2024 18:24:15 -0400 Subject: [PATCH 57/98] Update Set-VMGpuPartitionAdapter.md --- .../winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docset/winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md b/docset/winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md index a8ed8872b7..923ae500ce 100644 --- a/docset/winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md +++ b/docset/winserver2025-ps/hyper-v/Set-VMGpuPartitionAdapter.md @@ -460,8 +460,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) +[Add-VMGpuPartitionAdapter](add-vmgpupartitionadapter.md) -- [Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) +[Get-VMGpuPartitionAdapter](get-vmgpupartitionadapter.md) -- [Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) +[Remove-VMGpuPartitionAdapter](remove-vmgpupartitionadapter.md) From 7bfb6d10f0b2615208e35fd1505b64e16648858e Mon Sep 17 00:00:00 2001 From: MattTB <49200399+mtrilbybassett@users.noreply.github.com> Date: Wed, 17 Jul 2024 15:14:55 -0400 Subject: [PATCH 58/98] Update Get-VMHostPartitionableGpu.md --- docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md b/docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md index 7607bba193..9bca7e0ffc 100644 --- a/docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md +++ b/docset/winserver2025-ps/hyper-v/Get-VMHostPartitionableGpu.md @@ -159,4 +159,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Set-VMHostPartitionableGpu](set-vmhostpartitionablegpu.md) +[Set-VMHostPartitionableGpu](set-vmhostpartitionablegpu.md) From c26900b80643ca4fa9f09209430dadcc9a739c22 Mon Sep 17 00:00:00 2001 From: MattTB <49200399+mtrilbybassett@users.noreply.github.com> Date: Wed, 17 Jul 2024 15:20:23 -0400 Subject: [PATCH 59/98] Update Set-VMHostPartitionableGpu.md --- docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md b/docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md index 9339de7acf..cd2af1a11a 100644 --- a/docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md +++ b/docset/winserver2025-ps/hyper-v/Set-VMHostPartitionableGpu.md @@ -209,4 +209,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -- [Get-VMHostPartitionableGpu](get-vmhostpartitionablegpu.md) +[Get-VMHostPartitionableGpu](get-vmhostpartitionablegpu.md) From 2121760647b700524467291ae250380d92053c6e Mon Sep 17 00:00:00 2001 From: "Danni X." Date: Thu, 8 Aug 2024 17:34:15 +0800 Subject: [PATCH 60/98] Update cabgen-bootstrap.yml --- cabgen-bootstrap.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cabgen-bootstrap.yml b/cabgen-bootstrap.yml index 51843abfaa..6d83c662c5 100644 --- a/cabgen-bootstrap.yml +++ b/cabgen-bootstrap.yml @@ -5,10 +5,10 @@ pr: none # Disable pull request triggers. resources: repositories: - - repository: templates + - repository: ReferenceAutomation type: git name: Content CI/ReferenceAutomation ref: refs/heads/master extends: - template: PowerShell/cabgen.yml@templates \ No newline at end of file + template: PowerShell/cabgen.yml@ReferenceAutomation From c71cee2776fa75f189f78be68ac60d64fa907f17 Mon Sep 17 00:00:00 2001 From: Mukund Kher Date: Mon, 12 Aug 2024 14:46:28 -0700 Subject: [PATCH 61/98] Learn Editor: Update Add-WindowsPackage.md --- docset/winserver2022-ps/dism/Add-WindowsPackage.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docset/winserver2022-ps/dism/Add-WindowsPackage.md b/docset/winserver2022-ps/dism/Add-WindowsPackage.md index 1f6e1dd32b..253f17f149 100644 --- a/docset/winserver2022-ps/dism/Add-WindowsPackage.md +++ b/docset/winserver2022-ps/dism/Add-WindowsPackage.md @@ -275,6 +275,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES +**Checkpoint cumulative updates** + +Starting with Windows 11, version 24H2, the latest cumulative update may have a prerequisite cumulative update that is required to be installed first. These are known as checkpoint cumulative updates. In these cases, the cumulative update file level differentials are based on a previous cumulative update instead of the Windows RTM release. The benefit is a smaller update package and faster installation. When you obtain the latest cumulative update from the Microsoft Update Catalog, checkpoint cumulative updates will be available from the download button. In addition, the knowledge base article for the cumulative update will provide additional information. + +To install the checkpoint(s) when servicing the Windows OS and WinPE, call Add-WindowsPackage with the target cumulative update. The folder from -PackagePath will be used to discover and install one or more checkpoints as needed. Only the target cumulative update and checkpoint cumulative updates should be in the -PackagePath folder. Cumulative update packages with a revision <= the target cumulative update will be processed. If you are not customizing the image or device with additional languages and/or optional features, then separate calls to Add-WindowsPackage (checkpoint cumulative updates first) can be used to apply the servicing stack dynamic update and the latest cumulative updates. + ## RELATED LINKS [Get-WindowsPackage](./Get-WindowsPackage.md) From 913d24c77c0f07c5030c4b478d37096aa5b41c9b Mon Sep 17 00:00:00 2001 From: Mukund Kher Date: Mon, 12 Aug 2024 14:47:04 -0700 Subject: [PATCH 62/98] Learn Editor: Update Add-WindowsPackage.md From d73c8051afcce5e1a0752a090c85d071955165c0 Mon Sep 17 00:00:00 2001 From: Mukund Kher Date: Fri, 16 Aug 2024 16:26:20 -0700 Subject: [PATCH 63/98] Update Add-WindowsPackage.md --- docset/winserver2022-ps/dism/Add-WindowsPackage.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docset/winserver2022-ps/dism/Add-WindowsPackage.md b/docset/winserver2022-ps/dism/Add-WindowsPackage.md index 253f17f149..8d1884b7ff 100644 --- a/docset/winserver2022-ps/dism/Add-WindowsPackage.md +++ b/docset/winserver2022-ps/dism/Add-WindowsPackage.md @@ -277,9 +277,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable **Checkpoint cumulative updates** -Starting with Windows 11, version 24H2, the latest cumulative update may have a prerequisite cumulative update that is required to be installed first. These are known as checkpoint cumulative updates. In these cases, the cumulative update file level differentials are based on a previous cumulative update instead of the Windows RTM release. The benefit is a smaller update package and faster installation. When you obtain the latest cumulative update from the Microsoft Update Catalog, checkpoint cumulative updates will be available from the download button. In addition, the knowledge base article for the cumulative update will provide additional information. - -To install the checkpoint(s) when servicing the Windows OS and WinPE, call Add-WindowsPackage with the target cumulative update. The folder from -PackagePath will be used to discover and install one or more checkpoints as needed. Only the target cumulative update and checkpoint cumulative updates should be in the -PackagePath folder. Cumulative update packages with a revision <= the target cumulative update will be processed. If you are not customizing the image or device with additional languages and/or optional features, then separate calls to Add-WindowsPackage (checkpoint cumulative updates first) can be used to apply the servicing stack dynamic update and the latest cumulative updates. +Starting with Windows 11, version 24H2, the latest cumulative update may have a prerequisite cumulative update that is required to be installed first. To install these checkpoint cumulative update(s), call Add-WindowsPackage with the target cumulative update. The folder from -PackagePath will be used to discover and install one or more checkpoints as needed. Only the target cumulative update and checkpoint cumulative updates should be in the -PackagePath folder. Cumulative update packages with a revision <= the target cumulative update will be processed. ## RELATED LINKS From bec69b1b95d689d80b2b5332a21c16c32a4c5247 Mon Sep 17 00:00:00 2001 From: Mukund Kher Date: Mon, 19 Aug 2024 15:37:37 -0700 Subject: [PATCH 64/98] Update docset/winserver2022-ps/dism/Add-WindowsPackage.md Co-authored-by: Meghan Stewart <33289333+mestew@users.noreply.github.com> --- docset/winserver2022-ps/dism/Add-WindowsPackage.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2022-ps/dism/Add-WindowsPackage.md b/docset/winserver2022-ps/dism/Add-WindowsPackage.md index 8d1884b7ff..ce8bfaf4b0 100644 --- a/docset/winserver2022-ps/dism/Add-WindowsPackage.md +++ b/docset/winserver2022-ps/dism/Add-WindowsPackage.md @@ -277,7 +277,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable **Checkpoint cumulative updates** -Starting with Windows 11, version 24H2, the latest cumulative update may have a prerequisite cumulative update that is required to be installed first. To install these checkpoint cumulative update(s), call Add-WindowsPackage with the target cumulative update. The folder from -PackagePath will be used to discover and install one or more checkpoints as needed. Only the target cumulative update and checkpoint cumulative updates should be in the -PackagePath folder. Cumulative update packages with a revision <= the target cumulative update will be processed. +Starting with Windows 11, version 24H2, the latest cumulative update may have a prerequisite cumulative update that is required to be installed first. To install these checkpoint cumulative updates, call Add-WindowsPackage with the target cumulative update. The folder from -PackagePath will be used to discover and install one or more checkpoints as needed. Only the target cumulative update and any prerequisite checkpoint cumulative updates should be in the -PackagePath folder. Cumulative update packages with a revision less than or equal to the target cumulative update will be processed. ## RELATED LINKS From 807e16f4c568ce27a9ed9b48c2304e33030ba74a Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 20 Aug 2024 16:22:15 -0400 Subject: [PATCH 65/98] Initial update for failover excluded adapters --- .../Add-ClusterExcludedAdapter.md | 160 ++++++++++++++++++ .../Get-ClusterExcludedAdapter.md | 143 ++++++++++++++++ .../Remove-ClusterExcludedAdapter.md | 160 ++++++++++++++++++ .../Repair-ClusterNameAccount.md | 136 +++++++++++++++ .../Set-ClusterExcludedAdapter.md | 160 ++++++++++++++++++ 5 files changed, 759 insertions(+) create mode 100644 docset/winserver2025-ps/failoverclusters/Add-ClusterExcludedAdapter.md create mode 100644 docset/winserver2025-ps/failoverclusters/Get-ClusterExcludedAdapter.md create mode 100644 docset/winserver2025-ps/failoverclusters/Remove-ClusterExcludedAdapter.md create mode 100644 docset/winserver2025-ps/failoverclusters/Repair-ClusterNameAccount.md create mode 100644 docset/winserver2025-ps/failoverclusters/Set-ClusterExcludedAdapter.md diff --git a/docset/winserver2025-ps/failoverclusters/Add-ClusterExcludedAdapter.md b/docset/winserver2025-ps/failoverclusters/Add-ClusterExcludedAdapter.md new file mode 100644 index 0000000000..ed05c61577 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Add-ClusterExcludedAdapter.md @@ -0,0 +1,160 @@ +--- +external help file: ClusterExcludedAdapter.cdxml-help.xml +Module Name: FailoverClusters +online version: +schema: 2.0.0 +--- + +# Add-ClusterExcludedAdapter + +## SYNOPSIS +{{ Fill in the Synopsis }} + +## SYNTAX + +``` +Add-ClusterExcludedAdapter -ExclusionType -ExclusionValue + [-CimSession ] [-ThrottleLimit ] [-AsJob] [] +``` + +## DESCRIPTION + +{{ Fill in the Description }} + +## EXAMPLES + +### Example 1 + +```powershell +{{ Add example code here }} +``` + +{{ Add example description here }} + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +The cmdlet immediately returns an object that represents the job and then displays the command +prompt. You can continue to work in the session while the job completes. + +For more information about Windows PowerShell background jobs, see +[about_Jobs](/powershell/module/microsoft.powershell.core/about/about_jobs). + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExclusionType + +Specifies the type of exclusion to add to the cluster. Acceptable values are: + +- `IPAddress`: Excludes a network adapter based on its IP address. +- `NetworkName`: Excludes a network adapter based on its network name. +- `SubnetMask`: Excludes a network adapter based on its subnet mask. + +```yaml +Type: AdapterExclusionType +Parameter Sets: (All) +Aliases: +Accepted values: IPPrefix, Description, FriendlyName + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExclusionValue + +Specifies the value to use for the exclusion. The value of this parameter depends on the value of +the `-ExclusionType` parameter. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then PowerShell calculates an optimum +throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +[Get-ClusterExcludedAdapter](get-clusterexcludedadapter.md) + +[Remove-ClusterExcludedAdapter](remove-clusterexcludedadapter.md) + +[Repair-ClusterExcludedAdapter](repair-clusterexcludedadapter.md) + +[Set-ClusterExcludedAdapter](set-clusterexcludedadapter.md) diff --git a/docset/winserver2025-ps/failoverclusters/Get-ClusterExcludedAdapter.md b/docset/winserver2025-ps/failoverclusters/Get-ClusterExcludedAdapter.md new file mode 100644 index 0000000000..926b665b63 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Get-ClusterExcludedAdapter.md @@ -0,0 +1,143 @@ +--- +external help file: ClusterExcludedAdapter.cdxml-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=615932 +schema: 2.0.0 +--- + +# Get-ClusterExcludedAdapter + +## SYNOPSIS +{{ Fill in the Synopsis }} + +## SYNTAX + +``` +Get-ClusterExcludedAdapter -ExclusionType [-CimSession ] + [-ThrottleLimit ] [-AsJob] [] +``` + +## DESCRIPTION + +{{ Fill in the Description }} + +## EXAMPLES + +### Example 1 + +```powershell +{{ Add example code here }} +``` + +{{ Add example description here }} + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +The cmdlet immediately returns an object that represents the job and then displays the command +prompt. You can continue to work in the session while the job completes. + +For more information about Windows PowerShell background jobs, see +[about_Jobs](/powershell/module/microsoft.powershell.core/about/about_jobs). + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExclusionType + +Specifies the type of exclusion to retrieve from the cluster. Acceptable values are: + +- `IPAddress`: Excludes a network adapter based on its IP address. +- `NetworkName`: Excludes a network adapter based on its network name. +- `SubnetMask`: Excludes a network adapter based on its subnet mask. + +```yaml +Type: AdapterExclusionType +Parameter Sets: (All) +Aliases: +Accepted values: IPPrefix, Description, FriendlyName + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then PowerShell calculates an optimum +throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### System.String[] + +## NOTES + +## RELATED LINKS + +[Add-ClusterExcludedAdapter](add-clusterexcludedadapter.md) + +[Remove-ClusterExcludedAdapter](remove-clusterexcludedadapter.md) + +[Repair-ClusterExcludedAdapter](repair-clusterexcludedadapter.md) + +[Set-ClusterExcludedAdapter](set-clusterexcludedadapter.md) diff --git a/docset/winserver2025-ps/failoverclusters/Remove-ClusterExcludedAdapter.md b/docset/winserver2025-ps/failoverclusters/Remove-ClusterExcludedAdapter.md new file mode 100644 index 0000000000..2d69319fca --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Remove-ClusterExcludedAdapter.md @@ -0,0 +1,160 @@ +--- +external help file: ClusterExcludedAdapter.cdxml-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=691107 +schema: 2.0.0 +--- + +# Remove-ClusterExcludedAdapter + +## SYNOPSIS +{{ Fill in the Synopsis }} + +## SYNTAX + +``` +Remove-ClusterExcludedAdapter -ExclusionType -ExclusionValue + [-CimSession ] [-ThrottleLimit ] [-AsJob] [] +``` + +## DESCRIPTION + +{{ Fill in the Description }} + +## EXAMPLES + +### Example 1 + +```powershell +{{ Add example code here }} +``` + +{{ Add example description here }} + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +The cmdlet immediately returns an object that represents the job and then displays the command +prompt. You can continue to work in the session while the job completes. + +For more information about Windows PowerShell background jobs, see +[about_Jobs](/powershell/module/microsoft.powershell.core/about/about_jobs). + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExclusionType + +Specifies the type of exclusion to remove from the cluster. Acceptable values are: + +- `IPAddress`: Excludes a network adapter based on its IP address. +- `NetworkName`: Excludes a network adapter based on its network name. +- `SubnetMask`: Excludes a network adapter based on its subnet mask. + +```yaml +Type: AdapterExclusionType +Parameter Sets: (All) +Aliases: +Accepted values: IPPrefix, Description, FriendlyName + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExclusionValue + +Specifies the value to use for the exclusion. The value of this parameter depends on the value of +the `-ExclusionType` parameter. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then PowerShell calculates an optimum +throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +[Add-ClusterExcludedAdapter](add-clusterexcludedadapter.md) + +[Get-ClusterExcludedAdapter](get-clusterexcludedadapter.md) + +[Repair-ClusterExcludedAdapter](repair-clusterexcludedadapter.md) + +[Set-ClusterExcludedAdapter](set-clusterexcludedadapter.md) diff --git a/docset/winserver2025-ps/failoverclusters/Repair-ClusterNameAccount.md b/docset/winserver2025-ps/failoverclusters/Repair-ClusterNameAccount.md new file mode 100644 index 0000000000..b229303dce --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Repair-ClusterNameAccount.md @@ -0,0 +1,136 @@ +--- +external help file: Microsoft.FailoverClusters.PowerShell.dll-Help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?linkid=2204048 +schema: 2.0.0 +--- + +# Repair-ClusterNameAccount + +## SYNOPSIS +{{ Fill in the Synopsis }} + +## SYNTAX + +### InputObject (Default) + +``` +Repair-ClusterNameAccount [-Credentials ] [-Domain ] [-InputObject ] + [-Cluster ] [] +``` + +### Credentials + +``` +Repair-ClusterNameAccount [-Credentials ] [-Domain ] [-Cluster ] + [] +``` + +## DESCRIPTION + +{{ Fill in the Description }} + +## EXAMPLES + +### Example 1 + +```powershell +{{ Add example code here }} +``` + +{{ Add example description here }} + +## PARAMETERS + +### -Cluster + +Specifies the name of the cluster on which to run this cmdlet. If the input for this parameter is +`.` or it is omitted, then the cmdlet runs on the local cluster. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credentials + +Specifies the credentials that this cmdlet uses when it connects to Active Directory Domain +Services. + +```yaml +Type: PSCredential +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Domain + +Specifies the name of the domain in which to repair the cluster name account. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject + +Specifies the cluster name account to repair. + +```yaml +Type: PSObject +Parameter Sets: InputObject +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.Management.Automation.PSObject + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +[Add-ClusterExcludedAdapter](add-clusterexcludedadapter.md) + +[Get-ClusterExcludedAdapter](get-clusterexcludedadapter.md) + +[Remove-ClusterExcludedAdapter](remove-clusterexcludedadapter.md) + +[Set-ClusterExcludedAdapter](set-clusterexcludedadapter.md) diff --git a/docset/winserver2025-ps/failoverclusters/Set-ClusterExcludedAdapter.md b/docset/winserver2025-ps/failoverclusters/Set-ClusterExcludedAdapter.md new file mode 100644 index 0000000000..fbb65657fa --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Set-ClusterExcludedAdapter.md @@ -0,0 +1,160 @@ +--- +external help file: ClusterExcludedAdapter.cdxml-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=691107 +schema: 2.0.0 +--- + +# Set-ClusterExcludedAdapter + +## SYNOPSIS +{{ Fill in the Synopsis }} + +## SYNTAX + +``` +Set-ClusterExcludedAdapter -ExclusionType -ExclusionValue + [-CimSession ] [-ThrottleLimit ] [-AsJob] [] +``` + +## DESCRIPTION + +{{ Fill in the Description }} + +## EXAMPLES + +### Example 1 + +```powershell +{{ Add example code here }} +``` + +{{ Add example description here }} + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +The cmdlet immediately returns an object that represents the job and then displays the command +prompt. You can continue to work in the session while the job completes. + +For more information about Windows PowerShell background jobs, see +[about_Jobs](/powershell/module/microsoft.powershell.core/about/about_jobs). + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExclusionType + +Specifies the type of exclusion to remove from the cluster. Acceptable values are: + +- `IPAddress`: Excludes a network adapter based on its IP address. +- `NetworkName`: Excludes a network adapter based on its network name. +- `SubnetMask`: Excludes a network adapter based on its subnet mask. + +```yaml +Type: AdapterExclusionType +Parameter Sets: (All) +Aliases: +Accepted values: IPPrefix, Description, FriendlyName + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExclusionValue + +Specifies the value to use for the exclusion. The value of this parameter depends on the value of +the `-ExclusionType` parameter. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then PowerShell calculates an optimum +throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +[Add-ClusterExcludedAdapter](add-clusterexcludedadapter.md) + +[Get-ClusterExcludedAdapter](get-clusterexcludedadapter.md) + +[Remove-ClusterExcludedAdapter](remove-clusterexcludedadapter.md) + +[Repair-ClusterExcludedAdapter](repair-clusterexcludedadapter.md) From f7b8dcaf22bd452d8b290453dc3412a1747de531 Mon Sep 17 00:00:00 2001 From: shdyas Date: Wed, 21 Aug 2024 13:47:47 -0700 Subject: [PATCH 66/98] Migrate workflows from microsoft-365-docs-pr --- .github/workflows/AutoLabelAssign.yml | 35 +++++++++++++++++++ .../workflows/AutoLabelMsftContributor.yml | 34 ++++++++++++++++++ .github/workflows/BackgroundTasks.yml | 26 ++++++++++++++ .github/workflows/LiveMergeCheck.yml | 19 ++++++++++ .github/workflows/PrFileCount.yml | 19 ++++++++++ .github/workflows/ProtectedFiles.yml | 17 +++++++++ 6 files changed, 150 insertions(+) create mode 100644 .github/workflows/AutoLabelAssign.yml create mode 100644 .github/workflows/AutoLabelMsftContributor.yml create mode 100644 .github/workflows/BackgroundTasks.yml create mode 100644 .github/workflows/LiveMergeCheck.yml create mode 100644 .github/workflows/PrFileCount.yml create mode 100644 .github/workflows/ProtectedFiles.yml diff --git a/.github/workflows/AutoLabelAssign.yml b/.github/workflows/AutoLabelAssign.yml new file mode 100644 index 0000000000..1a30efad7c --- /dev/null +++ b/.github/workflows/AutoLabelAssign.yml @@ -0,0 +1,35 @@ +name: Assign and label PR + +permissions: + pull-requests: write + contents: read + actions: read + +on: + workflow_run: + workflows: [Background tasks] + types: + - completed + +jobs: + download-payload: + name: Download and extract payload artifact + uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-ExtractPayload.yml@workflows-prod + with: + WorkflowId: ${{ github.event.workflow_run.id }} + OrgRepo: ${{ github.repository }} + secrets: + AccessToken: ${{ secrets.GITHUB_TOKEN }} + + label-assign: + name: Run assign and label + needs: [download-payload] + uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-AutoLabelAssign.yml@workflows-prod + with: + PayloadJson: ${{ needs.download-payload.outputs.WorkflowPayload }} + AutoAssignUsers: 1 + AutoLabel: 1 + ExcludedUserList: '["user1", "user2"]' + ExcludedBranchList: '["branch1", "branch2"]' + secrets: + AccessToken: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/AutoLabelMsftContributor.yml b/.github/workflows/AutoLabelMsftContributor.yml new file mode 100644 index 0000000000..7058a420cf --- /dev/null +++ b/.github/workflows/AutoLabelMsftContributor.yml @@ -0,0 +1,34 @@ +name: Auto label Microsoft contributors + +permissions: + pull-requests: write + contents: read + actions: read + +on: + workflow_run: + workflows: [Background tasks] + types: + - completed + +jobs: + download-payload: + if: github.repository_visibility == 'public' + name: Download and extract payload artifact + uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-ExtractPayload.yml@workflows-prod + with: + WorkflowId: ${{ github.event.workflow_run.id }} + OrgRepo: ${{ github.repository }} + secrets: + AccessToken: ${{ secrets.GITHUB_TOKEN }} + + label-msft: + name: Label Microsoft contributors + if: github.repository_visibility == 'public' + needs: [download-payload] + uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-AutoLabelMsftContributor.yml@workflows-prod + with: + PayloadJson: ${{ needs.download-payload.outputs.WorkflowPayload }} + secrets: + AccessToken: ${{ secrets.GITHUB_TOKEN }} + TeamReadAccessToken: ${{ secrets.ORG_READTEAMS_TOKEN }} diff --git a/.github/workflows/BackgroundTasks.yml b/.github/workflows/BackgroundTasks.yml new file mode 100644 index 0000000000..c0389bb252 --- /dev/null +++ b/.github/workflows/BackgroundTasks.yml @@ -0,0 +1,26 @@ +name: Background tasks + +permissions: + pull-requests: write + contents: read + +on: + pull_request_target: + +jobs: + upload: + runs-on: ubuntu-latest + + steps: + - name: Save payload data + env: + PayloadJson: ${{ toJSON(github) }} + AccessToken: ${{ github.token }} + run: | + mkdir -p ./pr + echo $PayloadJson > ./pr/PayloadJson.json + sed -i -e "s/$AccessToken/XYZ/g" ./pr/PayloadJson.json + - uses: actions/upload-artifact@v4 + with: + name: PayloadJson + path: pr/ diff --git a/.github/workflows/LiveMergeCheck.yml b/.github/workflows/LiveMergeCheck.yml new file mode 100644 index 0000000000..56b79b4813 --- /dev/null +++ b/.github/workflows/LiveMergeCheck.yml @@ -0,0 +1,19 @@ +name: PR can merge into branch + +permissions: + pull-requests: write + statuses: write + contents: read + +on: + pull_request_target: + types: [opened, reopened, synchronize, edited] + +jobs: + + live-merge: + uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-LiveMergeCheck.yml@workflows-prod + with: + PayloadJson: ${{ toJSON(github) }} + secrets: + AccessToken: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/PrFileCount.yml b/.github/workflows/PrFileCount.yml new file mode 100644 index 0000000000..95fcf5e1ed --- /dev/null +++ b/.github/workflows/PrFileCount.yml @@ -0,0 +1,19 @@ +name: PR file count less than limit + +permissions: + pull-requests: write + statuses: write + contents: read + +on: + pull_request_target: + types: [opened, reopened, synchronize, labeled, unlabeled, edited] + +jobs: + + file-count: + uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-PrFileCount.yml@workflows-prod + with: + PayloadJson: ${{ toJSON(github) }} + secrets: + AccessToken: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/ProtectedFiles.yml b/.github/workflows/ProtectedFiles.yml new file mode 100644 index 0000000000..769cd0aa14 --- /dev/null +++ b/.github/workflows/ProtectedFiles.yml @@ -0,0 +1,17 @@ +name: PR has no protected files + +permissions: + pull-requests: write + statuses: write + contents: read + +on: [pull_request_target] + +jobs: + + protected-files: + uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-ProtectedFiles.yml@workflows-prod + with: + PayloadJson: ${{ toJSON(github) }} + secrets: + AccessToken: ${{ secrets.GITHUB_TOKEN }} From ec8176820fc60f278587b597e4bd91058d51e94b Mon Sep 17 00:00:00 2001 From: shdyas Date: Tue, 27 Aug 2024 11:51:36 -0700 Subject: [PATCH 67/98] Remove unreferenced media files --- TeamsAdmin.png | Bin 7138 -> 0 bytes docset/images/compare-changes.png | Bin 31345 -> 0 bytes docset/images/contribute-link.png | Bin 10017 -> 0 bytes docset/images/pencil-icon.png | Bin 10027 -> 0 bytes docset/images/preview-changes.png | Bin 13142 -> 0 bytes docset/images/propose-file-change.png | Bin 20452 -> 0 bytes 6 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 TeamsAdmin.png delete mode 100644 docset/images/compare-changes.png delete mode 100644 docset/images/contribute-link.png delete mode 100644 docset/images/pencil-icon.png delete mode 100644 docset/images/preview-changes.png delete mode 100644 docset/images/propose-file-change.png diff --git a/TeamsAdmin.png b/TeamsAdmin.png deleted file mode 100644 index 6f0bc278b0129dc379c90cc833c39905894dc984..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7138 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 diff --git a/docset/images/contribute-link.png b/docset/images/contribute-link.png deleted file mode 100644 index 6b17e6dd56574b9dc51983aefd29999b1509ff63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10017 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 Ms&}_i+2;BG0y)Y(`Tzg` diff --git a/docset/images/propose-file-change.png b/docset/images/propose-file-change.png deleted file mode 100644 index aedbc07b163d73497ec9f6865093b1c06736c3d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20452 zcmeFZcT|&I*Ea|vAW{XTNQo##r3y-iNKvG!SO|hZ2u&dLDg=-!(v&7hm7=1Qgc5o$ zp*Il%p(6$fp-LzrFc;p>_rCMYJnNgaX4W_V%&=CH>pK1Hv(Inuv-dtkJuuW}K6~*j z6%`e;&OI$7Dk|!E;8Syk4)`8;TYn13p!P7*)}SgG;QI}{oVHUpP^Y3o#WNm4X@PeJ z*Lx-&R8%Z&Cm(8z%NJ`Zs{4LATI!E|&4~?;>3kh&CB5J|(LF9?<3?J?5|4#iH(e<8 zJaznyuGfhYp{N$vDs(JZV$i(23bVCkUS?-qe{-hnHhaJNCEnBbxEWsE3`UAq#&u~J zeXA>Q-r47?%UXW|5)`t)D z1}i*fbw;~6+qV~T@V|adt!DHV46AeXOt0X{Q*(2ck_LQ#+S}U?@3Iv759v$f*VWZk zr|^GeIY40qw)KKV<>}#%IO*dmI_piZEnWJ|@zdtP?+*RELZxMuTy;~lz(qHCrn@gU#%OtGPBLoYY`# z@YCyNOM(WkXCiPeyKz}!-y(M!QTs9n4!hfHts4_%FVQUYsxmT0B6KeApO2e8LI>3V zV>mJ{b@{+`cc3;gRJ*4~Vfo|7kF{o!HlgM_3wEa0=~bnrAN(CrrbZ-dZRl0zTAEnS zU*iigK1>%~XEtfp*4KA=Gn+4D-h{Aa&MyV9(PBop3xkfnR*Tadi{iXL9KYwqIgXb| z5JS0xDH%!A+Hl3mGO`Bsz_2(wJ<||1IeUP*XCtTrt0>8UE)FA9--c9iB?~CH=KRj4 zvrqqgQ|fm4i*)L$H_O4W?1w$k(R3=(H|mzlb^P3ig9n)Bp~!+UI6h>A#I zHA8Dc4uU*m9_eQ_hF1db(Yi4ah_g*i zkDYON)ZPQ0G2#tAXBaWzzwR(||6hK0EC+AL&}I1CoU4}wTOJyU8kpX5 z9OS%GOpQ?s9o2tzTyF$zp0`U)XvdsM(RXGzb3nnA>%4zd(pr$ue-}Onu;C zN7>+|C+t|_%sUSooX)9Z#e&vgRMC=$0W-fe*wK2thS@2N;>12j`W4!=l?^);%E5S? zd7}seKjtZDy-mcYZt#dWgAqTT1nK~7l1;8S79c8L;vNOnePP-g6um&l6=-{{JAy@l z)&*$+Qia-0$zTLN`a$zk|!_``W^L#5bSQ64U?Em_5SY(_xy`m-{QS6<{h zj}9A!lD3r-kIBCQaAiJh~=!zk2k7;iZ{Pz#${WFRGklC42|xMs#@2iKFYd#%T>iCZi6)n zyRKyD&`Y{PhwBWiZ#X+!GEwy!`&nm=O35L?U)xT}Jz@K{K_Zj%@FUp)1O3777?W+G z=vAX}p~ZFgn7Fu}7?W`!{61l7Yqd-?Eod`xOKR!%u8dNRmD#HS&{fRL|mPZi-|Jy z7>3ah2rZ!W1oA~%JfFN#ZqVgEYQu{i+|G$v(!ra51sXJ|^WHKo252=ZgLb+KV>%8iYSucI%Sk%$Amj_!$Lk(K*ifYMJ-Vt3mSgCIhpj7 z`|hIJo^cp~%%9oB{f~8sZBY-g7W#@!<9v!mf@Dl4A-015wc!>=kV&Sa;&AHeqh=~t z75KJ&5>a}1Sm$Wo->0IFT< z(+-9*2u94le`T;<>=X3cuc>-zYNdpL;7>wHIEbcYbG2eo?c-o1(}I}b#uK(fhu6%; z<|a>BdpEcpafVwT34EQ}FEY&%%b2q9oT z@fl?doco#_86JnH7m4q>L<`Q03E>mVv^@)SI(Id1lc!mVsb*QQ45vp{`8r za?b35p-fE>j-^zUF;VPY|| zd`r&cX;BIFf&)SEcmvlMq>4%wj?}G=jJx{l(QC3(X3_9l20C9eTpft)7J~>_c-YPL z;&2Um_w))ho$LKZ{rqW~3>tVu4k#d#O<+(|d-d+T(&Qa*8)81S{B}QwnUqOAcZzhl zb@C?zq&@4+7Da7($Zy}2;3 z%X*Ogq}R#BD+Ke|Zkjp$Wlv+9xhkxDXNg4vgnvL2T}Ihd$(w0^7Qng)q+o5^U-})G9%rg(W@rA%HxMr ziTw;1DJF#*^=_@aXPU0gX-&-bTXlO?Kt)rV4v`#AyNg`Ba=F{w(|R8)&7}`}m^r$< zT4h=p?W8I)Et5nIq~lQ>eB^M|GolJ4G4(Zk>;4zUeLo$&nhTV@b$_Gq(dWa!GzrHKmim%MPR^_A z!o4K)Cx*LztAmrhBx8Vrw^|f^x;g4!eE(EN%vAPCfme;}5XQB8UlStn~>z)^<6SD4u%S=ueQ%7e8G5)*7$B( zO$g2T46-d@)n5MjG8=U8=S9#OL>YYy!Ed5j*$4`fX4;6n|No)&FNHNhkzIs!h{ap^`kgq6Pe%-y6-tL+8L zZpQX63vOR}VQ|&gURqbKa3k7L3i2r=h7fOL1qH(n&$*96`>BliF_B|rNKrUQnZejn zU`F=Rka@OipI#;0+#*;!*Oy;K$j3g9&-xcJPBJ#G2zDUSX&}7l-ka9k#Qq!GdA<9W#7_7iQ?A7Vao{pVOb4gw8NxY@CPn}LeSZKY2*gE!y*s7cx2THvmu z(E440({mbZEYh#{R9d^ck3^$98ivs{(IR`1>(j&RO*>otYakNhM=AKQ)0mT3RWjk` zQ4w%0Au5XDFMQ%y#6QffH+hgR>p0CC5&2c|-dTvT(je^aS}tV_(6xrQ3hs4wcGhz% zkIy2ubgCMW%qCBxb#`#C?r{`+R&7jx%HEU)VNrMQW*|vXErqVoPD_@Vu7wDybKZ_ zlZxF*9%C2-UsQVbj6Rfui|Yr2@S(XNAOz~x>PjmHqB;-08$W;YtZE534J^jbd)q4` z?L$B>w^Qz%GSe?|As(^r4z5qFk2g^c3mt5LJny915HajBRL3A2sBaaqqX z(5$@oKs4egH49;0Qa+H5Hz(Nydr2{6OB9E`>;5<*hYOw!Si0L(e{;;jTT+aNhiB7j z)hq}fC8|qEtssg$-Sg5H>Wz2CJ)Mkqf90pPIJiEEXMwse!&vBLg!zmI@7Hl3#p&4D0!%=;vtJ5O@va>+xX^4w^C_rtV z!t;rd?vjGLI|AS}IWs?-7a=vXlPAkXwrFT{o>gv=e>S7*;=kfT;kF_dS=-xp{rBQ$ z@mq9N{`?=Z6U`5~+49Z&(5Xb2hKA;^I7RbcO`o$^^B|{WcZX^4Gyvne8R@~?#cOf z4eN{#A>2)eN?t3E|9qD+>hUbT*nVbaVq#(;g)Mjb%fp&^%&mq5Sf{- zZ%>P_7nhpVj6C-zRtECV*=q5S^2~jFeB1_A#I=Jj5upCtzxq2G7;|FCCbJ>l6Ra6h zDy+Lu6NXWg)fCiHn0E8SEyn=G0T4;5bF$J=58tAM#J8rR;@l#Ma4fRL!fqAgC*j1g zF&Vi{FW|p=qlwikST!yOq{2$R`axSSWUu)ZO+mM9j`ZzTox3L7H&s%?aLp;30hMZ6 z8cwPq#Es6XFwA2{tC^piPPoXlaMnCX&bArJMg_!jdc3{$wlJg$DBn?X?SNe%(o04B z4Cs2UUxmsIlEjmGv&m(q|eyAv)w!E4o^ zj{=!g>a)HYx(wUfI@i*7&}FaE$X;~6^^yk88|>^L5K2l@Byx+(5k5Ad@6XrVhIGO< zhgxZ_^KtB&w#qm!9(rdv@%v8`D=+lty-=UhcYQP`a{hNKee}%kr|1yKC{u~Q{hqmL zMV3Atip`3e7RAP+tuC(B`NE!UaG<{?%>@6+_SckF3#!mWUQJcBz$urRVWB2OHk?X8 z;xsY*9nWqg47Ns+;F3{O3pB9<$6~t-FAoAStv*&~Xbuo4)Uempm(}Tx~3^-^u%DY{bhV z-qtNwu*=2tSF15NrT4WdB_R9Q5O%sOsjNm$=r#4$n*KZ};OnWDDS0KrOKrPD`pYjPJ{Kez zltI;<(t41wj9*4W(zjy9=Kv6MmKzK^QNM zPm%g@x2o!~*z@Dm%0G2Hur|?eR!cg7@h-2#&8FpXi0|&&^x8s4^aatJ%+TtzSLi7; z?~kgY({2)9Q@B+FJVkS$-H)?#h2($23y@U1k_yq%&r=8q>!4@2)+6?9AL- z9qTb?2K5_J63_>fIjLkE+%#yhGq%9%joX$Iw)SQK*6k3o0JX>IuZXU6479++o(GvW zzW6TE#6&(%@G&-i50b9AGhG2 zH@S6*Mf5Be3x|W0Qm-G1$Q=3-bqQ^w5}7G&dNPuJDu&*~F}IRuAy~Rgy{>ufr(!yL zE`^+Cz34C7dBAy*aKC`yg8K}`p*+GdC_~?3jeV-9AKz|%CI#q>&kBG@@i?>^xrOLm zv80}H0sgkz30vs#>5}0C^$gVu?F^m{YEu=5`{}`2Gu${zFpX#rDw9(6v9mzjsIoYSlfw z^*Wr5*uQY8vv$?&&aZncR>LOtGqM2A_2u~uia!b6dr!{t{Hytak8LW+zc=ZvI|J-@ zCDus&+2RAgR3cgU-6<4`v#sqXA^dboWqBkk$Xiuawd0(Z+>=ml`R4feDKS|m@zUl;kKE*J2aH5E?lWy$PwN`v)UN(*2{hqjY7k-<4_+G2K3+cFgBJxYrb*S3 zt7ezqV*}@wq{vKKk}~P8}qlw=G7k`lNuU=jGuO*e^(v3Ca#au<9GL!9L;NL zJjM5ryU&{j)Mm(2?{&$V4-HX>k8I6vZG2oB2HpqR?G^{7BM#O~Ew1sql+vzzmxwb+KQJ1?GR@DJPKxi-8d$+Vf1i0K7Y(!fc8GC?$)$5tk=CO{Ai>&cHdlO zq1I4si7*%NExVz_v+uZ){IDrjc+TxSU;Rd$1%^Fri3;BQu3K<-t>$^b;(Wod+PE@$ z$k-RUR|Jx;qE0zcZ)Y)eRnPH++iSB}ic276^tR7$NU(5wpz~rzX{Ik~R4T<-ma{!C zFAtzIoafXEwtO%pxkF1;yso6C6JEX5b7$$kg;(+{#yzE>$@%$s-F-AeXwDj3wxO4%cL7KuufxP5oOOTaE(b-k^bd}PA5`&XRhuc%5wz)9YW*$h z2c~QGJ)D2YW=s8`E%gTDdmnOn`I?_qTb{s=qfSE=n>S~%wXITq;vJzsOKC*)5E?u* zNnTX%n{dZ^v!C@~hytZxueLzsG*_McK0IkL14I5*%BnT%8*s89C-!<^L5O}o&w(DJ z#l_c^-Eu49Zig3Pwq_9v9M0r77YcxhxZ~h9HqzdWLjN%B?9_fi%9$DPvA3s%=>E=Z z(5H%{_FmQlg4OQ0qxfq8vwQxseo=^T)`yV288GKedgbj6_4UT(Mnm`6nsG`c6(s&g zAqK)`(HKzkzvuh)z~9>^`+*yDqw<82y`QS9+&54Uz%yp2@W^qt1B&rq2LGG>;}RVh zw|yn(O4q92{qda=7thV(8*1LGsjR1Z{Hkn-*N!&gFQsG_cJW1rLe9Lq_Fo|K`Fy)kPs}qWTR|&fT?x(@wE)j?kt~R ziyi}zLK%9_~c1Qoi`liDZtlufQ{VA?`yQ}zu0s<=~(K; zE9Z1IMY4HOaNq^>X*deTK!Cs%8LFsfp60k*WySE&@MJAwQa2lUvFLp@zHwYgtqLc; z!sP`r&Rtw_?Sk0T^ShG4+j)HChf=>=Itb2xHS<%c9QTm}yw}C?YBMq3;COX^>8JGa z7keLM<2z&ZszI-MZ;LQpUtMfFjgNxjFiNMfXm|vUkKWlkYnCL{t~Tmg#H^9x0UC$1 z!FXYoL+S#9RGmlpjy+0m@pIJ@MWNdpN|RNbxtljtgZ;KUPIa|1RBd!ZIe+$t_8GJ) zL0EC~vHo+-)J?HFkOx*x#q`)?A*-}AIJ7t#E~_kS!H$g#jyi{CwzA<|ZL2(8A2>xf zp9&*}Z(m3UJK_AeVm}Lm+t0eFC52PB*9u-;?C+prL3yp#(k}Js)=yjti9}LTbw+uc zi$EML=R|{DE+YA-wC3H~8|i=PnfS{Zhr&&f@ZME9ny+KLyx=n$ z6s#r#79AzAc&i*sfg(eYePg0flcG3#H8@9e{ll7gus&-2qpxg)*QI$fWNcpVE;)f8 z*T+(%R~@^E%*Kd5bfKcL4Ya)zcZEUO&^+{6X!N?>4VDrdrSdeg!B7PpG^xL5X~n-* zMSRowU5;9RwKQmz{HQq{Q?mFeriD`N)|UPne@|)V=naFH7%GX1E?|jjc-*1My`|D} z4yV>J$+;x@9glmDo;=P1YUW@H4tt1OCId?cKej4P3#4B6#f9nvyFHihWXu1DZT#sYwTiK;w{yv*6r&zn+*>Ni_97Rj zuN#9u`!aa5Q;g89HuM{OGS1MbX8sSUUX;A@5!qwk7^oWca8?&lN!B|^)_Z1oz``E~I{Qw_R}=Pfj&pBbv)O*`O_z1edUn2B(Pw2O zfGR#Vwx+vVNB-6=;R2^JW`?=m#qu?5$2Cy%_wV12Y$}t=_T_|v=^3e~rkmKB0o{5i zl`8820AzH)jOC5Z9&Vz~NoY}vuiT}cQo9;_XZmU|E)vZ&mk&-)e4M3Kq;|w@ddtcJ zWhAw?4K5b>ov~wH<#19ag}(vlQYWERVAF3-zvcb0)j164@t(|Q5=KKGQFY%=){9_2RuUZk07opn0OM3hi9))up1WU))o)3DOf`4^(j`XpBx-b0#Hod!q#`y~Osyru>PyTU{N+Ex= zL^**pm@o2!8YL$&70)|Er`+3i!%g{Gu=Q{Osc^7c@v2;z3{Kns@JCv48%2RrkJgnuR7S`ch29l#3jAQ4D50(g4vzMISInHL79*TTX)ZBRn?=Xg zix3@pX}B%i(J)Nhvf5+`^;BQFYYp{O7gN@ID(9cKUKpERY}Sq!*pX62#pyfsp2JpS zA(OmkfSttr))NMwsvaI^h>uP-eHa(XP~^Xw(IQ^ ziRG$Jd!8f5fpNixCTm#Kb$I1~_JS&f!aPA};;@q>3D)k~NEQ`%bxK7kn%ucgh943KSRW8A7 zsefkN??#(fUF;>i0jxK%J#6Dsh1ZRD)q>T`o9?NvIGu4Yw?H+g)v(E6y%q4vq77d! zaqk*IgjU++ZWk|eu0+Kk0Tz#e5V2o(L<^6hL5hJm*3;HSvuFcy;E$BN_+|N$Qlc?L zs!)9F(=tF1C?=QR4lRrMJd#)i8Cpp$@8Cvglc)1yS+7vAjD#6mb5W8$Q_-d%Qgy{jhl30ZN8z&cKzsB>; z=Poo)7*S^gpMuz`)4HC@yx44HdxsX8#PgI|+$Q1)m0lY30+0mx|3DHpf_?*wh5XS1 zY+1M=Dm9N^G2pwp6Bl_eo(SvQ{{q*umVz=dry#GH^8OzsJ!YQU+}!-fw9nmqI|#4a zL#lM3VicTwA5PVni@dIE{7#3{R#L98%;S8THT2ibcbQSYRKH&hR_5>b|MZZ`N9n_^ zeje4DCvbB5WJMKk$Xusf6*xBCxSuE!dgMDE+L30KQ&lz2uNHviSMu!Y^}~DDMb9GM z&|asLb`FX3o?Qrhc}Sh6-gNM1wi<9_lqsYS?ELvteMLL2`b3eDm0et__o$mD0%2aS z#D5iDYz8a7%!|*_dr;3%JchR3I%|OQ z@ae#F-fokmtP^+ho*-vPDsZGXsryD{p5s7uywRZSzLe+h?6d1Ny?g|nHJ%PFEfP=8 z>l^zvz9cX!exZ3EI29hxHP0IFyi={J@vlM@_CXrFUCHzPflf`}{iZ2Q=x5!f=6{uM zqY~id-B#CETt|yD@2VYqF|~k!&;K1M;MntjlC8XnTR6uUK>lHx>-C-U@DIi1{TN(v z{QZJ^yh{p{Dn2gm;L@iIAJe<%9*jXU?{-tg5gDIQNjaO)=#8wRt^-x@&XRI`!vpa&yp-xXc?+;u1lGA6)+>9yX!74HHbwAEa%T#V z$O4lMBjW{M7?JIAb802!@kPDcCbM8NdRF@Z9i6Duf$$z?dRP2!k#b#p0vK(V%@u(r7ducwyGG`YkAzAXtQ&z z$GnCp*W`?|R7D%>{N+3DR}cH)+VXn`Csrwc;$CzhrJKT<)MK(fVxO(7eE9GM@2V2T z=tbsI-C(`hB%OUUnd<$q|KPKrf%W>D5z6;0a=^rjUFmkntiXZE@9K@ce6K&7l^jwj zm2FDUX=DsVD<{x3Fx$eSa-Xp=9$g&D^@|285WO@%vpd~2`oKhS#XS>oF^$iCJq!2b zt8uqJ)>42vD)WYj7NtM-225tVrlo-s^s={=smS2v3FBu~7;|n# z!i<=;k7-=3Sry{t_Ec}d%j6hZWHPXa22 zO2=90;`QgzOC;_j7=_o=xLWnI_d%H#=x|8NBu;qHkv4g3Li-O*uEZG1YXX!-?+T{z z#cl3K_I$NdTgRQk4pP}7O0xO)yO{5rNmepGc<=S#=?kYDz(y4ikYtR2P-&j#Fkk8H zAs!gfD2P9zl8XIGUH>bV_gn1_HsDin!Bog4=H7>N0zv+jQnQpzy})$K^d0|blVb9S zxajnz+lcS20m%fT26pSt+XSpfD~W3=o0We0 z2hsX7EgYgQJ)L9p0K4p%CtPt=wRm1A=a46xX4C%Kt#y?D5Ku#JTn! z<^E%p4Lu(qwvsTTwBw*z5_L*p764BFQbN8WbQIAD=kmzYy7{>5pF;6h`f|bYlN5`a8nQIawH?A`ALaXR#fCRA_k+d!e~%O-0KhjkV8wKH z?nJg!e|9`FJ||;3v)T7~dXRMZMIoBetlG7Oo@%KcSLRK^qF_f-kKXtJ=D9A#|CV9E zvG+G%?Tf`yM$ ztr}+pwZ1)M=LCL@G;|2|`C!ScFfJ`U_stzkS=(g%Mo;1B!m>QNGa59)*=L}l!HR1;{ z#he*{s<}K`iPFu=mWS(hLe{{$#?7pDA^oJ7zeOM1V&D*los>e2W`sp0pzJvTf4%ck zPx2ZN&u3npP<&OlVZGjX!Av9Am;7T&>Fzj|KhoxH<~(|A3QvnHhfEHj3v`SpYE zy~S4&WtxB&e}eDwL`0a5cUuH=hwAppw8}aY5~XjmM-(@!OFCxDQDQ7vtZWu!c1=gjr!dd}Xteir^b+F%HRsk1ZXdbX$Bg*05Q z95*M(xy+cUe9hR%pl9LR*dcB{9o0E_s1#_O{zv(dSm5R0?e^PXu}n~B0@dU2<$?ThN}%5Pz?Qhp3O%ozeM7jY7Ld5|wA|dG=GPB_+T_VIyFVO?SxL_hvbBo4^Pj2K zvwg8^6pvjFRh1tTd-n^NmLV{$EBD@O6thNc_;k$2w`w>bM9qF@%qv5b?~?tU5A93X zlV=!2UvWv1F!Ln-QdOSR$@s3jK9Zt=4IEMK=Kj%n=lYNGb#b@s zj!xs>2RCzBNxM}))*kV44UMeUu;*qzU^l#U$ZGD}70ybd6700~hElBPX1f_$DtktA+G{2AV&QU-O4T%V_g0~Lt1jJ<1WK*uua zpR&UC*SHwC!M1l#bt=y^4)g484poph*QkBkJ_(!@@d1jc3(}K?R7`w%Rb+1A4=}%G z_mA>ZgMIjTJT)~noqc_=u`w~#!^00x%5S3$*gK`ZY?3Vw2dYjCztsxQUls(%85$ba zrls-7D=Ukg%(zufuXVeLUQPbyG1**X9tiOR?&T1JTuwy5&v24nYq(GAUkRW@4Nz07 z_o|xf8&i!lf1d$@=JNfAr;IqAR$P^f58xZBJONTve&ATKDISLfZeyYHmA*6q{-A}Y zF!eh7ri;_l(`$gc=D9ccrN2KynQhz(z;dtW(RYmq*mC`bU6x;YGvx9g08BqL)E0sY zv8rSM*t(jy0gG3CI`s%-V$d3Eb#2jwlb9ODi$HwvTh9*%1lN+M7Q1^*Nr^lTUU#b zomZ6)1{>OBR`Iv6NNDIR*Gx9I>B#*+t3}Q9`ARJdHdao5fj|5^ms)P27h9CpMFHyd zbR*bp-BBAD@A)>`xt557d+wYfE@}a1K(@Y+@C~R7DBpKzbDp!+Lsk$eDPSdj#do6& zT**eF*$@;Ug~K$CCFV7=9@o-Mab+np^ckEXzbK{dZB;w>=mOE(*1!@@0^V>NEo%f)Q$w92S06bX=&2+}uGWO^9<^fa-Epv`UAY)kB48qq#LyFljx4SjUzms%m!I2|V~ts~SYO z`YqhSi||5hY)}`2AqhXvhTu{h#*^n-Vt=wV@<#Jpz*nIm->TvvR=i7sI%Efa(ZaFM z*dtwxP$poE8{ru3(;2_d5r;%&X^K`stt*?_%sG|41kVXH!w{B zzTvDOwYRPG+;MoCF14GRFvTROg)hr$Iauju+YQptQoI>dqJ6T(dt?)Z&|$SOPuB&n z#1a|RRn52<6KH>3QIR5ZIld>a#yh?r(azxN?j7I&!n_XVGqw-f1Gm`oX8h^fd+v=K z=BOrZhuiI4u?|MTK(LmO19X4>cJK!6c_iwKkhqp&jectYc63YnXWM`p(v7cIFi<=u zQm-JAPryo_)A!zX%NrtAlY>>+pQUJ#o7^mV6(0)1H`hFf@BYMTMfu_x;ABw{DRlyZM$iV$T>X#`25Nx5~Q2`r!-h3 z>#ukh__V(l{gvo8xS>CvxmiKBx17wp?z=ToaqPAe75!+f8qkQ-9^yn8XoReeORAAt zGFczooUJBnHbe3r4aA;j-`@C{!F#>_QI^k_JIWbM=uVy~;pQX;E8bdZXsL}H;wBJX2vD=<%be#{W^ZcE_ z%gyZyLLW>6G_C^vf$6=y>SG!D6KrR-z0APM%1RzEG%(Ns5^5gmK!8s5 zb%dcO*}}DIgZF83sbPQ7ol8zU%XlQ4A#%P7)iP@j>~YCr0k-HjLAc`5%wVkaWFJ&)0V% zb~^b6Ue(wl_;~$U=FE{hzVNn}D1Qe0QnedXkE?kGJuF-$Yo`X@D;?*`!bX5jr)Gfs z1O555Oi7c%vBLw5W3X{$mAhkhYl+ez6)2B$E>`mtb@0KwCJ(NDf7PHr{k(jBF)L3O zie5wikC=EH%D!!8l}Yk+m;~k}_p(lzGd5zHo~TBmT`b!X?2JduYsO-*GWMbAHodiEcOpy&N4Yp9CMj=uz)uwWDZmt~Z03udEzAi{|33N?yFvApNQpnJpd) zMPwv043UJrGp`MT2Do~xq|~Yh(H$fhY^mYN?~7e4zmyoZUvc?&#ODBBTY0q=T>99> zx7wZ{wE{*e(_I7MABcD+;7+oQia(~=Mzi_ ze-~-}o36|?6i7bh}gTuJ&s+|!}tnjezxP(fO#JB>VX#vdP z#r>!9RXV9U66pA?WH6{FK%sTxiR4O-;-T#Mv%uWaR*1ZX&j)M@dfkdKSQIO7-b}H08 zvKq5$w((i^Dn@So+lGot(5mtIYPxDp=vF7BwWbh%uyIk-Kh|=DVljyIQ!}L_BFuYt z?q))sE5BFZ>J^(d#@dy-ts9F=-zw+~pnXoSqJ z!N~KKCFuKO&XS4Jp&}&M@&meJ0|AA&CAQLtbHO_5;Z!aC{qzi{!sSKKZMUO&(66?) zF`woY6AvE3E%Zmr!6j|`!>s< zD%KkgTvgKnHdqKkh0dxE)o%8}+=?vy{_0}1{#aWjO6t68>;um9&xW$^bs%!uYUi!U z`ANN8n+5HoCf6ByKRjViDXY28;FG1>dV=n{*BMR(*0n+*aR9DA z2(}^&@$vC>-QC^Gm+}EgDLy%-<7;WzTy=8COzo*Ep*Z(u?*#FdY_J2RKy)0n^h&~Qr7XX2zQcf&yxldD)!>Bn>f9-l66MwCL zYevc%0Q=s9dd7b&dqBcpgWta;pjL$r z`?;Lmt6Yxq0d-=1>R`g^rlhU2^FXGG-w5Db`;rT-$EV-OhGuKCf2 zpfdsF*z~E%yj{I(rmMTN`(NW*l(Y6dZ(Q$%o?83;+YJZ}ii+42_;%$zer_%&JGw2B zmCH{1Oc+ikLE0kfxSDJZ>kQFvBZTHbe0$H@ z0;~s#Ycp_p@vX)Z-sunEsfArkTw-_N`u!@2+N|oh>a3|i&-GR>n+eU**=J*h-wuE2 z$&fU7IpsU=j#FpGJ1K_ z9ff0cku>k1HQyuL^$A=p?U2CBW$xW6RNMEMt+OFk^Z3ID@IzH& zYO>dl-$@1S^_xyln>H?Y9DD%J{2Vt1+;*PghXWori~r~dbPC$NUzPGBv}l`X z>_Q?F-FBONL&5ibnY5-|*7nL=fa?M^ZME_B6rV;4IqTS{P;#uTw#WyFjV*Y&eBTIE zq#(bNxI0J`t9(VVA9sGV1r=n#x$h0}R*A33_O!lC)|$ORXD&KGyNeTw*k>`^|`!SWcIh9x{IR9ZlEXqw5diNQXJdpsFTU%Qj@vr43l#tiNgbRTS z=)V)kHcLtp*46g&{SUr=%f;BLr-#AF@4qG>&%C(D-r4r$p_>1pe8*U(MHP7?SjhK1 z=h*C@nNqXej?h4agZIdK&_-qYw0zc4uK(uH`t-zn{Gpok@xVb6`NvGqCTrI^abNeh z%1=r;dCFzxxM{j(_7N;YFR}od! zx0(zXNaZo(o0W@FDLa0axw8%4t9P1M$6L@G2SbFay_d_%fnQq)VZy&6b|lXyN|)@! zn_CbKS^2kdR5sNE_g)so6KcqR^a8V_*MIiS9Ud-(^AIL)%$nY-jg(xI;+K_C{E0ss zm9?`O(h^@M-T7)W(1JBXKxrj#1M{S#xYOd>OD8Y(z_q61U8AiA-<8J|hF4bvZ)`&Z zj#r3PQVyYBNFd^M{>D|ZJ$|6<;Cy!w5WwB|934+Y&d@jQg$Mm_ZJc>j(^nS9t&B31 zYAV=+wGfUoC~6=GQcw^wWe_`#=NlI}V29za&QC3A3K}ZN<5Q%}2 zB}FU{DhU!UpW zKZ;Ip=iVJ7AE;j!liQ?fSYS*kFO4dw(oO$MS^Aw^eoE(+9IEBx*0oC`?y~;dChGi- zaOP@c-YzQYC{6M53?KgZ*kzH2hWw^H-v~Zn3&ODO}(>w+*61E=H>9~tL^^hG~{<~%^8mioX6;aj4X@EBQSvrXRb#y zpVp%hDdBY}oEAc6s>EWnX%2xyy3I#K^HW0^rY4ogj%@ zmwp+lQW49@wT<=xgt82>(3A8-xVz(cQZ+099tI7!0XQB__gnc=*eDg4Hh%ZK-DntXnpg5U^O+mUHRb{~~Z1 zZH?t$x9DF42@OT!8)6t2qDSi6|e<#zsC3ou>k>iWX|koLSsxB%Vcc}3AZ)vhOG)Q9oksvJ7b zV!}1V+uI<$i?;wBiQNG}T#KGtlje4+I}AW#GCQ@?V-3)}pA>4XE1}XWLrqjgu0qn0 z@P2MXZo1P}U^zDEihC+#C%SX~M~R)ZSARl@I%*3+0FS<<-QB|SII zF_l-vd#V!EJQ6lCGWaK#XR^!6RauZK&g|cjBYfK0Z_*KW6mKlrqm_QiB+ea)KRs?S zXg|=Y8fQ+3O&v-C?y=8$aGgxN4-IW}N(c>iU6N<94<-cf{cPSe%ZJgjuMS2FkAfjo z%v+lKS^MG*&H_WEZW_K$H<%)*ua||V)#@)0vxfc$5a#5L{NP>1R`@HkE4lxn%P$xl zN%t9wAmboa8x%u2kTf$BtsdsGbvj5IWi;^yEnVq|18U4mCu-GVrf$2sg4%={C?5A6 z*%{yjv;)kVC&YyHvUK_Hri$|A#3E@pV_ML{{a||Mf?EX|44p2eyIDkkIQ46hU$A5+ zwR%vtvbapc5m*&5RlOrnYsm$+0b@I_e{@myF|nEWCW>2L?Px2PfVpna&E~1C;McWc zJfz-Rxc zK7iC<*i&Q2+x-~_v$FvA7iue(5Vix z(DBpxHb85t;#jT18jTB*g#H*v743xWl>DP>Mh@F!DEUawh4i}3gK?wTv+ugoIY^fb z^=_Qr_x4#uu7hWDtKgu#JFQu4F6%tG!WKS3;#sYb**?`<%jQlZ0@%^Hi+dT+SK;?3 zH(li1v^nMMyf@@yXApkMZw2rJYFGUS0-hi4_7r(D@H2kcLqX7oWj4Xd{KekPcnc>- zd}R}T{Z4*kosAvZ7vv-(_s$}i2_q@4bHOeVkk?f~HL{AC@|oB9lRCeZv2fHSGuEF` zNsnuXN0_Z;J92S^o5fx3I%|IWQF7D+kgUKCo0BDbzyA|irLQmU*ub=stFX`e(i`)l z_*<*10DBT^g8RW;1b50cpen1 znLXuY2Q$e6E6lhnfl-04$a}IV_dI&DqdtM^GK_C-85{$zt*gsD{?ETXi@y!RccIZ< zrB^k`+@E?a!9U2J8v~of|HlCzIVj1!I{8OFFDTo{)&E@>ww1I0YuRvX^6^X#>@@&s Z=snoND*o{n_%q)&r0;1Tme={8{tvM)pM?Mb From a69ceb71fc4aaa79f2b0f24efebf6c28751f9890 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Wed, 28 Aug 2024 21:10:19 -0400 Subject: [PATCH 68/98] Applied feedback per PM/Dev --- .../Add-ClusterExcludedAdapter.md | 27 ++++++++++------ .../Get-ClusterExcludedAdapter.md | 27 ++++++++++------ .../Remove-ClusterExcludedAdapter.md | 27 ++++++++++------ .../Repair-ClusterNameAccount.md | 32 +++++++++++++++---- .../Set-ClusterExcludedAdapter.md | 28 ++++++++++------ 5 files changed, 95 insertions(+), 46 deletions(-) diff --git a/docset/winserver2025-ps/failoverclusters/Add-ClusterExcludedAdapter.md b/docset/winserver2025-ps/failoverclusters/Add-ClusterExcludedAdapter.md index ed05c61577..a8b2c62334 100644 --- a/docset/winserver2025-ps/failoverclusters/Add-ClusterExcludedAdapter.md +++ b/docset/winserver2025-ps/failoverclusters/Add-ClusterExcludedAdapter.md @@ -1,14 +1,17 @@ --- -external help file: ClusterExcludedAdapter.cdxml-help.xml +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: Microsoft.FailoverClusters.PowerShell.dll-Help.xml Module Name: FailoverClusters -online version: +ms.date: 08/28/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/add-clusterexcludedadapter?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Add-ClusterExcludedAdapter --- # Add-ClusterExcludedAdapter ## SYNOPSIS -{{ Fill in the Synopsis }} +Adds a network adapter to the list of excluded adapters. ## SYNTAX @@ -19,17 +22,21 @@ Add-ClusterExcludedAdapter -ExclusionType -ExclusionValue ## DESCRIPTION -{{ Fill in the Description }} +The `Add-ClusterExcludedAdapter` cmdlet adds a network adapter to a list of network adapters that +should be excluded from use by the Failover Cluster. By default, the cluster will use all available +network adapters, but in some cases you may want to reserve certain adapters as backup or +management, such as Dell iDRAC or HPE iLO. ## EXAMPLES ### Example 1 ```powershell -{{ Add example code here }} +Add-ClusterExcludedAdapter -ExclusionType "IPPrefix" -ExclusionValue "10.10.20.25" ``` -{{ Add example description here }} +This example excludes the network adapter based on the IP Address `10.10.20.25` from use by the +cluster. ## PARAMETERS @@ -79,9 +86,9 @@ Accept wildcard characters: False Specifies the type of exclusion to add to the cluster. Acceptable values are: -- `IPAddress`: Excludes a network adapter based on its IP address. -- `NetworkName`: Excludes a network adapter based on its network name. -- `SubnetMask`: Excludes a network adapter based on its subnet mask. +- `IPPrefix`: Excludes a network adapter based on its IP address. +- `Description`: Excludes a network adapter based on its description. +- `FriendlyName`: Excludes a network adapter based on its friendly name. ```yaml Type: AdapterExclusionType @@ -155,6 +162,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Remove-ClusterExcludedAdapter](remove-clusterexcludedadapter.md) -[Repair-ClusterExcludedAdapter](repair-clusterexcludedadapter.md) +[Repair-ClusterNameAccount](repair-clusternameaccount.md) [Set-ClusterExcludedAdapter](set-clusterexcludedadapter.md) diff --git a/docset/winserver2025-ps/failoverclusters/Get-ClusterExcludedAdapter.md b/docset/winserver2025-ps/failoverclusters/Get-ClusterExcludedAdapter.md index 926b665b63..a04d02e84d 100644 --- a/docset/winserver2025-ps/failoverclusters/Get-ClusterExcludedAdapter.md +++ b/docset/winserver2025-ps/failoverclusters/Get-ClusterExcludedAdapter.md @@ -1,14 +1,17 @@ --- -external help file: ClusterExcludedAdapter.cdxml-help.xml +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: Microsoft.FailoverClusters.PowerShell.dll-Help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?LinkId=615932 +ms.date: 08/28/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/get-clusterexcludedadapter?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Get-ClusterExcludedAdapter --- # Get-ClusterExcludedAdapter ## SYNOPSIS -{{ Fill in the Synopsis }} +Retrieves a network adapter from the list of excluded adapters. ## SYNTAX @@ -19,17 +22,21 @@ Get-ClusterExcludedAdapter -ExclusionType [-CimSession -ExclusionVa ## DESCRIPTION -{{ Fill in the Description }} +The `Remove-ClusterExcludedAdapter` cmdlet removes a network adapter from a list of network +adapters that should be excluded from use by the Failover Cluster. By default, the cluster will use +all available network adapters, but in some cases you may want to reserve certain adapters as +backup or management, such as Dell iDRAC or HPE iLO. ## EXAMPLES ### Example 1 ```powershell -{{ Add example code here }} +Remove-ClusterExcludedAdapter -ExclusionType "IPPrefix" -ExclusionValue "10.10.20.25" ``` -{{ Add example description here }} +This example removes the network adapter based on the IP Address `10.10.20.25` from the list of +excluded adapters. ## PARAMETERS @@ -79,9 +86,9 @@ Accept wildcard characters: False Specifies the type of exclusion to remove from the cluster. Acceptable values are: -- `IPAddress`: Excludes a network adapter based on its IP address. -- `NetworkName`: Excludes a network adapter based on its network name. -- `SubnetMask`: Excludes a network adapter based on its subnet mask. +- `IPPrefix`: Excludes a network adapter based on its IP address. +- `Description`: Excludes a network adapter based on its description. +- `FriendlyName`: Excludes a network adapter based on its friendly name. ```yaml Type: AdapterExclusionType @@ -155,6 +162,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Get-ClusterExcludedAdapter](get-clusterexcludedadapter.md) -[Repair-ClusterExcludedAdapter](repair-clusterexcludedadapter.md) +[Repair-ClusterNameAccount](repair-clusternameaccount.md) [Set-ClusterExcludedAdapter](set-clusterexcludedadapter.md) diff --git a/docset/winserver2025-ps/failoverclusters/Repair-ClusterNameAccount.md b/docset/winserver2025-ps/failoverclusters/Repair-ClusterNameAccount.md index b229303dce..00e5a2d80b 100644 --- a/docset/winserver2025-ps/failoverclusters/Repair-ClusterNameAccount.md +++ b/docset/winserver2025-ps/failoverclusters/Repair-ClusterNameAccount.md @@ -1,14 +1,17 @@ --- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: Microsoft.FailoverClusters.PowerShell.dll-Help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?linkid=2204048 +ms.date: 08/28/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/repair-clusternameaccount?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Repair-ClusterNameAccount --- # Repair-ClusterNameAccount ## SYNOPSIS -{{ Fill in the Synopsis }} +Repairs the Cluster Name Account and ensures that the cluster continues to function properly. ## SYNTAX @@ -28,17 +31,33 @@ Repair-ClusterNameAccount [-Credentials ] [-Domain ] [-Clu ## DESCRIPTION -{{ Fill in the Description }} +The `Repair-ClusterNameAccount` cmdlet repairs or updates the Cluster Name Account used for +authentication and authorization on a Failover Cluster. The Cluster Name Account is used to create +Highly Available applications or Virtual Computer Objects (VCOs) in the cluster. + +To learn more about cluster accounts in domain environments, see +[Configuring cluster accounts in Active Directory](/windows-server/failover-clustering/configure-ad-accounts). ## EXAMPLES ### Example 1 ```powershell -{{ Add example code here }} +Repair-ClusterNameAccount -Cluster "Cluster01" +``` + +This example repairs or updates the Cluster Name Account for the cluster named `Cluster01`. + +### Example 2 + +```powershell +$cred = Get-Credential +Repair-ClusterNameAccount -Cluster "Cluster01" -Credentials $cred -Domain "contoso.com" ``` -{{ Add example description here }} +This example repairs or updates the Cluster Name Account for the cluster named `Cluster01` using +the specified credentials and domain. The `Get-Credential` cmdlet is used to create a PSCredential +object for the `-Credentials` parameter. ## PARAMETERS @@ -78,7 +97,8 @@ Accept wildcard characters: False ### -Domain -Specifies the name of the domain in which to repair the cluster name account. +Specifies the name of the domain in which to repair the cluster name account. This should be the +fully qualified domain name (FQDN) of the domain that the cluster is in. ```yaml Type: String diff --git a/docset/winserver2025-ps/failoverclusters/Set-ClusterExcludedAdapter.md b/docset/winserver2025-ps/failoverclusters/Set-ClusterExcludedAdapter.md index fbb65657fa..354b7bd1d5 100644 --- a/docset/winserver2025-ps/failoverclusters/Set-ClusterExcludedAdapter.md +++ b/docset/winserver2025-ps/failoverclusters/Set-ClusterExcludedAdapter.md @@ -1,14 +1,17 @@ --- -external help file: ClusterExcludedAdapter.cdxml-help.xml +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: Microsoft.FailoverClusters.PowerShell.dll-Help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?LinkId=691107 +ms.date: 08/28/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/set-clusterexcludedadapter?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Set-ClusterExcludedAdapter --- # Set-ClusterExcludedAdapter ## SYNOPSIS -{{ Fill in the Synopsis }} +Sets a network adapter to the list of excluded adapters. ## SYNTAX @@ -19,17 +22,22 @@ Set-ClusterExcludedAdapter -ExclusionType -ExclusionValue ## DESCRIPTION -{{ Fill in the Description }} +The `Set-ClusterExcludedAdapter` cmdlet configures a network adapter in a list of network adapters +that should be excluded from use by the Failover Cluster. By default, the cluster will use all +available network adapters, but in some cases you may want to reserve certain adapters as backup or +management, such as Dell iDRAC or HPE iLO. ## EXAMPLES ### Example 1 ```powershell -{{ Add example code here }} +Set-ClusterExcludedAdapter -ExclusionType "Description" -ExclusionValue "Node-1-FL1","Node-1-FL2" ``` -{{ Add example description here }} +This example sets the list of excluded network adapters for the cluster. After running this +command, the cluster will no longer use `Node-1-FL1` or `Node-1-FL2` for cluster communications, +ensuring that they are available for management or backup purposes. ## PARAMETERS @@ -79,9 +87,9 @@ Accept wildcard characters: False Specifies the type of exclusion to remove from the cluster. Acceptable values are: -- `IPAddress`: Excludes a network adapter based on its IP address. -- `NetworkName`: Excludes a network adapter based on its network name. -- `SubnetMask`: Excludes a network adapter based on its subnet mask. +- `IPPrefix`: Excludes a network adapter based on its IP address. +- `Description`: Excludes a network adapter based on its description. +- `FriendlyName`: Excludes a network adapter based on its friendly name. ```yaml Type: AdapterExclusionType @@ -157,4 +165,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Remove-ClusterExcludedAdapter](remove-clusterexcludedadapter.md) -[Repair-ClusterExcludedAdapter](repair-clusterexcludedadapter.md) +[Repair-ClusterNameAccount](repair-clusternameaccount.md) From d955ffa5648545220d103527f6d0301a881e2957 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 10 Sep 2024 20:39:14 -0400 Subject: [PATCH 69/98] Initial command set update --- .../Add-WorkgroupClusterNode.md | 169 +++++++++++ .../failoverclusters/New-WorkgroupCluster.md | 271 +++++++++++++++++ .../Remove-WorkgroupCluster.md | 134 +++++++++ .../Remove-WorkgroupClusterNode.md | 220 ++++++++++++++ ...t-WorkgroupClusterRemotingConfiguration.md | 54 ++++ .../failoverclusters/Test-WorkgroupCluster.md | 281 ++++++++++++++++++ .../Test-WorkgroupClusterRemoting.md | 85 ++++++ 7 files changed, 1214 insertions(+) create mode 100644 docset/winserver2025-ps/failoverclusters/Add-WorkgroupClusterNode.md create mode 100644 docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md create mode 100644 docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md create mode 100644 docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md create mode 100644 docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md create mode 100644 docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md create mode 100644 docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md diff --git a/docset/winserver2025-ps/failoverclusters/Add-WorkgroupClusterNode.md b/docset/winserver2025-ps/failoverclusters/Add-WorkgroupClusterNode.md new file mode 100644 index 0000000000..d5bd77af25 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Add-WorkgroupClusterNode.md @@ -0,0 +1,169 @@ +--- +external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml +Module Name: FailoverClusters +online version: +schema: 2.0.0 +--- + +# Add-WorkgroupClusterNode + +## SYNOPSIS +Adds a node to a workgroup cluster. + +## SYNTAX + +``` +Add-WorkgroupClusterNode [-Node] [-Credentials] [-Name] + [-Credential] [-NoStorage] [-Confirm] [-WhatIf] [] +``` + +## DESCRIPTION + +The `Add-WorkgroupClusterNode` cmdlet adds a node to a workgroup cluster. + +## EXAMPLES + +### EXAMPLE 1 + +```powershell +$params = @{ + Node = @("Node1", "Node2") + Credentials = @($cred1, $cred2) + Name = "Node3" + Credential = $cred3 +} +Add-WorkgroupClusterNode @params +``` + +This example adds `Node3` to the cluster whose membership is comprised of `Node1` and `Node2`. + +## PARAMETERS + +### -Node + +An array of nodes to be added to the cluster. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credentials + +An array of credentials for the nodes. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: 2 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Name + +The name of the node to be added. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: 3 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credential + +The credential for the node to be added. + +```yaml +Type: PSCredential +Parameter Sets: (All) +Aliases: + +Required: True +Position: 4 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -NoStorage + +Specifies that shared storage is ignored for the workgroup cluster node. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +## OUTPUTS + +## NOTES + +## RELATED LINKS + + diff --git a/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md new file mode 100644 index 0000000000..11e0cd092f --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md @@ -0,0 +1,271 @@ +--- +external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=691107 +schema: 2.0.0 +--- + +# New-WorkgroupCluster + +## SYNOPSIS +Creates a new workgroup cluster. + +## SYNTAX + +``` +New-WorkgroupCluster [[-Node] ] [[-Credentials] ] [[-Name] ] + [[-StaticAddress] ] [[-IgnoreNetwork] ] + [[-ManagementPointNetworkType] ] + [[-AdministrativeAccessPoint] ] [-NoStorage] [-S2D] [-Force] [-Confirm] [-WhatIf] + [] +``` + +## DESCRIPTION + +The New-WorkgroupCluster function creates a new workgroup cluster. + +## EXAMPLES + +### EXAMPLE 1 + +```powershell +New-WorkgroupCluster -Node "Node1", "Node2" -Credentials $cred1, $cred2 -Name "Cluster1" +``` + +This example creates a new workgroup cluster named `Cluster1` with `Node1` and `Node2` using +the credentials in `$cred1` and `$cred2`. + +Note: Only None and DNS are supported for AdministrativeAccessPoint. + +## PARAMETERS + +### -Node + +An array of nodes to be included in the cluster. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 1 +Default value: @() +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credentials + +An array of credentials for the nodes. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 2 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Name + +The name of the workgroup cluster. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 3 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StaticAddress + +**StaticAddress** parameter or should be explicitly ignored with this **IgnoreNetwork** parameter. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 4 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IgnoreNetwork + +Specifies one or more networks to ignore when running the cmdlet. Networks with DHCP enabled are +always included, but other networks need a static address to be specified using the +**StaticAddress** parameter or should be explicitly ignored with this **IgnoreNetwork** parameter. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 5 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ManagementPointNetworkType + +Specifies the network configuration used to determine IP address settings. Acceptable values are: + +- `Automatic`: Automatically detects the appropriate setting. + - If SQL Server is running in Azure, it uses `Distributed`. + - If SQL Server is running on-premises, it uses `Singleton`. +- `Singleton`: The traditional method of DHCP or static IP address. +- `Distributed`: Uses a Distributed Network Name by using Node IP addresses. + +For on-prem SQL Server, if the value is set to `Automatic`, it defaults to `Singleton`. + +```yaml +Type: AdminAccessPointResType +Parameter Sets: (All) +Aliases: +Accepted values: Automatic, Singleton, Distributed + +Required: False +Position: 6 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -AdministrativeAccessPoint + +Specifies the type of administrative access point that the cmdlet creates for the cluster. +Acceptable values are: + +- `DNS`: The cmdlet creates an administrative access point for the cluster. The administrative + access point is registered in DNS but isn't enabled in Active Directory Domain Services. +- `None` + +The cmdlet doesn't create an administrative access point for the cluster. Some clustered roles and +functionality might not be available for a cluster that doesn't have an administrative access +point. Also, you cannot use Failover Cluster Manager to manage a cluster that doesn't have an +administrative access point. + +```yaml +Type: AdminAccessPoint +Parameter Sets: (All) +Aliases: +Accepted values: None, Dns + +Required: False +Position: 7 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -NoStorage + +Specifies that shared storage is ignored for the workgroup cluster node. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -S2D + +Specifies whether to enable Storage Spaces Direct when creating the workgroup cluster. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +## OUTPUTS + +## NOTES + +## RELATED LINKS + + diff --git a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md new file mode 100644 index 0000000000..02a734fe39 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md @@ -0,0 +1,134 @@ +--- +external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=691107 +schema: 2.0.0 +--- + +# Remove-WorkgroupCluster + +## SYNOPSIS +Removes a workgroup cluster. + +## SYNTAX + +``` +Remove-WorkgroupCluster [[-Node] ] [[-Credentials] ] [-Force] [-Confirm] + [-WhatIf] [] +``` + +## DESCRIPTION + +The Remove-WorkgroupCluster function removes a workgroup cluster. + +## EXAMPLES + +### EXAMPLE 1 + +```powershell +Remove-WorkgroupCluster -Node "Node1", "Node2" -Credentials $cred1, $cred2 +``` + +This example removes the cluster from both `Node1` and `Node2`. + +If communication is lost with a node or the membership isn't complete, the cluster might not +be removed and manual cleanup may be needed. + +## PARAMETERS + +### -Node + +An array of nodes that form the current cluster. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 1 +Default value: @() +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credentials + +An array of credentials for the nodes. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 2 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +## OUTPUTS + +## NOTES + +## RELATED LINKS + + diff --git a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md new file mode 100644 index 0000000000..945e992440 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md @@ -0,0 +1,220 @@ +--- +external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=691107 +schema: 2.0.0 +--- + +# Remove-WorkgroupClusterNode + +## SYNOPSIS +Removes a node from a workgroup cluster. + +## SYNTAX + +``` +Remove-WorkgroupClusterNode [-Node] [-Credentials] [-Name] + [[-Wait] ] [-IgnoreStorageConnectivityLoss] [-CleanupDisks] [-Force] [-Confirm] [-WhatIf] + [] +``` + +## DESCRIPTION + +The `Remove-WorkgroupCluster` function removes a node from the membership in a workgroup Cluster. +The rest of the parameters will be forwarded to the `Remove-ClusterNode` function. Please refer to +the documentation for the +[Remove-ClusterNode](/powershell/module/failoverclusters/remove-clusternode) cmdlet. + +## EXAMPLES + +### EXAMPLE 1 + +```powershell +Remove-WorkgroupClusterNode -Node "Node1", "Node2" -Credentials $cred1, $cred2 -Name $Node2 +``` + +This example removes `Node2` from the cluster membership. + +### EXAMPLE 2 + +```powershell +Remove-WorkgroupClusterNode -Node "Node1", "Node2" -Credentials $cred1, $cred2 -Name $Node3 +``` + +This example removes `Node3` from the cluster membership. + +Manual cleanup may be required to clear the node state by logging into `Node3` and running +`Clear-ClusterNode`. + +## PARAMETERS + +### -Node + +An array of nodes in the workgroup cluster. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credentials + +An array of credentials for the nodes. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: 2 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Name + +The name of the node to be removed. If the name isn't included in **Node** parameter, the first +node in the **Node** parameter will be used to remove the node. Additional cleanup will be required +to clear the node state. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: 3 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Wait + +Specifies the time in seconds to wait for the cmdlet. If the **Wait** parameter isn't specified, +then the cmdlet waits for completion. If the value `0` is specified, then the call is initiated and +the cmdlet returns without waiting. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: 4 +Default value: 0 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CleanupDisks + +Removes any residual cluster metadata from the specified disks. This metadata includes information +that the cluster service uses to manage the disks. By cleaning the metadata, the disks are freed +from any old cluster configurations, making them available for new clusters or other purposes. This +cmdlet may prevent potential conflicts that could arise from leftover metadata when reusing disks. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IgnoreStorageConnectivityLoss + +Indicates that this cmdlet doesn't check whether the cluster node contains non-shared storage, if +Storage Spaces Direct is enabled. If you don't specify this parameter, the cmdlet checks whether +this node has any Storage Spaces Direct storage. If this cmdlet finds Storage Spaces Direct storage, +it prompts you for confirmation before it removes the node. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +## OUTPUTS + +## NOTES + +## RELATED LINKS + + diff --git a/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md b/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md new file mode 100644 index 0000000000..b1eb40df93 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md @@ -0,0 +1,54 @@ +--- +external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=691106 +schema: 2.0.0 +--- + +# Set-WorkgroupClusterRemotingConfiguration + +## SYNOPSIS +{{ Fill in the Synopsis }} + +## SYNTAX + +``` +Set-WorkgroupClusterRemotingConfiguration [] +``` + +## DESCRIPTION + +{{ Fill in the Description }} + +## EXAMPLES + +### Example 1 + +```powershell +{{ Add example code here }} +``` + +{{ Add example description here }} + +## PARAMETERS + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + + diff --git a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md new file mode 100644 index 0000000000..853bdf8565 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md @@ -0,0 +1,281 @@ +--- +external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=691106 +schema: 2.0.0 +--- + +# Test-WorkgroupCluster + +## SYNOPSIS +Tests the configuration of a workgroup cluster. + +## SYNTAX + +``` +Test-WorkgroupCluster [[-Node] ] [[-Credentials] ] [[-Disk] ] + [[-Pool] ] [[-ReportName] ] [[-Include] ] [[-Ignore] ] + [-Force] [[-Cluster] ] [-Confirm] [-WhatIf] [-Destination] [] +``` + +## DESCRIPTION + +The `Test-WorkgroupCluster` function tests the configuration of a workgroup cluster. The rest of +the parameters will be forwarded to the `Test-Cluster` function. Please refer to the documentation +for the [Test-Cluster](/powershell/module/failoverclusters/test-cluster) cmdlet. + +## EXAMPLES + +### EXAMPLE 1 + +```powershell +Test-WorkgroupCluster -Node "Node1", "Node2" -Credentials $cred1, $cred2 +``` + +This example tests the configuration of a workgroup cluster with `Node1` and `Node2` using the +credentials in `$cred1` and `$cred2`, and additional parameters. + +## PARAMETERS + +### -Node + +An array of nodes in the workgroup cluster. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 2 +Default value: @() +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credentials + +An array of credentials for the nodes. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 3 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disk + +Specifies the disk number or disks for which to run the cmdlet. If the specified disk is online and +is assigned to a clustered role or Cluster Shared Volume, you must also specify the **Force** +parameter to take the disk offline for the duration of the storage tests. Otherwise, the specified +disk must be offline before the cmdlet is run. + +If the **Disk** parameter isn't specified, storage tests run on all disks that are available for +use in the cluster or that are in the cluster resource offline or failed state. + +Acceptable values are: + +- **Int32, Int64, Uint32, or Uint64**: A number that represents a master boot record (MBR) + signature of the disk. +- **System.String**: A string that represents a master boot record (MBR) signature of the disk, + hexadecimal format is supported, or a string that represents the GUID of a GPT disk. +- **ClusterResource**: A cluster resource object that represents a clustered disk. +- **CimInstance#MSFT_Disk**: An object returned from `Get-Disk`, from the Windows PowerShell storage + module. + +```yaml +Type: Object[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 4 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Pool + +Specifies the clustered storage pool or pools for which to run the cmdlet. When the specified +storage pool is online and a virtual disk in the storage pool is assigned to a clustered role or +Cluster Shared Volume, you must also specify the **Force** parameter to take the storage pool +offline for the duration of the storage tests. Otherwise, the command will exit with an error. + +The specified storage pool must be taken offline before running the storage tests. If the **Pool** +parameter isn't specified, storage tests run on all storage pools that are available for use in the +cluster or that are in the cluster resource offline or failed state. + +Acceptable values are: + +- **System.String**: A string that represents the name of the clustered storage pool or pools. +- **ClusterResource**: A cluster resource object that represents a clustered storage pool. +- **CimInstance#MSFT_StoragePool**: An object returned from `Get-StoragePool`, from the Windows + PowerShell storage module. + +```yaml +Type: Object[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 5 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ReportName + +Specifies the name of the test report to generate. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 6 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Include + +Specifies which tests or category of tests to include during the validation test run. Only the tests +or category of tests specified will run. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 7 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Ignore + +Specifies which tests or category of tests to ignore during the validation test run. All other +tests or category of tests will run. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 8 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: 9 +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Cluster + +Specifies the name of the cluster on which to run this cmdlet. If the input for this parameter is +`.` or it is omitted, then the cmdlet runs on the local cluster. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 10 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: 11 +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: 12 +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Destination + +Specifies the location to which to copy one or more cluster logs. To copy to the current folder, use +`.` for this parameter input. Default location is `C:\Windows\Cluster\Reports`. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: 13 +Default value: (Get-Location).Path +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +## OUTPUTS + +## NOTES + +## RELATED LINKS + + diff --git a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md new file mode 100644 index 0000000000..442dcd8c05 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md @@ -0,0 +1,85 @@ +--- +external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml +Module Name: FailoverClusters +online version: https://go.microsoft.com/fwlink/?LinkId=691106 +schema: 2.0.0 +--- + +# Test-WorkgroupClusterRemoting + +## SYNOPSIS +Tests if remoting is configured on all nodes. + +## SYNTAX + +``` +Test-WorkgroupClusterRemoting [[-Node] ] [[-Credentials] ] + [] +``` + +## DESCRIPTION + +The `Test-WorkgroupClusterRemoting` function tests if remoting is configured on all nodes. +Additionally it verifies that CredSSP is configured. + +## EXAMPLES + +### EXAMPLE 1 + +```powershell +Test-WorkgroupClusterRemoting -Node "Node1", "Node2" -Credentials $cred1, $cred2 +``` + +This example tests if remoting is configured on `Node1` and `Node2` using the credentials in +`$cred1` and `$cred2`. + +## PARAMETERS + +### -Node + +An array of nodes to test remoting on. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 2 +Default value: @() +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Credentials + +An array of credentials for the nodes. + +```yaml +Type: PSCredential[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 3 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +## OUTPUTS + +## NOTES + +## RELATED LINKS + + From 85494cdf20e29557a313dfdfe255b1921e4301e4 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Wed, 11 Sep 2024 11:35:49 -0400 Subject: [PATCH 70/98] Updated metadata & cmdlet links --- .../Add-WorkgroupClusterNode.md | 15 ++++++++++- .../failoverclusters/New-WorkgroupCluster.md | 19 ++++++++++++-- .../Remove-WorkgroupCluster.md | 17 +++++++++++-- .../Remove-WorkgroupClusterNode.md | 17 ++++++++++++- ...t-WorkgroupClusterRemotingConfiguration.md | 25 +++++++++++++++---- .../failoverclusters/Test-WorkgroupCluster.md | 15 ++++++++++- 6 files changed, 96 insertions(+), 12 deletions(-) diff --git a/docset/winserver2025-ps/failoverclusters/Add-WorkgroupClusterNode.md b/docset/winserver2025-ps/failoverclusters/Add-WorkgroupClusterNode.md index d5bd77af25..501c03b6b4 100644 --- a/docset/winserver2025-ps/failoverclusters/Add-WorkgroupClusterNode.md +++ b/docset/winserver2025-ps/failoverclusters/Add-WorkgroupClusterNode.md @@ -1,8 +1,11 @@ --- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml Module Name: FailoverClusters -online version: +ms.date: 09/11/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/add-workgroupclusternode?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Add-WorkgroupClusterNode --- # Add-WorkgroupClusterNode @@ -166,4 +169,14 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS +[New-WorkgroupCluster](new-workgroupcluster.md) +[Remove-WorkgroupCluster](remove-workgroupcluster.md) + +[Remove-WorkgroupClusterNode](remove-workgroupclusternode.md) + +[Set-WorkgroupClusterRemotingConfiguration](set-workgroupclusterremotingconfiguration.md) + +[Test-WorkgroupCluster](test-workgroupcluster.md) + +[Test-WorkgroupClusterRemoting](test-workgroupclusterremoting.md) diff --git a/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md index 11e0cd092f..880fb44da0 100644 --- a/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md +++ b/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md @@ -1,8 +1,11 @@ --- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?LinkId=691107 +ms.date: 09/11/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/new-workgroupcluster?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: New-WorkgroupCluster --- # New-WorkgroupCluster @@ -22,7 +25,7 @@ New-WorkgroupCluster [[-Node] ] [[-Credentials] ] [[-N ## DESCRIPTION -The New-WorkgroupCluster function creates a new workgroup cluster. +The `New-WorkgroupCluster` cmdlet creates a new workgroup cluster. ## EXAMPLES @@ -89,6 +92,8 @@ Accept wildcard characters: False ### -StaticAddress +Specifies one or more static addresses to use when running the cmdlet. Networks with DHCP enabled +are always included, but other networks need a static address to be specified using the **StaticAddress** parameter or should be explicitly ignored with this **IgnoreNetwork** parameter. ```yaml @@ -268,4 +273,14 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS +[Add-WorkgroupCluster](add-workgroupcluster.md) +[Remove-WorkgroupCluster](remove-workgroupcluster.md) + +[Remove-WorkgroupClusterNode](remove-workgroupclusternode.md) + +[Set-WorkgroupClusterRemotingConfiguration](set-workgroupclusterremotingconfiguration.md) + +[Test-WorkgroupCluster](test-workgroupcluster.md) + +[Test-WorkgroupClusterRemoting](test-workgroupclusterremoting.md) diff --git a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md index 02a734fe39..08049cbd46 100644 --- a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md +++ b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md @@ -1,8 +1,11 @@ --- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?LinkId=691107 +ms.date: 09/11/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/remove-workgroupcluster?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Remove-WorkgroupCluster --- # Remove-WorkgroupCluster @@ -19,7 +22,7 @@ Remove-WorkgroupCluster [[-Node] ] [[-Credentials] ] [ ## DESCRIPTION -The Remove-WorkgroupCluster function removes a workgroup cluster. +The `Remove-WorkgroupCluster` cmdlet removes a workgroup cluster. ## EXAMPLES @@ -131,4 +134,14 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS +[Add-WorkgroupCluster](add-workgroupcluster.md) +[New-WorkgroupCluster](new-workgroupcluster.md) + +[Remove-WorkgroupClusterNode](remove-workgroupclusternode.md) + +[Set-WorkgroupClusterRemotingConfiguration](set-workgroupclusterremotingconfiguration.md) + +[Test-WorkgroupCluster](test-workgroupcluster.md) + +[Test-WorkgroupClusterRemoting](test-workgroupclusterremoting.md) diff --git a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md index 945e992440..ba99fd3e94 100644 --- a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md +++ b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md @@ -1,8 +1,11 @@ --- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?LinkId=691107 +ms.date: 09/11/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/remove-workgroupclusternode?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Remove-WorkgroupClusterNode --- # Remove-WorkgroupClusterNode @@ -217,4 +220,16 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS +[Add-WorkgroupCluster](add-workgroupcluster.md) +[Clear-ClusterNode](clear-clusternode.md) + +[New-WorkgroupCluster](new-workgroupcluster.md) + +[Remove-WorkgroupCluster](remove-workgroupcluster.md) + +[Set-WorkgroupClusterRemotingConfiguration](set-workgroupclusterremotingconfiguration.md) + +[Test-WorkgroupCluster](test-workgroupcluster.md) + +[Test-WorkgroupClusterRemoting](test-workgroupclusterremoting.md) diff --git a/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md b/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md index b1eb40df93..09db967681 100644 --- a/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md +++ b/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md @@ -1,14 +1,17 @@ --- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?LinkId=691106 +ms.date: 09/11/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/set-workgroupclusterremotingconfiguration?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Set-WorkgroupClusterRemotingConfiguration --- # Set-WorkgroupClusterRemotingConfiguration ## SYNOPSIS -{{ Fill in the Synopsis }} +Configures the remote management settings for a failover cluster that is part of a workgroup. ## SYNTAX @@ -18,17 +21,19 @@ Set-WorkgroupClusterRemotingConfiguration [] ## DESCRIPTION -{{ Fill in the Description }} +The `Set-WorkgroupClusterRemotingConfiguration` cmdlet configures the remote management settings for +a failover cluster that is part of a workgroup. ## EXAMPLES ### Example 1 ```powershell -{{ Add example code here }} +Set-WorkgroupClusterRemotingConfiguration -Verbose ``` -{{ Add example description here }} +This example displays detailed information about the current workgroup cluster remoting +configuration. ## PARAMETERS @@ -51,4 +56,14 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS +[Add-WorkgroupCluster](add-workgroupcluster.md) +[New-WorkgroupCluster](new-workgroupcluster.md) + +[Remove-WorkgroupCluster](remove-workgroupcluster.md) + +[Remove-WorkgroupClusterNode](remove-workgroupclusternode.md) + +[Test-WorkgroupCluster](test-workgroupcluster.md) + +[Test-WorkgroupClusterRemoting](test-workgroupclusterremoting.md) diff --git a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md index 853bdf8565..b9b18d58e4 100644 --- a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md +++ b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md @@ -1,8 +1,11 @@ --- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?LinkId=691106 +ms.date: 09/11/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/test-workgroupcluster?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Test-WorkgroupCluster --- # Test-WorkgroupCluster @@ -278,4 +281,14 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS +[Add-WorkgroupCluster](add-workgroupcluster.md) +[New-WorkgroupCluster](new-workgroupcluster.md) + +[Remove-WorkgroupCluster](remove-workgroupcluster.md) + +[Remove-WorkgroupClusterNode](remove-workgroupclusternode.md) + +[Set-WorkgroupClusterRemotingConfiguration](set-workgroupclusterremotingconfiguration.md) + +[Test-WorkgroupClusterRemoting](test-workgroupclusterremoting.md) From 278382042781ef98fb063f3e6a48d4b99739fc0b Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Wed, 11 Sep 2024 11:43:14 -0400 Subject: [PATCH 71/98] Updated metadata & cmdlet links --- .../Test-WorkgroupClusterRemoting.md | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md index 442dcd8c05..f7a367dd9e 100644 --- a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md +++ b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md @@ -1,8 +1,11 @@ --- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: Microsoft.FailoverClusters.Adless.PowerShell.psm1-help.xml Module Name: FailoverClusters -online version: https://go.microsoft.com/fwlink/?LinkId=691106 +ms.date: 09/11/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/test-workgroupclusterremoting?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 +title: Test-WorkgroupClusterRemoting --- # Test-WorkgroupClusterRemoting @@ -19,8 +22,8 @@ Test-WorkgroupClusterRemoting [[-Node] ] [[-Credentials] Date: Wed, 11 Sep 2024 12:16:23 -0400 Subject: [PATCH 72/98] Fix hyperlinks --- .../winserver2025-ps/failoverclusters/New-WorkgroupCluster.md | 2 +- .../failoverclusters/Remove-WorkgroupCluster.md | 2 +- .../failoverclusters/Remove-WorkgroupClusterNode.md | 2 +- .../Set-WorkgroupClusterRemotingConfiguration.md | 2 +- .../winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md | 2 +- .../failoverclusters/Test-WorkgroupClusterRemoting.md | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md index 880fb44da0..1c4c0fbd37 100644 --- a/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md +++ b/docset/winserver2025-ps/failoverclusters/New-WorkgroupCluster.md @@ -273,7 +273,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-WorkgroupCluster](add-workgroupcluster.md) +[Add-WorkgroupClusterNode](add-workgroupclusternode.md) [Remove-WorkgroupCluster](remove-workgroupcluster.md) diff --git a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md index 08049cbd46..f08fbaf834 100644 --- a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md +++ b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupCluster.md @@ -134,7 +134,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-WorkgroupCluster](add-workgroupcluster.md) +[Add-WorkgroupClusterNode](add-workgroupclusternode.md) [New-WorkgroupCluster](new-workgroupcluster.md) diff --git a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md index ba99fd3e94..e3e63f393b 100644 --- a/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md +++ b/docset/winserver2025-ps/failoverclusters/Remove-WorkgroupClusterNode.md @@ -220,7 +220,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-WorkgroupCluster](add-workgroupcluster.md) +[Add-WorkgroupClusterNode](add-workgroupclusternode.md) [Clear-ClusterNode](clear-clusternode.md) diff --git a/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md b/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md index 09db967681..99b29e07f6 100644 --- a/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md +++ b/docset/winserver2025-ps/failoverclusters/Set-WorkgroupClusterRemotingConfiguration.md @@ -56,7 +56,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-WorkgroupCluster](add-workgroupcluster.md) +[Add-WorkgroupClusterNode](add-workgroupclusternode.md) [New-WorkgroupCluster](new-workgroupcluster.md) diff --git a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md index b9b18d58e4..0d68dd5b64 100644 --- a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md +++ b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupCluster.md @@ -281,7 +281,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-WorkgroupCluster](add-workgroupcluster.md) +[Add-WorkgroupClusterNode](add-workgroupclusternode.md) [New-WorkgroupCluster](new-workgroupcluster.md) diff --git a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md index f7a367dd9e..25a1a2be22 100644 --- a/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md +++ b/docset/winserver2025-ps/failoverclusters/Test-WorkgroupClusterRemoting.md @@ -85,7 +85,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-WorkgroupCluster](add-workgroupcluster.md) +[Add-WorkgroupClusterNode](add-workgroupclusternode.md) [New-WorkgroupCluster](new-workgroupcluster.md) From def743288e792d60ab975712c9d0c8dc68997c7f Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 17 Sep 2024 11:52:24 -0400 Subject: [PATCH 73/98] Added new ClusterCredential cmdlet --- .../failoverclusters/Get-ClusterCredential.md | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 docset/winserver2025-ps/failoverclusters/Get-ClusterCredential.md diff --git a/docset/winserver2025-ps/failoverclusters/Get-ClusterCredential.md b/docset/winserver2025-ps/failoverclusters/Get-ClusterCredential.md new file mode 100644 index 0000000000..e3548d6064 --- /dev/null +++ b/docset/winserver2025-ps/failoverclusters/Get-ClusterCredential.md @@ -0,0 +1,72 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: Microsoft.FailoverClusters.PowerShell.dll-Help.xml +Module Name: FailoverClusters +ms.date: 09/17/2024 +online version: https://learn.microsoft.com/powershell/module/failoverclusters/get-clustercredential?view=windowsserver2025-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-ClusterCredential +--- + +# Get-ClusterCredential + +## SYNOPSIS +Retrieves the credentials for a specified node in a failover cluster. + +## SYNTAX + +``` +Get-ClusterCredential [[-NodeName] ] [] +``` + +## DESCRIPTION + +The `Get-ClusterCredential` cmdlet retrieves the credentials for a specified node in a failover +cluster. + +## EXAMPLES + +### Example 1 + +```powershell +Get-ClusterCredential -NodeName "Node01" +``` + +This example retrieves the credentials for a node named `Node01` in the failover cluster. + +## PARAMETERS + +### -NodeName + +Specifies the name of the node for which to retrieve the credentials. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### None + +## OUTPUTS + +### System.Management.Automation.PSCredential + +## NOTES + +## RELATED LINKS From b25b824c531bc8243f2d1d5d28dae72357c3a01b Mon Sep 17 00:00:00 2001 From: Cliff Fisher <90731351+BRDPM@users.noreply.github.com> Date: Fri, 20 Sep 2024 08:35:55 -0700 Subject: [PATCH 74/98] Update 2025 Version of New-ADFineGrainedPasswordPolicy.md (#3829) * Update New-ADFineGrainedPasswordPolicy.md Updating 2025 version of the doc to reflect the changes made to the 2022 version of the doc. * Update docset/winserver2025-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md Adding blockquote syntax to make the Note a real Note Co-authored-by: Sean Wheeler --------- Co-authored-by: Sean Wheeler --- .../New-ADFineGrainedPasswordPolicy.md | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/docset/winserver2025-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md b/docset/winserver2025-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md index 279660c38a..57aa2cef51 100644 --- a/docset/winserver2025-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md +++ b/docset/winserver2025-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md @@ -71,13 +71,6 @@ PS C:\> New-ADFineGrainedPasswordPolicy -Instance $TemplatePSO -Name "AdminsPSO" This example creates two new fine-grained password policy objects using a template object. -### Example 3: Create a fine-grained password policy with manual account unlock -```powershell -PS C:\> New-ADFineGrainedPasswordPolicy -Name "ManualUnlockPSO" -Precedence 500 -ComplexityEnabled $true -Description "Manual Unlock Password Policy" -DisplayName "Manual Unlock PSO" -LockoutDuration "00:00:00" -LockoutObservationWindow "00:00:00" -LockoutThreshold 3 -``` - -This command creates a fine-grained password policy object named ManualUnlockPSO that would require manual unlock of accounts by the administrator. - ## PARAMETERS ### -AuthType @@ -275,6 +268,10 @@ The LDAP display name (**ldapDisplayName**) of this property is **msDS-lockoutOb The lockout observation window must be smaller than or equal to the lockout duration for a password policy. Use the *LockoutDuration* parameter to set the lockout duration time. +> [!NOTE] +> Setting the lockout observation window to 0 effectively means that the window is too short to +> observe more than one password attempt, therefore the account will never be locked out. + Specify the time interval in the following format: `D:H:M:S.F` From 8718b39f6367c7376c06327d7b06ed8f6ce30b15 Mon Sep 17 00:00:00 2001 From: Cliff Fisher <90731351+BRDPM@users.noreply.github.com> Date: Fri, 20 Sep 2024 08:37:16 -0700 Subject: [PATCH 75/98] Update New-ADFineGrainedPasswordPolicy.md (#3818) * Update New-ADFineGrainedPasswordPolicy.md Removing example 3, which is completely incorrect, and adding a disclaimer to Lockout Observation Window. * Update docset/winserver2022-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md Adding suggested review changes Co-authored-by: Sean Wheeler --------- Co-authored-by: Sean Wheeler --- .../New-ADFineGrainedPasswordPolicy.md | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/docset/winserver2022-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md b/docset/winserver2022-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md index 6517995ce1..6ccea5fdbf 100644 --- a/docset/winserver2022-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md +++ b/docset/winserver2022-ps/activedirectory/New-ADFineGrainedPasswordPolicy.md @@ -71,13 +71,6 @@ PS C:\> New-ADFineGrainedPasswordPolicy -Instance $TemplatePSO -Name "AdminsPSO" This example creates two new fine-grained password policy objects using a template object. -### Example 3: Create a fine-grained password policy with manual account unlock -```powershell -PS C:\> New-ADFineGrainedPasswordPolicy -Name "ManualUnlockPSO" -Precedence 500 -ComplexityEnabled $true -Description "Manual Unlock Password Policy" -DisplayName "Manual Unlock PSO" -LockoutDuration "00:00:00" -LockoutObservationWindow "00:00:00" -LockoutThreshold 3 -``` - -This command creates a fine-grained password policy object named ManualUnlockPSO that would require manual unlock of accounts by the administrator. - ## PARAMETERS ### -AuthType @@ -275,6 +268,10 @@ The LDAP display name (**ldapDisplayName**) of this property is **msDS-lockoutOb The lockout observation window must be smaller than or equal to the lockout duration for a password policy. Use the *LockoutDuration* parameter to set the lockout duration time. +> [!NOTE] +> Setting the lockout observation window to 0 effectively means that the window is too short to +> observe more than one password attempt, therefore the account will never be locked out. + Specify the time interval in the following format: `D:H:M:S.F` From 2af56436d214c8f2ef26e5744d6397f0a45890b7 Mon Sep 17 00:00:00 2001 From: Ari Krumbein <51719735+arkrumbe@users.noreply.github.com> Date: Thu, 26 Sep 2024 15:49:31 -0500 Subject: [PATCH 76/98] Learn Editor: Update Import-StartLayout.md --- docset/winserver2022-ps/startlayout/Import-StartLayout.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docset/winserver2022-ps/startlayout/Import-StartLayout.md b/docset/winserver2022-ps/startlayout/Import-StartLayout.md index f874fd48ce..6a2b8e179e 100644 --- a/docset/winserver2022-ps/startlayout/Import-StartLayout.md +++ b/docset/winserver2022-ps/startlayout/Import-StartLayout.md @@ -16,12 +16,12 @@ Imports the layout of the Start into a mounted Windows image. ## SYNTAX ### Path -``` +```powershell Import-StartLayout [-LayoutPath] [-MountPath] [-WhatIf] [-Confirm] [] ``` ### LiteralPath -``` +```powershell Import-StartLayout -LayoutLiteralPath -MountLiteralPath [-WhatIf] [-Confirm] [] ``` @@ -36,6 +36,8 @@ You must have administrator rights to import a layout. In Windows 10, the Export-StartLayout cmdlet exports layouts as .xml files, and the **Import-StartLayout** cmdlet imports only .xml files. +> [!CAUTION] +> The Import-StartLayout cmdlet is deprecated in Windows 11. It has no effect on either Start or Taskbar layout. To configure the Start layout in Windows 11, see [Customize the Windows 11 Start layout](https://learn.microsoft.com/en-us/windows-hardware/customize/desktop/customize-the-windows-11-start-menu). To configure Taskbar layout in Windows 11, see [Customize the Taskbar](https://learn.microsoft.com/en-us/windows-hardware/customize/desktop/customize-the-windows-11-taskbar). ## EXAMPLES ### Example 1: Import a layout into a Windows image From f018259eea12934cc97e765ce82f2badf549aeaf Mon Sep 17 00:00:00 2001 From: Ari Krumbein <51719735+arkrumbe@users.noreply.github.com> Date: Thu, 26 Sep 2024 15:50:49 -0500 Subject: [PATCH 77/98] Learn Editor: Update Import-StartLayout.md From d6388549db10d4fce0de940988fce2f4439b00ce Mon Sep 17 00:00:00 2001 From: Ari Krumbein <51719735+arkrumbe@users.noreply.github.com> Date: Thu, 26 Sep 2024 16:08:13 -0500 Subject: [PATCH 78/98] Learn Editor: Update Import-StartLayout.md --- docset/winserver2025-ps/startlayout/Import-StartLayout.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docset/winserver2025-ps/startlayout/Import-StartLayout.md b/docset/winserver2025-ps/startlayout/Import-StartLayout.md index e26c8f0d95..47479bd6be 100644 --- a/docset/winserver2025-ps/startlayout/Import-StartLayout.md +++ b/docset/winserver2025-ps/startlayout/Import-StartLayout.md @@ -16,12 +16,12 @@ Imports the layout of the Start into a mounted Windows image. ## SYNTAX ### Path -``` +```powershell Import-StartLayout [-LayoutPath] [-MountPath] [-WhatIf] [-Confirm] [] ``` ### LiteralPath -``` +```powershell Import-StartLayout -LayoutLiteralPath -MountLiteralPath [-WhatIf] [-Confirm] [] ``` @@ -36,6 +36,9 @@ You must have administrator rights to import a layout. In Windows 10, the Export-StartLayout cmdlet exports layouts as .xml files, and the **Import-StartLayout** cmdlet imports only .xml files. +> [!CAUTION] +> The Import-StartLayout cmdlet is deprecated in Windows 11. It has no effect on either Start or Taskbar layout. To configure the Start layout in Windows 11, see [Customize the Windows 11 Start layout](https://learn.microsoft.com/en-us/windows-hardware/customize/desktop/customize-the-windows-11-start-menu). To configure Taskbar layout in Windows 11, see [Customize the Taskbar](https://learn.microsoft.com/en-us/windows-hardware/customize/desktop/customize-the-windows-11-taskbar). + ## EXAMPLES ### Example 1: Import a layout into a Windows image From 02627e833559a7998f4552bf0ff7cdeef9a11ef3 Mon Sep 17 00:00:00 2001 From: Chris Davis Date: Tue, 15 Oct 2024 16:55:20 -0700 Subject: [PATCH 79/98] Converted SYNTAX blocks to one param per line and sorted And other minor lint fixes: - Eliminated trailing spaces and >2 consecutive carriage returns - Added powershell fence to EXAMPLE code blocks where missing --- .../defender/Add-MpPreference.md | 37 +- .../defender/Get-MpComputerStatus.md | 32 +- .../defender/Get-MpPreference.md | 13 +- .../winserver2022-ps/defender/Get-MpThreat.md | 15 +- .../defender/Get-MpThreatCatalog.md | 12 +- .../defender/Get-MpThreatDetection.md | 28 +- .../defender/Remove-MpPreference.md | 180 ++++++---- .../defender/Remove-MpThreat.md | 26 +- .../defender/Set-MpPreference.md | 315 +++++++++++------- .../winserver2022-ps/defender/Start-MpScan.md | 34 +- .../defender/Start-MpWDOScan.md | 27 +- .../defender/Update-MpSignature.md | 36 +- 12 files changed, 461 insertions(+), 294 deletions(-) diff --git a/docset/winserver2022-ps/defender/Add-MpPreference.md b/docset/winserver2022-ps/defender/Add-MpPreference.md index 96c95090d6..ee236d0673 100644 --- a/docset/winserver2022-ps/defender/Add-MpPreference.md +++ b/docset/winserver2022-ps/defender/Add-MpPreference.md @@ -16,14 +16,23 @@ Modifies settings for Windows Defender. ## SYNTAX ``` -Add-MpPreference [-ExclusionPath ] [-ExclusionExtension ] -[-ExclusionProcess ] [-ExclusionIpAddress ] -[-ThreatIDDefaultAction_Ids ] [-ThreatIDDefaultAction_Actions ] -[-AttackSurfaceReductionOnlyExclusions ] -[-ControlledFolderAccessAllowedApplications ] -[-ControlledFolderAccessProtectedFolders ] [-AttackSurfaceReductionRules_Ids ] -[-AttackSurfaceReductionRules_Actions ] [-Force] [-CimSession ] -[-ThrottleLimit ] [-AsJob] [] +Add-MpPreference + [-AsJob] + [-AttackSurfaceReductionOnlyExclusions ] + [-AttackSurfaceReductionRules_Actions ] + [-AttackSurfaceReductionRules_Ids ] + [-CimSession ] + [-ControlledFolderAccessAllowedApplications ] + [-ControlledFolderAccessProtectedFolders ] + [-ExclusionExtension ] + [-ExclusionIpAddress ] + [-ExclusionPath ] + [-ExclusionProcess ] + [-Force] + [-ThreatIDDefaultAction_Actions ] + [-ThreatIDDefaultAction_Ids ] + [-ThrottleLimit ] + [] ``` ## DESCRIPTION @@ -69,7 +78,7 @@ For more information about Windows PowerShell background jobs, see ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -212,7 +221,7 @@ Specifies an array of IP addresses to exclude from scheduled and real-time scann ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -229,7 +238,7 @@ You can specify a folder to exclude all the files under the folder. ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -248,7 +257,7 @@ themselves. To exclude a process, specify it by using the **ExclusionPath** para ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -264,7 +273,7 @@ Forces the command to run without asking for user confirmation. ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -327,7 +336,7 @@ computer. ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named diff --git a/docset/winserver2022-ps/defender/Get-MpComputerStatus.md b/docset/winserver2022-ps/defender/Get-MpComputerStatus.md index 7df4a2e7d7..f552e60318 100644 --- a/docset/winserver2022-ps/defender/Get-MpComputerStatus.md +++ b/docset/winserver2022-ps/defender/Get-MpComputerStatus.md @@ -16,8 +16,11 @@ Gets the status of antimalware software on the computer. ## SYNTAX ``` -Get-MpComputerStatus [-CimSession ] [-ThrottleLimit ] [-AsJob] -[] +Get-MpComputerStatus + [-AsJob] + [-CimSession ] + [-ThrottleLimit ] + [] ``` ## DESCRIPTION @@ -29,7 +32,7 @@ computer. ### Example 1: Get the computer status -``` +```powershell PS C:\> Get-MpComputerStatus AMEngineVersion : 1.1.24050.5 AMProductVersion : 4.18.24050.7 @@ -45,18 +48,18 @@ AntivirusSignatureAge : 1 AntivirusSignatureLastUpdated : 6/4/2024 8:06:27 AM AntivirusSignatureVersion : 1.413.102.0 BehaviorMonitorEnabled : True -ComputerID : +ComputerID : ComputerState : 0 DefenderSignaturesOutOfDate : False -DeviceControlDefaultEnforcement : +DeviceControlDefaultEnforcement : DeviceControlPoliciesLastUpdated : 12/31/1600 4:00:00 PM DeviceControlState : Disabled FullScanAge : 4294967295 -FullScanEndTime : +FullScanEndTime : FullScanOverdue : False FullScanRequired : False -FullScanSignatureVersion : -FullScanStartTime : +FullScanSignatureVersion : +FullScanStartTime : InitializationProgress : ServiceStartedSuccessfully IoavProtectionEnabled : True IsTamperProtected : False @@ -71,14 +74,14 @@ NISSignatureVersion : 1.413.102.0 OnAccessProtectionEnabled : True ProductStatus : 524288 QuickScanAge : 4294967295 -QuickScanEndTime : +QuickScanEndTime : QuickScanOverdue : False -QuickScanSignatureVersion : -QuickScanStartTime : +QuickScanSignatureVersion : +QuickScanStartTime : RealTimeProtectionEnabled : True RealTimeScanDirection : 0 RebootRequired : False -SmartAppControlExpiration : +SmartAppControlExpiration : SmartAppControlState : Off TamperProtectionSource : E5 transition TDTCapable : N/A @@ -95,7 +98,6 @@ TroubleShootingModeSource : ATP TroubleShootingQuotaResetTime : 6/5/2024 4:47:42 PM TroubleShootingStartTime : N/A PSComputerName : - ``` This command gets the status of antimalware protection software installed on the computer. @@ -118,7 +120,7 @@ For more information about Windows PowerShell background jobs, see ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -157,7 +159,7 @@ computer. ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named diff --git a/docset/winserver2022-ps/defender/Get-MpPreference.md b/docset/winserver2022-ps/defender/Get-MpPreference.md index edc27371bf..d2e0728fbc 100644 --- a/docset/winserver2022-ps/defender/Get-MpPreference.md +++ b/docset/winserver2022-ps/defender/Get-MpPreference.md @@ -16,8 +16,11 @@ Gets preferences for the Windows Defender scans and updates. ## SYNTAX ``` -Get-MpPreference [-CimSession ] [-ThrottleLimit ] [-AsJob] -[] +Get-MpPreference + [-AsJob] + [-CimSession ] + [-ThrottleLimit ] + [] ``` ## DESCRIPTION @@ -30,7 +33,7 @@ information about the preferences that this cmdlet retrieves, see ### Example 1: View the scheduled scan day -``` +```powershell PS C:\> $Preferences = Get-MpPreference PS C:\> $Preferences.ScanScheduleDay ``` @@ -58,7 +61,7 @@ For more information about Windows PowerShell background jobs, see ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -97,7 +100,7 @@ computer. ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named diff --git a/docset/winserver2022-ps/defender/Get-MpThreat.md b/docset/winserver2022-ps/defender/Get-MpThreat.md index 73688aa3a1..8aaf595196 100644 --- a/docset/winserver2022-ps/defender/Get-MpThreat.md +++ b/docset/winserver2022-ps/defender/Get-MpThreat.md @@ -24,8 +24,12 @@ Get-MpThreat [] ### ById ``` -Get-MpThreat [-ThreatID ] [-CimSession ] [-ThrottleLimit ] [-AsJob] -[] +Get-MpThreat + [-AsJob] + [-CimSession ] + [-ThreatID ] + [-ThrottleLimit ] + [] ``` ## DESCRIPTION @@ -37,7 +41,7 @@ computer. ### Example 1: Get the history of a detected threat -``` +```powershell PS C:\> Get-MpThreat -ThreatID 1994 ``` @@ -61,7 +65,7 @@ For more information about Windows PowerShell background jobs, see ```yaml Type: SwitchParameter Parameter Sets: ById -Aliases: +Aliases: Required: False Position: Named @@ -117,7 +121,7 @@ computer. ```yaml Type: Int32 Parameter Sets: ById -Aliases: +Aliases: Required: False Position: Named @@ -146,4 +150,3 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Get-MpThreatCatalog](./Get-MpThreatCatalog.md) [Get-MpThreatDetection](./Get-MpThreatDetection.md) - diff --git a/docset/winserver2022-ps/defender/Get-MpThreatCatalog.md b/docset/winserver2022-ps/defender/Get-MpThreatCatalog.md index b6999aafca..ab8a7b2ca8 100644 --- a/docset/winserver2022-ps/defender/Get-MpThreatCatalog.md +++ b/docset/winserver2022-ps/defender/Get-MpThreatCatalog.md @@ -24,7 +24,11 @@ Get-MpThreatCatalog [] ### ById ``` -Get-MpThreatCatalog [-ThreatID ] [-CimSession ] [-ThrottleLimit ] [-AsJob] +Get-MpThreatCatalog + [-AsJob] + [-CimSession ] + [-ThreatID ] + [-ThrottleLimit ] [] ``` @@ -37,7 +41,7 @@ The definitions catalog contains references to all known threats that Windows De ### Example 1: Get a known threat from the definitions catalog -``` +```powershell PS C:\> Get-MpThreatCatalog -ThreatID 1994 ``` @@ -61,7 +65,7 @@ For more information about Windows PowerShell background jobs, see ```yaml Type: SwitchParameter Parameter Sets: ById -Aliases: +Aliases: Required: False Position: Named @@ -117,7 +121,7 @@ computer. ```yaml Type: Int32 Parameter Sets: ById -Aliases: +Aliases: Required: False Position: Named diff --git a/docset/winserver2022-ps/defender/Get-MpThreatDetection.md b/docset/winserver2022-ps/defender/Get-MpThreatDetection.md index 3db6f72ffb..a7e21788c6 100644 --- a/docset/winserver2022-ps/defender/Get-MpThreatDetection.md +++ b/docset/winserver2022-ps/defender/Get-MpThreatDetection.md @@ -22,7 +22,11 @@ Get-MpThreatDetection [] ### ById ``` -Get-MpThreatDetection [-ThreatID ] [-CimSession ] [-ThrottleLimit ] [-AsJob] +Get-MpThreatDetection + [-AsJob] + [-CimSession ] + [-ThreatID ] + [-ThrottleLimit ] [] ``` @@ -33,7 +37,7 @@ If Windows Defender has detected the threat that you specify, this cmdlet return ## EXAMPLES ### Example 1: Get threats that Windows Defender detected -``` +```powershell PS C:\> Get-MpThreatDetection ``` @@ -41,7 +45,7 @@ This command returns the list of past malware detections for the local computer. **Error codes** -The following table lists the hexadecimal and decimal error codes for this cmdlet. Each hexadecimal error code has a 0x8050 prefix. Therefore, an ERROR_MP_BAD_SCANID error corresponds to error code 0x80508012. Additionally, an ERR_MP_REMOVE_FAILED error corresponds to error code 0x80508017. +The following table lists the hexadecimal and decimal error codes for this cmdlet. Each hexadecimal error code has a 0x8050 prefix. Therefore, an ERROR_MP_BAD_SCANID error corresponds to error code 0x80508012. Additionally, an ERR_MP_REMOVE_FAILED error corresponds to error code 0x80508017. For a list of error codes, along with possible reasons and resolutions, see [Windows Defender Antivirus client error codes](/windows/security/threat-protection/windows-defender-antivirus/troubleshoot-windows-defender-antivirus#windows-defender-antivirus-client-error-codes) in the topic [Review event logs and error codes to troubleshoot issues with Windows Defender Antivirus](/windows/security/threat-protection/windows-defender-antivirus/troubleshoot-windows-defender-antivirus#windows-defender-antivirus-client-error-codes). @@ -87,19 +91,19 @@ For a list of error codes, along with possible reasons and resolutions, see [Win ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. -The cmdlet immediately returns an object that represents the job and then displays the command prompt. -You can continue to work in the session while the job completes. -To manage the job, use the `*-Job` cmdlets. -To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. +The cmdlet immediately returns an object that represents the job and then displays the command prompt. +You can continue to work in the session while the job completes. +To manage the job, use the `*-Job` cmdlets. +To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. For more information about Windows PowerShell background jobs, see [about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). ```yaml Type: SwitchParameter Parameter Sets: ById -Aliases: +Aliases: Required: False Position: Named @@ -109,8 +113,8 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. +Runs the cmdlet in a remote session or on a remote computer. +Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. ```yaml @@ -149,7 +153,7 @@ The throttle limit applies only to the current cmdlet, not to the session or to ```yaml Type: Int32 Parameter Sets: ById -Aliases: +Aliases: Required: False Position: Named diff --git a/docset/winserver2022-ps/defender/Remove-MpPreference.md b/docset/winserver2022-ps/defender/Remove-MpPreference.md index c10d0138f9..2d767983b2 100644 --- a/docset/winserver2022-ps/defender/Remove-MpPreference.md +++ b/docset/winserver2022-ps/defender/Remove-MpPreference.md @@ -16,36 +16,105 @@ Removes exclusions or default actions. ## SYNTAX ``` -Remove-MpPreference [-ExclusionPath ] [-ExclusionExtension ] [-ExclusionProcess ] - [-ExclusionIpAddress ] [-RealTimeScanDirection] [-QuarantinePurgeItemsAfterDelay] - [-RemediationScheduleDay] [-RemediationScheduleTime] [-ReportingAdditionalActionTimeOut] - [-ReportingCriticalFailureTimeOut] [-ReportingNonCriticalTimeOut] [-ScanAvgCPULoadFactor] - [-CheckForSignaturesBeforeRunningScan] [-ScanPurgeItemsAfterDelay] [-ScanOnlyIfIdleEnabled] [-ScanParameters] - [-ScanScheduleDay] [-ScanScheduleQuickScanTime] [-ScanScheduleTime] [-SignatureFirstAuGracePeriod] - [-SignatureAuGracePeriod] [-SignatureDefinitionUpdateFileSharesSources] - [-SignatureDisableUpdateOnStartupWithoutEngine] [-SignatureFallbackOrder] [-SharedSignaturesPath] - [-SignatureScheduleDay] [-SignatureScheduleTime] [-SignatureUpdateCatchupInterval] [-SignatureUpdateInterval] - [-SignatureBlobUpdateInterval] [-SignatureBlobFileSharesSources] [-MeteredConnectionUpdates] - [-AllowNetworkProtectionOnWinServer] [-DisableDatagramProcessing] [-DisableCpuThrottleOnIdleScans] - [-MAPSReporting] [-SubmitSamplesConsent] [-DisableAutoExclusions] [-DisablePrivacyMode] - [-RandomizeScheduleTaskTimes] [-SchedulerRandomizationTime] [-DisableBehaviorMonitoring] - [-DisableIntrusionPreventionSystem] [-DisableIOAVProtection] [-DisableRealtimeMonitoring] - [-DisableScriptScanning] [-DisableArchiveScanning] [-DisableCatchupFullScan] [-DisableCatchupQuickScan] - [-DisableEmailScanning] [-DisableRemovableDriveScanning] [-DisableRestorePoint] - [-DisableScanningMappedNetworkDrivesForFullScan] [-DisableScanningNetworkFiles] [-UILockdown] - [-ThreatIDDefaultAction_Ids ] [-ThreatIDDefaultAction_Actions ] - [-UnknownThreatDefaultAction] [-LowThreatDefaultAction] [-ModerateThreatDefaultAction] - [-HighThreatDefaultAction] [-SevereThreatDefaultAction] [-DisableBlockAtFirstSeen] [-PUAProtection] - [-CloudBlockLevel] [-CloudExtendedTimeout] [-EnableNetworkProtection] [-EnableControlledFolderAccess] - [-AttackSurfaceReductionOnlyExclusions ] [-ControlledFolderAccessAllowedApplications ] - [-ControlledFolderAccessProtectedFolders ] [-AttackSurfaceReductionRules_Ids ] - [-AttackSurfaceReductionRules_Actions ] [-EnableLowCpuPriority] - [-EnableFileHashComputation] [-EnableFullScanOnBatteryPower] [-ProxyPacUrl] [-ProxyServer] [-ProxyBypass] - [-ForceUseProxyOnly] [-DisableTlsParsing] [-DisableHttpParsing] [-DisableDnsParsing] - [-DisableDnsOverTcpParsing] [-DisableSshParsing] [-PlatformUpdatesChannel] [-EngineUpdatesChannel] - [-SignaturesUpdatesChannel] [-DisableGradualRelease] [-AllowNetworkProtectionDownLevel] - [-AllowDatagramProcessingOnWinServer] [-EnableDnsSinkhole] [-DisableInboundConnectionFiltering] - [-DisableRdpParsing] [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] +Remove-MpPreference + [-AllowDatagramProcessingOnWinServer] + [-AllowNetworkProtectionDownLevel] + [-AllowNetworkProtectionOnWinServer] + [-AsJob] + [-AttackSurfaceReductionOnlyExclusions ] + [-AttackSurfaceReductionRules_Actions ] + [-AttackSurfaceReductionRules_Ids ] + [-CheckForSignaturesBeforeRunningScan] + [-CimSession ] + [-CloudBlockLevel] + [-CloudExtendedTimeout] + [-ControlledFolderAccessAllowedApplications ] + [-ControlledFolderAccessProtectedFolders ] + [-DisableArchiveScanning] + [-DisableAutoExclusions] + [-DisableBehaviorMonitoring] + [-DisableBlockAtFirstSeen] + [-DisableCatchupFullScan] + [-DisableCatchupQuickScan] + [-DisableCpuThrottleOnIdleScans] + [-DisableDatagramProcessing] + [-DisableDnsOverTcpParsing] + [-DisableDnsParsing] + [-DisableEmailScanning] + [-DisableGradualRelease] + [-DisableHttpParsing] + [-DisableIOAVProtection] + [-DisableInboundConnectionFiltering] + [-DisableIntrusionPreventionSystem] + [-DisablePrivacyMode] + [-DisableRdpParsing] + [-DisableRealtimeMonitoring] + [-DisableRemovableDriveScanning] + [-DisableRestorePoint] + [-DisableScanningMappedNetworkDrivesForFullScan] + [-DisableScanningNetworkFiles] + [-DisableScriptScanning] + [-DisableSshParsing] + [-DisableTlsParsing] + [-EnableControlledFolderAccess] + [-EnableDnsSinkhole] + [-EnableFileHashComputation] + [-EnableFullScanOnBatteryPower] + [-EnableLowCpuPriority] + [-EnableNetworkProtection] + [-EngineUpdatesChannel] + [-ExclusionExtension ] + [-ExclusionIpAddress ] + [-ExclusionPath ] + [-ExclusionProcess ] + [-ForceUseProxyOnly] + [-Force] + [-HighThreatDefaultAction] + [-LowThreatDefaultAction] + [-MAPSReporting] + [-MeteredConnectionUpdates] + [-ModerateThreatDefaultAction] + [-PUAProtection] + [-PlatformUpdatesChannel] + [-ProxyBypass] + [-ProxyPacUrl] + [-ProxyServer] + [-QuarantinePurgeItemsAfterDelay] + [-RandomizeScheduleTaskTimes] + [-RealTimeScanDirection] + [-RemediationScheduleDay] + [-RemediationScheduleTime] + [-ReportingAdditionalActionTimeOut] + [-ReportingCriticalFailureTimeOut] + [-ReportingNonCriticalTimeOut] + [-ScanAvgCPULoadFactor] + [-ScanOnlyIfIdleEnabled] + [-ScanParameters] + [-ScanPurgeItemsAfterDelay] + [-ScanScheduleDay] + [-ScanScheduleQuickScanTime] + [-ScanScheduleTime] + [-SchedulerRandomizationTime] + [-SevereThreatDefaultAction] + [-SharedSignaturesPath] + [-SignatureAuGracePeriod] + [-SignatureBlobFileSharesSources] + [-SignatureBlobUpdateInterval] + [-SignatureDefinitionUpdateFileSharesSources] + [-SignatureDisableUpdateOnStartupWithoutEngine] + [-SignatureFallbackOrder] + [-SignatureFirstAuGracePeriod] + [-SignatureScheduleDay] + [-SignatureScheduleTime] + [-SignatureUpdateCatchupInterval] + [-SignatureUpdateInterval] + [-SignaturesUpdatesChannel] + [-SubmitSamplesConsent] + [-ThreatIDDefaultAction_Actions ] + [-ThreatIDDefaultAction_Ids ] + [-ThrottleLimit ] + [-UILockdown] + [-UnknownThreatDefaultAction] [] ``` @@ -56,14 +125,14 @@ If you attempt to remove an exclusion that is not in the list, this cmdlet repor ## EXAMPLES ### Example 1: Remove a folder from the exclusion list -``` +```powershell Remove-MpPreference -ExclusionPath "C:\Temp" ``` This command removes the folder C:\Temp from the exclusion list. ### Example 2: Exclude a specific file -``` +```powershell Remove-MpPreference -AttackSurfaceReductionOnlyExclusions "C:\Windows\App.exe" ``` @@ -117,19 +186,19 @@ Accept wildcard characters: False ``` ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. -The cmdlet immediately returns an object that represents the job and then displays the command prompt. -You can continue to work in the session while the job completes. -To manage the job, use the `*-Job` cmdlets. -To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. +The cmdlet immediately returns an object that represents the job and then displays the command prompt. +You can continue to work in the session while the job completes. +To manage the job, use the `*-Job` cmdlets. +To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. For more information about Windows PowerShell background jobs, see [about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -138,7 +207,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` - ### -AttackSurfaceReductionOnlyExclusions Specifies the files and paths to exclude from Attack Surface Reduction (ASR) rules. Specify the folders or files and resources that should be excluded from ASR rules. Enter a folder path or a fully qualified resource name. For example, ""C:\Windows"" will exclude all files in that directory. ""C:\Windows\App.exe"" will exclude only that specific file in that specific folder. @@ -205,7 +273,7 @@ Accept wildcard characters: False ### -CimSession Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. +Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. ```yaml @@ -448,15 +516,15 @@ Accept wildcard characters: False ``` ### -DisableGradualRelease -Indicates that the cmdlet removes whether to disable gradual rollout of monthly and daily Windows Defender updates. +Indicates that the cmdlet removes whether to disable gradual rollout of monthly and daily Windows Defender updates. If you enable this option, devices are offered all updates after the gradual release cycle finishes. -Consider this option for datacenter computers that only receive limited updates. +Consider this option for datacenter computers that only receive limited updates. This setting applies to both monthly and daily updates. -It overrides any previously configured channel selections for platform and engine updates. +It overrides any previously configured channel selections for platform and engine updates. If you disable or do not configure this policy, the device remains in Current Channel (Default) unless specified otherwise in specific channels for platform and engine updates. -The device stays up to date automatically during the gradual release cycle, which is suitable for most devices. +The device stays up to date automatically during the gradual release cycle, which is suitable for most devices. This policy is available starting with platform version 4.18.2106.5 and later. @@ -704,7 +772,7 @@ Accept wildcard characters: False ``` ### -EnableDnsSinkhole -Indicates that the cmdlet removes whether to examine DNS traffic to detect and sinkhole DNS exfiltration attempts and other DNS based malicious attacks. +Indicates that the cmdlet removes whether to examine DNS traffic to detect and sinkhole DNS exfiltration attempts and other DNS based malicious attacks. ```yaml Type: SwitchParameter @@ -825,7 +893,7 @@ Specifies an array of IP addresses to exclude from scheduled and real-time scann ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -841,7 +909,7 @@ This cmdlet removes the exclusions that you specify. ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -857,7 +925,7 @@ This cmdlet removes exclusions of files opened by the processes that you specify ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -872,7 +940,7 @@ Forces the command to run without asking for user confirmation. ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -1533,12 +1601,12 @@ Accept wildcard characters: False Specifies an array of the actions to take for the IDs specified by using the **ThreatIDDefaultAction_Ids** parameter. The acceptable values for this parameter are: -- 1: Clean -- 2: Quarantine -- 3: Remove -- 6: Allow -- 8: UserDefined -- 9: NoAction +- 1: Clean +- 2: Quarantine +- 3: Remove +- 6: Allow +- 8: UserDefined +- 9: NoAction - 10: Block >[!NOTE] @@ -1580,7 +1648,7 @@ The throttle limit applies only to the current cmdlet, not to the session or to ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named diff --git a/docset/winserver2022-ps/defender/Remove-MpThreat.md b/docset/winserver2022-ps/defender/Remove-MpThreat.md index 368db9410d..0bd2725833 100644 --- a/docset/winserver2022-ps/defender/Remove-MpThreat.md +++ b/docset/winserver2022-ps/defender/Remove-MpThreat.md @@ -16,7 +16,11 @@ Removes active threats from a computer. ## SYNTAX ``` -Remove-MpThreat [-CimSession ] [-ThrottleLimit ] [-AsJob] [] +Remove-MpThreat + [-AsJob] + [-CimSession ] + [-ThrottleLimit ] + [] ``` ## DESCRIPTION @@ -25,7 +29,7 @@ The **Remove-MpThreat** cmdlet removes all active threats that Windows Defender ## EXAMPLES ### Example 1: Remove active threats from a computer -``` +```powershell PS C:\> Remove-MpThreat ``` @@ -34,19 +38,19 @@ This command removes all active threats from the local computer. ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. -The cmdlet immediately returns an object that represents the job and then displays the command prompt. -You can continue to work in the session while the job completes. -To manage the job, use the `*-Job` cmdlets. -To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. +The cmdlet immediately returns an object that represents the job and then displays the command prompt. +You can continue to work in the session while the job completes. +To manage the job, use the `*-Job` cmdlets. +To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. For more information about Windows PowerShell background jobs, see [about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -56,8 +60,8 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. +Runs the cmdlet in a remote session or on a remote computer. +Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. ```yaml @@ -80,7 +84,7 @@ The throttle limit applies only to the current cmdlet, not to the session or to ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named diff --git a/docset/winserver2022-ps/defender/Set-MpPreference.md b/docset/winserver2022-ps/defender/Set-MpPreference.md index 6b4dccec70..bd248dce4e 100644 --- a/docset/winserver2022-ps/defender/Set-MpPreference.md +++ b/docset/winserver2022-ps/defender/Set-MpPreference.md @@ -15,57 +15,116 @@ Configures preferences for Windows Defender scans and updates. ## SYNTAX - ```powershell -Set-MpPreference [-ExclusionPath ] [-ExclusionExtension ] [-ExclusionProcess ] - [-ExclusionIpAddress ] [-RealTimeScanDirection ] +Set-MpPreference + [-AllowDatagramProcessingOnWinServer ] + [-AllowNetworkProtectionDownLevel ] + [-AllowNetworkProtectionOnWinServer ] + [-AllowSwitchToAsyncInspection ] + [-AsJob] + [-AttackSurfaceReductionOnlyExclusions ] + [-AttackSurfaceReductionRules_Actions ] + [-AttackSurfaceReductionRules_Ids ] + [-CheckForSignaturesBeforeRunningScan ] + [-CimSession ] + [-CloudBlockLevel ] + [-CloudExtendedTimeout ] + [-ControlledFolderAccessAllowedApplications ] + [-ControlledFolderAccessProtectedFolders ] + [-DefinitionUpdatesChannel ] + [-DisableArchiveScanning ] + [-DisableAutoExclusions ] + [-DisableBehaviorMonitoring ] + [-DisableBlockAtFirstSeen ] + [-DisableCacheMaintenance ] + [-DisableCatchupFullScan ] + [-DisableCatchupQuickScan ] + [-DisableCpuThrottleOnIdleScans ] + [-DisableDatagramProcessing ] + [-DisableDnsOverTcpParsing ] + [-DisableDnsParsing ] + [-DisableEmailScanning ] + [-DisableFtpParsing ] + [-DisableGradualRelease ] + [-DisableHttpParsing ] + [-DisableIOAVProtection ] + [-DisableInboundConnectionFiltering ] + [-DisableNetworkProtectionPerfTelemetry ] + [-DisablePrivacyMode ] + [-DisableRdpParsing ] + [-DisableRealtimeMonitoring ] + [-DisableRemovableDriveScanning ] + [-DisableRestorePoint ] + [-DisableScanningMappedNetworkDrivesForFullScan ] + [-DisableScanningNetworkFiles ] + [-DisableScriptScanning ] + [-DisableSmtpParsing ] + [-DisableSshParsing ] + [-DisableTlsParsing ] + [-EnableControlledFolderAccess ] + [-EnableDnsSinkhole ] + [-EnableFileHashComputation ] + [-EnableFullScanOnBatteryPower ] + [-EnableLowCpuPriority ] + [-EnableNetworkProtection ] + [-EngineUpdatesChannel ] + [-ExclusionExtension ] + [-ExclusionIpAddress ] + [-ExclusionPath ] + [-ExclusionProcess ] + [-ForceUseProxyOnly ] + [-Force] + [-HighThreatDefaultAction ] [-IntelTDTEnabled ] - [-QuarantinePurgeItemsAfterDelay ] [-RemediationScheduleDay ] - [-RemediationScheduleTime ] [-ReportingAdditionalActionTimeOut ] - [-ReportingCriticalFailureTimeOut ] [-ReportingNonCriticalTimeOut ] - [-ScanAvgCPULoadFactor ] [-CheckForSignaturesBeforeRunningScan ] - [-ScanPurgeItemsAfterDelay ] [-ScanOnlyIfIdleEnabled ] [-ScanParameters ] - [-ScanScheduleDay ] [-ScanScheduleQuickScanTime ] [-ScanScheduleOffset ] + [-LowThreatDefaultAction ] + [-MAPSReporting ] + [-MeteredConnectionUpdates ] + [-ModerateThreatDefaultAction ] + [-OobeEnableRtpAndSigUpdate ] + [-PUAProtection ] + [-PlatformUpdatesChannel ] + [-ProxyBypass ] + [-ProxyPacUrl ] + [-ProxyServer ] + [-QuarantinePurgeItemsAfterDelay ] + [-RandomizeScheduleTaskTimes ] + [-RealTimeScanDirection ] + [-RemediationScheduleDay ] + [-RemediationScheduleTime ] + [-ReportingAdditionalActionTimeOut ] + [-ReportingCriticalFailureTimeOut ] + [-ReportingNonCriticalTimeOut ] + [-ScanAvgCPULoadFactor ] + [-ScanOnlyIfIdleEnabled ] + [-ScanParameters ] + [-ScanPurgeItemsAfterDelay ] + [-ScanScheduleDay ] + [-ScanScheduleOffset ] + [-ScanScheduleQuickScanTime ] [-ScanScheduleTime ] - [-SignatureFirstAuGracePeriod ] [-SignatureAuGracePeriod ] + [-SchedulerRandomizationTime ] + [-ServiceHealthReportInterval ] + [-SevereThreatDefaultAction ] + [-SharedSignaturesPath ] + [-SignatureAuGracePeriod ] + [-SignatureBlobFileSharesSources ] + [-SignatureBlobUpdateInterval ] [-SignatureDefinitionUpdateFileSharesSources ] - [-SignatureDisableUpdateOnStartupWithoutEngine ] [-SignatureFallbackOrder ] - [-SharedSignaturesPath ] [-SignatureScheduleDay ] [-SignatureScheduleTime ] - [-SignatureUpdateCatchupInterval ] [-SignatureUpdateInterval ] - [-SignatureBlobUpdateInterval ] [-SignatureBlobFileSharesSources ] - [-MeteredConnectionUpdates ] [-AllowNetworkProtectionOnWinServer ] - [-DisableDatagramProcessing ] [-DisableCpuThrottleOnIdleScans ] - [-MAPSReporting ] [-SubmitSamplesConsent ] - [-DisableAutoExclusions ] [-DisablePrivacyMode ] [-RandomizeScheduleTaskTimes ] - [-SchedulerRandomizationTime ] [-DisableBehaviorMonitoring ] - [-DisableRealtimeMonitoring ] [-DisableScriptScanning ] [-DisableArchiveScanning ] [-DisableCacheMaintenance ] - [-DisableCatchupFullScan ] [-DisableCatchupQuickScan ] [-DisableEmailScanning ] - [-DisableRemovableDriveScanning ] [-DisableRestorePoint ] - [-DisableScanningMappedNetworkDrivesForFullScan ] [-DisableScanningNetworkFiles ] - [-DisableIOAVProtection ] [-AllowSwitchToAsyncInspection ] - [-UILockdown ] [-ThreatIDDefaultAction_Ids ] - [-ThreatIDDefaultAction_Actions ] [-UnknownThreatDefaultAction ] - [-LowThreatDefaultAction ] [-ModerateThreatDefaultAction ] - [-HighThreatDefaultAction ] [-SevereThreatDefaultAction ] [-Force] - [-DisableBlockAtFirstSeen ] [-PUAProtection ] - [-ThrottleLimit ] [-AsJob] [] [-DisableGradualRelease ] [-DefinitionUpdatesChannel ] [-EngineUpdatesChannel ] [-PlatformUpdatesChannel ][-CloudBlockLevel ][-ServiceHealthReportInterval ] - [-CloudBlockLevel ] [-CloudExtendedTimeout ] - [-EnableNetworkProtection ] [-EnableControlledFolderAccess ] - [-AttackSurfaceReductionOnlyExclusions ] [-ControlledFolderAccessAllowedApplications ] - [-ControlledFolderAccessProtectedFolders ] [-AttackSurfaceReductionRules_Ids ] - [-AttackSurfaceReductionRules_Actions ] [-EnableLowCpuPriority ] - [-EnableFileHashComputation ] [-EnableFullScanOnBatteryPower ] [-ProxyPacUrl ] - [-ProxyServer ] [-ProxyBypass ] [-ForceUseProxyOnly ] - [-OobeEnableRtpAndSigUpdate ] - [-DisableTlsParsing ] [-DisableHttpParsing ] [-DisableDnsParsing ] - [-DisableFtpParsing ] [-DisableSmtpParsing ] - [-DisableDnsOverTcpParsing ] [-DisableSshParsing ] - [-DisableNetworkProtectionPerfTelemetry ] - [-PlatformUpdatesChannel ] [-EngineUpdatesChannel ] - [-SignaturesUpdatesChannel ] [-DisableGradualRelease ] - [-AllowNetworkProtectionDownLevel ] [-AllowDatagramProcessingOnWinServer ] - [-EnableDnsSinkhole ] [-DisableInboundConnectionFiltering ] [-DisableRdpParsing ] - [-CimSession ] [-ThrottleLimit ] [-AsJob] [] + [-SignatureDisableUpdateOnStartupWithoutEngine ] + [-SignatureFallbackOrder ] + [-SignatureFirstAuGracePeriod ] + [-SignatureScheduleDay ] + [-SignatureScheduleTime ] + [-SignatureUpdateCatchupInterval ] + [-SignatureUpdateInterval ] + [-SignaturesUpdatesChannel ] + [-SubmitSamplesConsent ] + [-ThreatIDDefaultAction_Actions ] + [-ThreatIDDefaultAction_Ids ] + [-ThrottleLimit ] + [-UILockdown ] + [-UnknownThreatDefaultAction ] + [] ``` ## DESCRIPTION @@ -91,7 +150,7 @@ The following table provides remediation action values for detected threats at l ### Example 1: Schedule to check for definition updates everyday -```sql +```powershell PS C:\> Set-MpPreference -SignatureScheduleDay Everyday ``` @@ -99,7 +158,7 @@ This command configures preferences to check for definition updates every day. ### Example 2: Schedule a time of day to check for definition updates -```sql +```powershell PS C:\> Set-MpPreference -SignatureScheduleTime 02:00:00 ``` @@ -152,7 +211,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` - ### -AllowSwitchToAsyncInspection Specifies whether to enable a performance optimization that allows synchronously inspected network flows to switch to async inspection once they have been checked and validated. @@ -160,7 +218,7 @@ Specifies whether to enable a performance optimization that allows synchronously ```yaml Type: Boolean Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -169,14 +227,13 @@ Accept pipeline input: False Accept wildcard characters: False ``` - ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. -The cmdlet immediately returns an object that represents the job and then displays the command prompt. -You can continue to work in the session while the job completes. -To manage the job, use the `*-Job` cmdlets. -To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. +The cmdlet immediately returns an object that represents the job and then displays the command prompt. +You can continue to work in the session while the job completes. +To manage the job, use the `*-Job` cmdlets. +To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. For more information about Windows PowerShell background jobs, see [about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). @@ -232,7 +289,7 @@ If you add multiple rules as a comma-separated list, specify their states separa ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -260,8 +317,8 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. +Runs the cmdlet in a remote session or on a remote computer. +Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. ```yaml @@ -411,7 +468,7 @@ Aliases: dcm Required: False Position: Named -Default value: 0 +Default value: 0 Accept pipeline input: False Accept wildcard characters: False ``` @@ -428,7 +485,7 @@ Aliases: dcfsc Required: False Position: Named -Default value: 0 +Default value: 0 Accept pipeline input: False Accept wildcard characters: False ``` @@ -543,15 +600,15 @@ Accept wildcard characters: False ``` ### -DisableGradualRelease -Specifies whether to disable gradual rollout of monthly and daily Windows Defender updates. +Specifies whether to disable gradual rollout of monthly and daily Windows Defender updates. If you enable this option, devices are offered all updates after the gradual release cycle finishes. -Consider this option for datacenter computers that only receive limited updates. +Consider this option for datacenter computers that only receive limited updates. This setting applies to both monthly and daily updates. -It overrides configured channel selections for platform and engine updates. +It overrides configured channel selections for platform and engine updates. If you disable or do not configure this policy, the device remains in Current Channel (Default) unless specified otherwise in specific channels. -The device stays up to date automatically during the gradual release cycle, which is suitable for most devices. +The device stays up to date automatically during the gradual release cycle, which is suitable for most devices. This policy is available starting with platform version 4.18.2106.5 and later. @@ -615,9 +672,10 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -DisableNetworkProtectionPerfTelemetry -This setting disables the gathering and sending of performance telemetry from network protection. +### -DisableNetworkProtectionPerfTelemetry +This setting disables the gathering and sending of performance telemetry from network protection. The accepted values are 0 and 1. + - 1- Network protection telemetry is disabled. - 0 (Default) - Network protection telemetry is enabled. @@ -728,7 +786,7 @@ Accept wildcard characters: False ``` ### -DisableScanningNetworkFiles -Indicates whether to scan for network files. If you specify a value of $False or do not specify a value, Windows Defender scans network files. If you specify a value of $True, Windows Defender does not scan network files. +Indicates whether to scan for network files. If you specify a value of $False or do not specify a value, Windows Defender scans network files. If you specify a value of $True, Windows Defender does not scan network files. ```yaml Type: Boolean @@ -774,9 +832,10 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -DisableSmtpParsing +### -DisableSmtpParsing This setting disables SMTP parsing for network protection. The accepted values are 0 and 1. + - 1 - SMTP parsing is disabled. - 0 (Default) - SMTP parsing is enabled. @@ -916,7 +975,7 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### Enable UdpReceiveOffload: +### Enable UdpReceiveOffload: Specifies whether UDP receive offload support in Network Protection is enabled, resulting in potentially higher UDP bandwidth in the inbound direction. Starting with platform version `4.18.24030`, Microsoft will gradually move this support default from disabled to enabled. This setting can be manually controlled by setting it to `1` to enable and `0` to disable. ```yaml @@ -931,7 +990,7 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### Enable UdpSegmentationOffload: +### Enable UdpSegmentationOffload: Specifies whether UDP segmentation offload support in Network Protection is enabled, resulting in potentially higher UDP bandwidth in the outbound direction. Starting with platform version `4.18.24030`, Microsoft will gradually move this support default from disabled to enabled. This setting can be manually controlled by setting it to `1` to enable and `0` to disable. ```yaml @@ -990,7 +1049,7 @@ Specifies an array of IP addresses to exclude from scheduled and real-time scann ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -1006,7 +1065,7 @@ You can specify a folder to exclude all the files under the folder. ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -1025,7 +1084,7 @@ To exclude a process, specify it by using the **ExclusionPath** parameter. ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -1068,8 +1127,8 @@ Accept wildcard characters: False Specifies which automatic remediation action to take for a high level threat. The acceptable values for this parameter are: -- Quarantine -- Remove +- Quarantine +- Remove - Ignore ```yaml @@ -1088,6 +1147,7 @@ Accept wildcard characters: False ### -IntelTDTEnabled This policy setting configures the Intel TDT integration level for Intel TDT-capable devices. The acceptable values for this parameter are: + - 0 (Default) - If you don't configure this setting, the default value will be applied. The default value is controlled by Microsoft security intelligence updates. Microsoft will enable Intel TDT if there is a known threat. - 1 - If you configure this setting to enabled, Intel TDT integration will turn on. - 2 - If you configure this setting to disabled, Intel TDT integration will turn off. @@ -1136,7 +1196,7 @@ The acceptable values for this parameter are: Send no information to Microsoft. This is the default value. - 1: Basic membership. -Send basic information to Microsoft about detected software, including where the software came from, the actions that you apply or that apply automatically, and whether the actions succeeded. +Send basic information to Microsoft about detected software, including where the software came from, the actions that you apply or that apply automatically, and whether the actions succeeded. - 2: Advanced membership. In addition to basic information, send more information to Microsoft about malicious software, spyware, and potentially unwanted software, including the location of the software, file names, how the software operates, and how it affects your computer. @@ -1148,7 +1208,7 @@ However, Microsoft will not use this information to identify you or contact you. ```yaml Type: MAPSReportingType Parameter Sets: (All) -Aliases: +Aliases: Accepted values: Disabled, Basic, Advanced Required: False @@ -1178,8 +1238,8 @@ Accept wildcard characters: False Specifies which automatic remediation action to take for a moderate level threat. The acceptable values for this parameter are: -- Quarantine -- Remove +- Quarantine +- Remove - Ignore ```yaml @@ -1200,13 +1260,14 @@ Accept wildcard characters: False This setting allows you to configure whether real-time protection and Security Intelligence Updates are enabled during Out of Box experience (OOBE). Valid values are: + - True - If you enable this setting, real-time protection and Security Intelligence Updates are enabled during OOBE. - False (Default) - If you either disable or don't configure this setting, real-time protection and Security Intelligence Updates during OOBE aren't enabled. ```yaml Type: Boolean Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -1290,7 +1351,7 @@ When potentially unwanted software is downloaded or attempts to install itself o ```yaml Type: PUAProtectionType Parameter Sets: (All) -Aliases: +Aliases: Accepted values: Disabled, Enabled, AuditMode Required: False @@ -1339,9 +1400,9 @@ Specifies scanning configuration for incoming and outgoing files on NTFS volumes The acceptable values for this parameter are: - 0: Scan both incoming and outgoing files. -This is the default. -- 1: Scan incoming files only. -- 2: Scan outgoing files only. +This is the default. +- 1: Scan incoming files only. +- 2: Scan outgoing files only. Specify a value for this parameter to enhance performance on servers which have a large number of file transfers, but need scanning for either incoming or outgoing files. Evaluate this configuration based on the server role. @@ -1368,12 +1429,12 @@ The acceptable values for this parameter are: - 0: Everyday - 1: Sunday - 2: Monday -- 3: Tuesday +- 3: Tuesday - 4: Wednesday -- 5: Thursday +- 5: Thursday - 6: Friday - 7: Saturday -- 8: Never +- 8: Never The default value is 8, never. If you specify a value of 8 or do not specify a value, Windows Defender performs a scheduled full scan to complete remediation by using a default frequency. @@ -1494,14 +1555,14 @@ Specifies the scan type to use during a scheduled scan. The acceptable values for this parameter are: - 1: Quick scan -- 2: Full scan +- 2: Full scan If you do not specify this parameter, Windows Defender uses the default value of quick scan. ```yaml Type: ScanType Parameter Sets: (All) -Aliases: +Aliases: Accepted values: QuickScan, FullScan Required: False @@ -1534,14 +1595,14 @@ Specifies the day of the week on which to perform a scheduled scan. Alternatively, specify everyday for a scheduled scan or never. The acceptable values for this parameter are: -- 0: Everyday -- 1: Sunday -- 2: Monday -- 3: Tuesday -- 4: Wednesday -- 5: Thursday -- 6: Friday -- 7: Saturday +- 0: Everyday +- 1: Sunday +- 2: Monday +- 3: Tuesday +- 4: Wednesday +- 5: Thursday +- 6: Friday +- 7: Saturday - 8: Never The default value is 8, never. @@ -1620,7 +1681,7 @@ Accept wildcard characters: False ### -ServiceHealthReportInterval This policy setting configures the time interval (in minutes) for the service health reports to be sent from endpoints. These are for Microsoft Defender Antivirus events 1150 and 1151. For more information, see [Microsoft Defender Antivirus event IDs](/microsoft-365/security/defender-endpoint/troubleshoot-microsoft-defender-antivirus#microsoft-defender-antivirus-event-ids). -If you do not configure this setting, the default value will be applied. The default value is set at 60 minutes (one hour). +If you do not configure this setting, the default value will be applied. The default value is set at 60 minutes (one hour). If you configure this setting to 0, no service health reports will be sent. The maximum value allowed to be set is 14400 minutes (ten days). @@ -1638,8 +1699,8 @@ Accept wildcard characters: False Specifies which automatic remediation action to take for a severe level threat. The acceptable values for this parameter are: -- Quarantine -- Remove +- Quarantine +- Remove - Ignore ```yaml @@ -1802,15 +1863,15 @@ Specifies the day of the week on which to check for definition updates. Alternatively, specify everyday for a scheduled scan or never. The acceptable values for this parameter are: -- 0: Everyday -- 1: Sunday -- 2: Monday -- 3: Tuesday -- 4: Wednesday -- 5: Thursday -- 6: Friday -- 7: Saturday -- 8: Never +- 0: Everyday +- 1: Sunday +- 2: Monday +- 3: Tuesday +- 4: Wednesday +- 5: Thursday +- 6: Friday +- 7: Saturday +- 8: Never The default value is 8, never. If you specify a value of 8 or do not specify a value, Windows Defender checks for definition updates by using a default frequency. @@ -1909,14 +1970,14 @@ Otherwise, if the **MAPSReporting** parameter does not have a value of Disabled, The acceptable values for this parameter are: - 0: Always prompt -- 1: Send safe samples automatically +- 1: Send safe samples automatically - 2: Never send - 3: Send all samples automatically ```yaml Type: SubmitSamplesConsentType Parameter Sets: (All) -Aliases: +Aliases: Accepted values: AlwaysPrompt, SendSafeSamples, NeverSend, SendAllSamples Required: False @@ -1930,16 +1991,16 @@ Accept wildcard characters: False Specifies an array of the actions to take for the IDs specified by using the **ThreatIDDefaultAction_Ids** parameter. The acceptable values for this parameter are: -- 1: Clean -- 2: Quarantine -- 3: Remove -- 6: Allow -- 8: UserDefined -- 9: NoAction +- 1: Clean +- 2: Quarantine +- 3: Remove +- 6: Allow +- 8: UserDefined +- 9: NoAction - 10: Block ->[!NOTE] ->A value of 0 (NULL) applies an action based on the Security Intelligence Update (SIU). This is the default value. +> [!NOTE] +> A value of 0 (NULL) applies an action based on the Security Intelligence Update (SIU). This is the default value. ```yaml Type: ThreatAction[] @@ -1978,7 +2039,7 @@ The throttle limit applies only to the current cmdlet, not to the session or to ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -1990,13 +2051,14 @@ Accept wildcard characters: False ### -ThrottleForScheduledScanOnly A CPU usage limit can be applied to scheduled scans only, or to scheduled and custom scans. The default value applies a CPU usage limit to scheduled scans only. The acceptable values for this parameter are: + - 1 (Default) - If you enable this setting, CPU throttling will apply only to scheduled scans. - 0 - If you disable this setting, CPU throttling will apply to scheduled and custom scans. ```yaml Type: Boolean Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -2005,7 +2067,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` - ### -UILockdown Indicates whether to disable UI lockdown mode. If you specify a value of $True, Windows Defender disables UI lockdown mode. @@ -2014,7 +2075,7 @@ If you specify $False or do not specify a value, UI lockdown mode is enabled. ```yaml Type: Boolean Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -2027,8 +2088,8 @@ Accept wildcard characters: False Specifies which automatic remediation action to take for an unknown level threat. The acceptable values for this parameter are: -- Quarantine -- Remove +- Quarantine +- Remove - Ignore ```yaml diff --git a/docset/winserver2022-ps/defender/Start-MpScan.md b/docset/winserver2022-ps/defender/Start-MpScan.md index 6048dd4b75..292b42d5f2 100644 --- a/docset/winserver2022-ps/defender/Start-MpScan.md +++ b/docset/winserver2022-ps/defender/Start-MpScan.md @@ -16,8 +16,13 @@ Starts a scan on a computer. ## SYNTAX ``` -Start-MpScan [-ScanPath ] [-ScanType ] [-CimSession ] [-ThrottleLimit ] - [-AsJob] [] +Start-MpScan + [-AsJob] + [-CimSession ] + [-ScanPath ] + [-ScanType ] + [-ThrottleLimit ] + [] ``` ## DESCRIPTION @@ -27,7 +32,7 @@ The cmdlet performs scans for the path you specify. ## EXAMPLES ### Example 1: Start a scan -``` +```powershell PS C:\> Start-MpScan ``` @@ -36,19 +41,19 @@ This command starts a scan on the computer on which you run the cmdlet. ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. -The cmdlet immediately returns an object that represents the job and then displays the command prompt. -You can continue to work in the session while the job completes. -To manage the job, use the `*-Job` cmdlets. -To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. +The cmdlet immediately returns an object that represents the job and then displays the command prompt. +You can continue to work in the session while the job completes. +To manage the job, use the `*-Job` cmdlets. +To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. For more information about Windows PowerShell background jobs, see [about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -58,8 +63,8 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. +Runs the cmdlet in a remote session or on a remote computer. +Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. ```yaml @@ -81,7 +86,7 @@ Specify a file name, a folder name, such as C:\, or a UNC path. ```yaml Type: String Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -101,7 +106,7 @@ The acceptable values for this parameter are: ```yaml Type: ScanType Parameter Sets: (All) -Aliases: +Aliases: Accepted values: FullScan, QuickScan, CustomScan Required: False @@ -119,7 +124,7 @@ The throttle limit applies only to the current cmdlet, not to the session or to ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -138,4 +143,3 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS - diff --git a/docset/winserver2022-ps/defender/Start-MpWDOScan.md b/docset/winserver2022-ps/defender/Start-MpWDOScan.md index 372430fc11..f5188befb3 100644 --- a/docset/winserver2022-ps/defender/Start-MpWDOScan.md +++ b/docset/winserver2022-ps/defender/Start-MpWDOScan.md @@ -16,7 +16,11 @@ Starts a Windows Defender offline scan. ## SYNTAX ``` -Start-MpWDOScan [-CimSession ] [-ThrottleLimit ] [-AsJob] [] +Start-MpWDOScan + [-AsJob] + [-CimSession ] + [-ThrottleLimit ] + [] ``` ## DESCRIPTION @@ -25,7 +29,7 @@ The **Start-MpWDOScan** cmdlet starts a Windows Defender offline scan on a compu ## EXAMPLES ### Example 1: Start an offline scan -``` +```powershell PS C:\>Start-MpWDOScan ``` @@ -35,19 +39,19 @@ This command causes the computer to start in Windows Defender offline and begin ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. -The cmdlet immediately returns an object that represents the job and then displays the command prompt. -You can continue to work in the session while the job completes. -To manage the job, use the `*-Job` cmdlets. -To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. +The cmdlet immediately returns an object that represents the job and then displays the command prompt. +You can continue to work in the session while the job completes. +To manage the job, use the `*-Job` cmdlets. +To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. For more information about Windows PowerShell background jobs, see [about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -57,8 +61,8 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. +Runs the cmdlet in a remote session or on a remote computer. +Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. ```yaml @@ -81,7 +85,7 @@ The throttle limit applies only to the current cmdlet, not to the session or to ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -100,4 +104,3 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS - diff --git a/docset/winserver2022-ps/defender/Update-MpSignature.md b/docset/winserver2022-ps/defender/Update-MpSignature.md index cb0efc1767..af9ed08a17 100644 --- a/docset/winserver2022-ps/defender/Update-MpSignature.md +++ b/docset/winserver2022-ps/defender/Update-MpSignature.md @@ -16,8 +16,12 @@ Updates the antimalware definitions on a computer. ## SYNTAX ``` -Update-MpSignature [-UpdateSource ] [-CimSession ] [-ThrottleLimit ] - [-AsJob] [] +Update-MpSignature + [-AsJob] + [-CimSession ] + [-ThrottleLimit ] + [-UpdateSource ] + [] ``` ## DESCRIPTION @@ -26,7 +30,7 @@ The **Update-MpSignature** cmdlet updates the antimalware definitions with the l ## EXAMPLES ### Example 1: Update signatures -``` +```powershell PS C:\> Update-MpSignature ``` @@ -34,7 +38,7 @@ This command updates the antimalware definitions. By default, the cmdlet uses the sources configured through [SignatureFallbackOrder](Set-MpPreference.yml#-signaturefallbackorder). If no signature fallback order is configured, the cmdlet uses the default update source. ### Example 2: Update signatures from a specific source -``` +```powershell PS C:\> Update-MpSignature -UpdateSource MicrosoftUpdateServer ``` @@ -43,19 +47,19 @@ This command updates the antimalware definitions from the Microsoft Update Serve ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. -The cmdlet immediately returns an object that represents the job and then displays the command prompt. -You can continue to work in the session while the job completes. -To manage the job, use the `*-Job` cmdlets. -To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. +The cmdlet immediately returns an object that represents the job and then displays the command prompt. +You can continue to work in the session while the job completes. +To manage the job, use the `*-Job` cmdlets. +To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. For more information about Windows PowerShell background jobs, see [about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -65,8 +69,8 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. +Runs the cmdlet in a remote session or on a remote computer. +Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. ```yaml @@ -89,7 +93,7 @@ The throttle limit applies only to the current cmdlet, not to the session or to ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -106,7 +110,7 @@ The acceptable values for this parameter are: - InternalDefinitionUpdateServer - MicrosoftUpdateServer -- MMPC +- MMPC - FileShares If you specify the InternalDefinitionUpdateServer setting, the service checks for updates on the Windows Software Update Services (WSUS) server. @@ -114,7 +118,7 @@ If you specify the InternalDefinitionUpdateServer setting, the service checks fo ```yaml Type: UpdateSource Parameter Sets: (All) -Aliases: +Aliases: Accepted values: InternalDefinitionUpdateServer, MicrosoftUpdateServer, MMPC, FileShares Required: False @@ -134,5 +138,3 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS - - From dc9cea6fd85acfdf9719bf19bb38337988753caf Mon Sep 17 00:00:00 2001 From: Chris Davis Date: Thu, 17 Oct 2024 19:29:24 -0700 Subject: [PATCH 80/98] Update Set-MpPreference.md --- .../defender/Set-MpPreference.md | 956 ++++++++++++++---- 1 file changed, 754 insertions(+), 202 deletions(-) diff --git a/docset/winserver2022-ps/defender/Set-MpPreference.md b/docset/winserver2022-ps/defender/Set-MpPreference.md index bd248dce4e..ca51171f3c 100644 --- a/docset/winserver2022-ps/defender/Set-MpPreference.md +++ b/docset/winserver2022-ps/defender/Set-MpPreference.md @@ -11,6 +11,7 @@ title: Set-MpPreference # Set-MpPreference ## SYNOPSIS + Configures preferences for Windows Defender scans and updates. ## SYNTAX @@ -21,6 +22,7 @@ Set-MpPreference [-AllowNetworkProtectionDownLevel ] [-AllowNetworkProtectionOnWinServer ] [-AllowSwitchToAsyncInspection ] + [-ApplyDisableNetworkScanningToIOAV ] [-AsJob] [-AttackSurfaceReductionOnlyExclusions ] [-AttackSurfaceReductionRules_Actions ] @@ -31,12 +33,12 @@ Set-MpPreference [-CloudExtendedTimeout ] [-ControlledFolderAccessAllowedApplications ] [-ControlledFolderAccessProtectedFolders ] - [-DefinitionUpdatesChannel ] + [-DefinitionUpdatesChannel ] [-DisableArchiveScanning ] [-DisableAutoExclusions ] [-DisableBehaviorMonitoring ] [-DisableBlockAtFirstSeen ] - [-DisableCacheMaintenance ] + [-DisableCacheMaintenance ] [-DisableCatchupFullScan ] [-DisableCatchupQuickScan ] [-DisableCpuThrottleOnIdleScans ] @@ -47,8 +49,8 @@ Set-MpPreference [-DisableFtpParsing ] [-DisableGradualRelease ] [-DisableHttpParsing ] - [-DisableIOAVProtection ] [-DisableInboundConnectionFiltering ] + [-DisableIOAVProtection ] [-DisableNetworkProtectionPerfTelemetry ] [-DisablePrivacyMode ] [-DisableRdpParsing ] @@ -62,30 +64,33 @@ Set-MpPreference [-DisableSshParsing ] [-DisableTlsParsing ] [-EnableControlledFolderAccess ] + [-EnableConvertWarnToBlock ] [-EnableDnsSinkhole ] [-EnableFileHashComputation ] [-EnableFullScanOnBatteryPower ] [-EnableLowCpuPriority ] [-EnableNetworkProtection ] + [-EnableUdpReceiveOffload ] + [-EnableUdpSegmentationOffload ] [-EngineUpdatesChannel ] [-ExclusionExtension ] [-ExclusionIpAddress ] [-ExclusionPath ] [-ExclusionProcess ] - [-ForceUseProxyOnly ] [-Force] + [-ForceUseProxyOnly ] [-HighThreatDefaultAction ] - [-IntelTDTEnabled ] + [-IntelTDTEnabled ] [-LowThreatDefaultAction ] [-MAPSReporting ] [-MeteredConnectionUpdates ] [-ModerateThreatDefaultAction ] [-OobeEnableRtpAndSigUpdate ] - [-PUAProtection ] [-PlatformUpdatesChannel ] [-ProxyBypass ] [-ProxyPacUrl ] [-ProxyServer ] + [-PUAProtection ] [-QuarantinePurgeItemsAfterDelay ] [-RandomizeScheduleTaskTimes ] [-RealTimeScanDirection ] @@ -101,7 +106,7 @@ Set-MpPreference [-ScanScheduleDay ] [-ScanScheduleOffset ] [-ScanScheduleQuickScanTime ] - [-ScanScheduleTime ] + [-ScanScheduleTime ] [-SchedulerRandomizationTime ] [-ServiceHealthReportInterval ] [-SevereThreatDefaultAction ] @@ -128,23 +133,25 @@ Set-MpPreference ``` ## DESCRIPTION + The **Set-MpPreference** cmdlet configures preferences for Windows Defender scans and updates. -You can modify exclusion file name extensions, paths, or processes, and specify the default action for high, moderate, and low threat levels. +You can modify exclusion file name extensions, paths, or processes, and specify the default action +for high, moderate, and low threat levels. -**REMEDIATION VALUES** +**REMEDIATION VALUES**: The following table provides remediation action values for detected threats at low, medium, high, and severe alert levels. -|Value |Action | -|------|-------------------------------------------------------------------------| -|1 |Clean the detected threat. | -|2 |Quarantine the detected threat. | -|3 |Remove the detected threat. | -|6 |Allow the detected threat. | -|8 |Allow the user to determine the action to take with the detected threat. | -|9 |Don't take any action. | -|10 |Block the detected threat. | -|0 | (NULL)|Apply action based on the Security Intelligence Update (SIU). This is the default value. | +|Value|Action| +|---|---| +|0 (NULL)|Apply action based on the Security Intelligence Update (SIU). This is the default value.| +|1|Clean the detected threat.| +|2|Quarantine the detected threat.| +|3|Remove the detected threat.| +|6|Allow the detected threat.| +|8|Allow the user to determine the action to take with the detected threat.| +|9|Don't take any action.| +|10|Block the detected threat.| ## EXAMPLES @@ -167,7 +174,11 @@ This command configures preferences to check for definition updates 120 minutes ## PARAMETERS ### -AllowDatagramProcessingOnWinServer -Specifies whether to disable inspection of UDP connections on Windows Server. + +Specifies whether to disable the inspection of UDP connections on Windows Server. Valid values are: + +- $true: The inspection of UDP connections is enabled. +- $false: The inspection of UDP connections is disabled. ```yaml Type: Boolean @@ -182,7 +193,13 @@ Accept wildcard characters: False ``` ### -AllowNetworkProtectionDownLevel -Specifies whether to allow network protection to be set to Enabled or Audit Mode on Windows versions before 1709. + +Specifies whether to allow network protection to be set to Enabled or Audit Mode on Windows versions +before 1709. Valid values are: + +- $true: Allow network protection to be set to Enabled or Audit Mode on Windows v1709 or earlier. +- $false: Don't allow network protection to be set to Enabled or Audit Mode on Windows v1709 or +earlier. ```yaml Type: Boolean @@ -197,7 +214,12 @@ Accept wildcard characters: False ``` ### -AllowNetworkProtectionOnWinServer + Specifies whether to allow network protection to be set to Enabled or Audit Mode for Windows Server. +Valid values are: + +- $true: Allow network protection to be set to Enabled or Audit Mode on Windows Server. +- $false: Don't allow network protection to be set to Enabled or Audit Mode on Windows Server. ```yaml Type: Boolean @@ -213,7 +235,13 @@ Accept wildcard characters: False ### -AllowSwitchToAsyncInspection -Specifies whether to enable a performance optimization that allows synchronously inspected network flows to switch to async inspection once they have been checked and validated. +Specifies whether to enable a performance optimization that allows synchronously inspected network +flows to switch to async inspection once they have been checked and validated. Valid values are: + +- $true: Allow synchronously inspected network flows to switch to async inspection once they have +been checked and validated. +- $false: Don't allow synchronously inspected network flows to switch to async inspection once they +have been checked and validated. ```yaml Type: Boolean @@ -228,14 +256,19 @@ Accept wildcard characters: False ``` ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. -The cmdlet immediately returns an object that represents the job and then displays the command prompt. +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +The cmdlet immediately returns an object that represents the job and then displays the command +prompt. You can continue to work in the session while the job completes. To manage the job, use the `*-Job` cmdlets. -To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) cmdlet. +To get the job results, use the [Receive-Job](https://go.microsoft.com/fwlink/?LinkID=113372) +cmdlet. -For more information about Windows PowerShell background jobs, see [about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). +For more information about Windows PowerShell background jobs, see +[about_Jobs](https://go.microsoft.com/fwlink/?LinkID=113251). ```yaml Type: SwitchParameter @@ -250,9 +283,26 @@ Accept wildcard characters: False ``` ### -AttackSurfaceReductionOnlyExclusions -Specifies the files and paths to exclude from Attack Surface Reduction (ASR) rules. Specify the folders or files and resources that should be excluded from ASR rules. Enter a folder path or a fully qualified resource name. For example, ""C:\Windows"" will exclude all files in that directory. ""C:\Windows\App.exe"" will exclude only that specific file in that specific folder. -For more information about excluding files and folders from [ASR rules](/windows/security/threat-protection/microsoft-defender-atp/enable-attack-surface-reduction#exclude-files-and-folders-from-asr-rules). +Specifies the folders or files to exclude from Attack Surface Reduction (ASR) rules. Enter a folder +path or a fully qualified resource name. For example: + +- `"C:\Windows"` excludes all files in that folder. +- `"C:\Windows\App.exe"` excludes only that specific file in that specific folder. + +To replace all existing values with the values you specify, use the following syntax: `"Value1","Value2",..."ValueN"`. + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -AttackSurfaceReductionOnlyExclusions "Value1","Value2",..."ValueN"` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -AttackSurfaceReductionOnlyExclusions "Value1","Value2",..."ValueN"` + +To empty the list, use the value $null for this parameter. + +For more information, see [Exclude files and folders from attack surface reduction rules](/defender-endpoint/enable-attack-surface-reduction#exclude-files-and-folders-from-attack-surface-reduction-rules). ```yaml Type: String[] @@ -267,8 +317,37 @@ Accept wildcard characters: False ``` ### -AttackSurfaceReductionRules_Actions -Specifies the states of attack surface reduction rules specified by using the **AttackSurfaceReductionRules_Ids** parameter. -If you add multiple rules as a comma-separated list, specify their states separately as a comma-separated list. + +Use the **AttackSurfaceReductionRules_Ids** and **AttackSurfaceReductionRules_Actions** parameters +together in the same command to specify the states of attack surface reduction (ASR) rules. + +- The **AttackSurfaceReductionRules_Ids** parameter identifies the ASR rule by GUID value. For +example, the GUID value of the "Block Office communication application from creating child +processes" ASR rule is `26190899-1602-49e8-8b27-eb1d0a1ce869`. For more information, see +[ASR rule to GUID matrix](/defender-endpoint/attack-surface-reduction-rules-reference#asr-rule-to-guid-matrix). +- The **AttackSurfaceReductionRules_Actions** parameter identifies ASR rule action: + + • 0: Deactivated + + • 1: Activated + + • 2: Audit mode + + • 6: Warning + +To replace all existing values with the values you specify, use the following syntax: + +`Set-MpPreference -AttackSurfaceReductionRules_Ids Rule1,Rule2,...RuleN -AttackSurfaceReductionRules_Actions Action1,Action2,...ActionN` + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -AttackSurfaceReductionRules_Ids Rule1,Rule2,...RuleN -AttackSurfaceReductionRules_Actions Action1,Action2,...ActionN` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -AttackSurfaceReductionRules_Ids Rule1,Rule2,...RuleN -AttackSurfaceReductionRules_Actions Action1,Action2,...ActionN` + +To empty the list, use the value $null for this parameter. ```yaml Type: ASRRuleActionType[] @@ -283,8 +362,40 @@ Accept wildcard characters: False ``` ### -AttackSurfaceReductionRules_Ids -Specifies the states of attack surface reduction rules specified by using the **AttackSurfaceReductionRules_Ids** parameter. -If you add multiple rules as a comma-separated list, specify their states separately as a comma-separated list. + +Use the **AttackSurfaceReductionRules_Ids** and **AttackSurfaceReductionRules_Actions** parameters +together in the same command to specify the states of attack surface reduction (ASR) rules. + +- The **AttackSurfaceReductionRules_Ids** parameter identifies the ASR rule by GUID value. For +example, the GUID value of the "Block Office communication application from creating child +processes" ASR rule is `26190899-1602-49e8-8b27-eb1d0a1ce869`. For more information, see +[ASR rule to GUID matrix](/defender-endpoint/attack-surface-reduction-rules-reference#asr-rule-to-guid-matrix). +- The **AttackSurfaceReductionRules_Actions** parameter identifies ASR rule action for the +- corresponding ASR rule. Valid values are: + + • 0 or Disabled + + • 1 or Enabled + + • 2 or AuditMode + + • 5 or NotConfigured + + • 6 or Warn + +To replace all existing values with the values you specify, use the following syntax: + +`Set-MpPreference -AttackSurfaceReductionRules_Ids Rule1,Rule2,...RuleN -AttackSurfaceReductionRules_Actions Action1,Action2,...ActionN` + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -AttackSurfaceReductionRules_Ids Rule1,Rule2,...RuleN -AttackSurfaceReductionRules_Actions Action1,Action2,...ActionN` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -AttackSurfaceReductionRules_Ids Rule1,Rule2,...RuleN -AttackSurfaceReductionRules_Actions Action1,Action2,...ActionN` + +To empty the list, use the value $null for this parameter. ```yaml Type: String[] @@ -299,10 +410,15 @@ Accept wildcard characters: False ``` ### -CheckForSignaturesBeforeRunningScan -Indicates whether to check for new virus and spyware definitions before Windows Defender runs a scan. -If you specify a value of $True, Windows Defender checks for new definitions. -If you specify $False or don't specify a value, the scan begins with existing definitions. -This setting applies to scheduled scans, but it has no effect on scans initiated manually from the user interface or on scans started from the command line using "mpcmdrun -Scan". + +Indicates whether to check for new virus and spyware definitions before Windows Defender runs a +scan. Valid values are: + +- $true: Windows Defender checks for new definitions before running a scan. +- $false: The scan begins with the existing definitions. This is the default value. + +This parameter applies to scheduled scans, but it has no effect on scans initiated manually from the +user interface from the command line using `mpcmdrun -Scan`. ```yaml Type: Boolean @@ -317,9 +433,16 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer that were created by the +[New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) cmdlet and specified by the +[Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. For example: + +`Set-MpPreference -CimSession (Get-CimSession -ID 1),(Get-CimSession -ID 2),...(Get-CimSession -ID N)` + +or + +`Set-MpPreference -CimSession (Get-CimSession -ID Server1),(Get-CimSession -ID Server2),...(Get-CimSession -ID ServerN)` ```yaml Type: CimSession[] @@ -334,8 +457,15 @@ Accept wildcard characters: False ``` ### -CloudBlockLevel -Specifies a cloud block level. -This value determines how aggressive Microsoft Defender Antivirus is in blocking and scanning suspicious files. + +Specifies the cloud block level that determines how aggressively Microsoft Defender Antivirus scans +and blocks suspicious files. Valid values are: + +- 0 or Default +- 1 or Moderate +- 2 or High +- 4 or HighPlus +- 6 or ZeroTolerance ```yaml Type: CloudBlockLevelType @@ -350,7 +480,11 @@ Accept wildcard characters: False ``` ### -CloudExtendedTimeout -Specifies the amount of extended time to block a suspicious file and scan it in the cloud. Standard time is 10 seconds. Extend by up to 50 seconds. + +Specifies the amount of extended time in seconds to block a suspicious file and scan it in the +cloud. Without using this parameter, the standard time is 10 seconds. + +Valid values for this parameter are are from 0 to 50 additional seconds. ```yaml Type: UInt32 @@ -365,7 +499,23 @@ Accept wildcard characters: False ``` ### -ControlledFolderAccessAllowedApplications -Specifies applications that can make changes in controlled folders. + +Specifies the path and filename of applications that are allowed to make changes in controlled +folders. You can use absolute folder paths (for example `C;\Windows\...` or environment variables +(for example, `%appdata%...`) for path names. + +To replace all existing values with the values you specify, use the following syntax: +`"PathAndFileName1","PathAndFileName2",..."PathAndFileNameN"`. + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -ControlledFolderAccessAllowedApplications "PathAndFileName1","PathAndFileName2",..."PathAndFileNameN"` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -ControlledFolderAccessAllowedApplications "PathAndFileName1","PathAndFileName2",..."PathAndFileNameN"` + +To empty the list, use the value $null for this parameter. ```yaml Type: String[] @@ -380,7 +530,23 @@ Accept wildcard characters: False ``` ### -ControlledFolderAccessProtectedFolders -Specifies more folders to protect. + +Specifies additional folders to protect as controlled access folders. You can use absolute folder +paths (for example `C;\Windows\...` or environment variables (for example, `%appdata%...`) for path +names. + +To replace all existing values with the values you specify, use the following syntax: +`"Path1","Path2"..."PathN"`. + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -ControlledFolderAccessAllowedApplications "Path1","Path2",..."PathN"` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -ControlledFolderAccessAllowedApplications "Path1","Path2",..."PathN"` + +To empty the list, use the value $null for this parameter. ```yaml Type: String[] @@ -394,9 +560,40 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -DefinitionUpdatesChannel + +Specifies when devices receive daily Microsoft Defender definition updates during the monthly gradual +rollout. Valid values are: + +- NotConfigured: Devices stay up to date automatically during the gradual release cycle. This value +is suitable for most devices. +- Staged: Devices are offered updates after the monthly gradual release cycle. This value is +suggested for a small, representative part of your production population, around 10 percent. +- Broad: Devices are offered updates only after the gradual release cycle completes. This value is +suggested for a broad set of devices in your production population, from 10 to 100 percent. + +This parameter replaces the **SignaturesUpdatesChannel** parameter. + +```yaml +Type: DefinitionUpdatesChannelType +Parameter Sets: (All) +Aliases: duc +Accepted values: NotConfigured, Staged, Broad + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -DisableArchiveScanning -Indicates whether to scan archive files, such as .zip and .cab files, for malicious and unwanted software. -If you specify a value of $False or do not specify a value, Windows Defender scans archive files. + +Indicates whether to scan archive files, such as .zip and .cab files, for malicious and unwanted +software. Valid values are: + +- $true: Windows Defender doesn't scan archive file. +- $false: Windows Defender scans archive files. This is the default value. ```yaml Type: Boolean @@ -411,8 +608,11 @@ Accept wildcard characters: False ``` ### -DisableAutoExclusions -Indicates whether to disable the Automatic Exclusions feature for the server. -If you specify a value of $False or do not specify a value, Windows Defender enables the Automatic Exclusions feature for the server. + +Indicates whether to disable the Automatic Exclusions feature for the server. Valid values are: + +- $true: Windows Defender disables the Automatic Exclusions feature for the server. +- $false: Windows Defender enables the Automatic Exclusions feature for the server. This is the default value. ```yaml Type: Boolean @@ -427,8 +627,11 @@ Accept wildcard characters: False ``` ### -DisableBehaviorMonitoring -Indicates whether to enable behavior monitoring. -If you specify a value of $False or do not specify a value, Windows Defender enables behavior monitoring. + +Indicates whether to enable behavior monitoring. Valid values are: + +- $true: Windows Defender disables behavior monitoring. +- $false: Windows Defender enables behavior monitoring. This is the default value. ```yaml Type: Boolean @@ -443,8 +646,11 @@ Accept wildcard characters: False ``` ### -DisableBlockAtFirstSeen -Indicates whether to enable block at first seen. -If you specify a value of $False or do not specify a value, Windows Defender enables block at first seen. + +Indicates whether to enable block at first seen. Valid values are: + +- $true: Windows Defender disables block at first seen. +- $false: Windows Defender enables block at first seen. This is the default value. ```yaml Type: Boolean @@ -459,7 +665,11 @@ Accept wildcard characters: False ``` ### -DisableCacheMaintenance -Defines whether the cache maintenance idle task will perform the cache maintenance or not. Allowed values are 1 - cache maintenance is disabled, and 0 - cache maintenance is enabled (default). + +Defines whether the cache maintenance idle task performs cache maintenance. Valid values are: + +- $true: Cache maintenance is disabled. +- $false: Cache maintenance is enabled. This is the default value. ```yaml Type: Boolean @@ -474,9 +684,13 @@ Accept wildcard characters: False ``` ### -DisableCatchupFullScan -Indicates whether Windows Defender runs catch-up scans for scheduled full scans. -A computer can miss a scheduled scan, usually because the computer is turned off at the scheduled time. -If you specify a value of $False, after the computer misses two scheduled full scans, Windows Defender runs a catch-up scan the next time someone logs on to the computer. If you specify a value of $True, the computer does not run catch-up scans for scheduled full scans. + +Indicates whether Windows Defender runs catch-up scans for missed scheduled full scans. Valid values +are: + +- $true: Windows Defender doesn't run catch-up scans for missed scheduled full scans. +- $false: After two missed scheduled full scans, Windows Defender runs a catch-up scan. +the next time someone signs in to the computer. ```yaml Type: Boolean @@ -491,9 +705,13 @@ Accept wildcard characters: False ``` ### -DisableCatchupQuickScan -Indicates whether Windows Defender runs catch-up scans for scheduled quick scans. -A computer can miss a scheduled scan, usually because the computer is off at the scheduled time. -If you specify a value of $False, after the computer misses two scheduled quick scans, Windows Defender runs a catch-up scan the next time someone logs onto the computer. If you specify a value of $True, the computer does not run catch-up scans for scheduled quick scans. + +Indicates whether Windows Defender runs catch-up scans for missed scheduled quick scans. Valid values +are: + +$true: Windows Defender doesn't run catch-up scans for missed scheduled quick scans. +$false: After two missed scheduled quick scans, Windows Defender runs a catch-up scan +the next time someone signs in to the computer. ```yaml Type: Boolean @@ -508,7 +726,15 @@ Accept wildcard characters: False ``` ### -DisableCpuThrottleOnIdleScans -Indicates whether the CPU will be throttled for scheduled scans while the device is idle. This parameter is enabled by default, thus ensuring that the CPU won't be throttled for scheduled scans performed when the device is idle, regardless of what **ScanAvgCPULoadFactor** is set to. For all other scheduled scans, this flag does not have any impact and normal throttling will occur. + +Indicates whether the CPU is throttled for scheduled scans while the device is idle. Valid +values are: + +- $true: The CPU is throttled for scheduled scans. +- $false: The CPU isn't throttled for scheduled scans, regardless of the value of the +**ScanAvgCPULoadFactor** parameter. + +This parameter doesn't affect other types scheduled scans. Normal CPU throttling occurs on other types of scheduled scans. ```yaml Type: Boolean @@ -522,7 +748,11 @@ Accept wildcard characters: False ``` ### -DisableDatagramProcessing -Specifies whether to disable inspection of UDP connections. + +Specifies whether to disable inspection of UDP connections. Valid values are: + +- $true: Inspection of UDP connections is disabled. +- $false: Inspection of UDP connections is enabled. ```yaml Type: Boolean @@ -537,7 +767,17 @@ Accept wildcard characters: False ``` ### -DisableDnsOverTcpParsing -Specifies whether to disable inspection of DNS traffic that occurs over a TCP channel. + +Specifies whether to disable inspection of DNS traffic that occurs over a TCP. Valid values +are: + +- $true: Inspection of DNS traffic over TCP is disabled. +- $false: Inspection of DNS traffic over TCP is enabled. + +Network protection needs to inspect DNS traffic over TCP in the following scenarios: + +- To provide metadata for anti-malware behavior monitoring. +- To allow for a DNS sinkhole if the **EnableDnsSinkhole** parameter is set to the value $true. ```yaml Type: Boolean @@ -552,8 +792,12 @@ Accept wildcard characters: False ``` ### -DisableDnsParsing -Specifies whether to disable inspection of DNS traffic that occurs over a UDP channel. -Network protection inspects DNS traffic that occurs over a TCP channel to provide metadata for anti-malware behavior monitoring or to allow for DNS sink holing if the "-EnableDnsSinkhole" configuration is set. This can be disabled by setting this value to "$true". + +Specifies whether to disable inspection of DNS traffic that occurs over a UDP. Valid values +are: + +- $true: Inspection of DNS traffic over UDP is disabled. +- $false: Inspection of DNS traffic over UDP channels is enabled. ```yaml Type: Boolean @@ -568,7 +812,11 @@ Accept wildcard characters: False ``` ### -DisableFtpParsing -Specifies whether to disable FTP parsing for network protection. + +Specifies whether to disable FTP parsing for network protection. Valid values are: + +- $true: FTP parsing for network protection is disabled. +- $false: FTP parsing for network protection is enabled. ```yaml Type: Boolean @@ -583,9 +831,20 @@ Accept wildcard characters: False ``` ### -DisableEmailScanning -Indicates whether Windows Defender parses the mailbox and mail files, according to their specific format, in order to analyze mail bodies and attachments. -Windows Defender supports several formats, including .pst, .dbx, .mbx, .mime, and .binhex. -If you specify a value of $False or do not specify a value, Windows Defender performs email scanning. If you specify a value of $True, Windows Defender does not perform email scanning. + +Indicates whether Windows Defender parses mailbox and email message files to analyze message bodies +and email attachments. Valid values are: + +- $true: Windows Defender doesn't scan mailbox and email message files. +- $false: Windows Defender scans mailbox and email message files. This is the default value. + + Windows Defender supports several mailbox and email message file formats. For example: + +- .binhex +- .dbx +- .mbx +- .mime +- .pst ```yaml Type: Boolean @@ -600,15 +859,18 @@ Accept wildcard characters: False ``` ### -DisableGradualRelease -Specifies whether to disable gradual rollout of monthly and daily Windows Defender updates. -If you enable this option, devices are offered all updates after the gradual release cycle finishes. -Consider this option for datacenter computers that only receive limited updates. -This setting applies to both monthly and daily updates. -It overrides configured channel selections for platform and engine updates. +Specifies whether to disable gradual rollout of monthly and daily Windows Defender updates. Valid +values are: + +- $true: Devices are offered all updates after the gradual release cycle finishes. Consider this +option for datacenter computers that receive only limited updates. +- $false: This is the default value. Devices remain in the Current Channel unless otherwise +specified in specific channels. The device stays up to date automatically during the gradual release +cycle, which is suitable for most devices. -If you disable or do not configure this policy, the device remains in Current Channel (Default) unless specified otherwise in specific channels. -The device stays up to date automatically during the gradual release cycle, which is suitable for most devices. +This setting applies to both monthly and daily updates. This setting overrides configured channel +selections for platform and engine updates. This policy is available starting with platform version 4.18.2106.5 and later. @@ -625,8 +887,14 @@ Accept wildcard characters: False ``` ### -DisableHttpParsing -Specifies whether disable inspection of HTTP traffic. -If **EnableNetworkProtection** has the value `Enabled`, HTTP connections to malicious websites can be blocked. + +Specifies whether to disable inspection of HTTP traffic. Valid values are: + +- $true: Inspection of HTTP traffic is disabled. +- $false: Inspection of HTTP traffic is enabled. + +If the value of the **EnableNetworkProtection** parameter is `Enabled`, HTTP connections to +malicious websites can be blocked. ```yaml Type: Boolean @@ -641,8 +909,11 @@ Accept wildcard characters: False ``` ### -DisableInboundConnectionFiltering -Specifies whether to inspect only outbound connections. -By default, Network Protection inspects both inbound and outbound connections. + +Specifies whether Network Protection inspects only outbound connections. Valid values are: + +- $true: Network Protection inspects only outbound connections. +- $false: Network Protection inspects inbound and outbound connections. This is the default value. ```yaml Type: Boolean @@ -657,8 +928,11 @@ Accept wildcard characters: False ``` ### -DisableIOAVProtection -Indicates whether Windows Defender scans all downloaded files and attachments. -If you specify a value of $False or do not specify a value, scanning downloaded files and attachments is enabled. + +Indicates whether Windows Defender scans all downloaded files and attachments. Valid values are: + +- $true: Windows Defender doesn't scan all downloaded files and attachments. +- $false: Windows Defender scans all downloaded files and attachments. This is the default value. ```yaml Type: Boolean @@ -673,11 +947,12 @@ Accept wildcard characters: False ``` ### -DisableNetworkProtectionPerfTelemetry + This setting disables the gathering and sending of performance telemetry from network protection. -The accepted values are 0 and 1. +Valid values are: -- 1- Network protection telemetry is disabled. -- 0 (Default) - Network protection telemetry is enabled. +- $true: Network protection telemetry is disabled. +- $false: Network protection telemetry is enabled. This is the default value. ```yaml Type: Boolean @@ -692,7 +967,11 @@ Accept wildcard characters: False ``` ### -DisablePrivacyMode -**This is a legacy setting that does not have any affect on current platforms**. The intent of this parameter was to disable privacy mode, which prevented users, other than administrators, from displaying threat history. When this parameter was in use, if you specified a value of $False or did not specify a value, privacy mode was enabled. + +**Note**: This parameter is a legacy setting that doesn't affect current platforms. + +The intent of this parameter was to disable privacy mode, which prevented users (not admins) from +displaying the threat history. ```yaml Type: Boolean @@ -707,7 +986,12 @@ Accept wildcard characters: False ``` ### -DisableRdpParsing -This setting controls whether to parse RDP traffic to look for malicious attacks using the RDP protocol. + +This setting controls whether to parse RDP traffic to look for malicious attacks using the RDP +protocol. Valid values are: + +- $true: Windows Defender doesn't scan RDP traffic. +- $false: Windows Defender scans RDP traffic. ```yaml Type: Boolean @@ -722,9 +1006,11 @@ Accept wildcard characters: False ``` ### -DisableRealtimeMonitoring -Indicates whether to use real-time protection. -If you specify a value of $False or do not specify a value, Windows Defender uses real-time protection. -We recommend that you enable Windows Defender to use real-time protection. + +Indicates whether to use real-time protection. Valid values are: + +- $true: Windows Defender doesn't use real-time protection. +- $false: Windows Defender uses real-time protection. This is the default and recommended value. ```yaml Type: Boolean @@ -739,8 +1025,14 @@ Accept wildcard characters: False ``` ### -DisableRemovableDriveScanning -Indicates whether to scan for malicious and unwanted software in removable drives, such as flash drives, during a full scan. -If you specify a value of $False or do not specify a value, Windows Defender scans removable drives during any type of scan. If you specify a value of $True, Windows Defender does not scan removable drives during a full scan. Windows Defender can still scan removable drives during quick scans or custom scans. + +Indicates whether to scan for malicious and unwanted software in removable drives, such as flash +drives, during a full scan. Valid values are: + +- $true: Windows Defender doesn't scan removable drives during a full scan, but can still scan +removable drives during quick scans or custom scans. +- $false: Windows Defender scans removable drives during any type of scan. This is the default +value. ```yaml Type: Boolean @@ -755,8 +1047,11 @@ Accept wildcard characters: False ``` ### -DisableRestorePoint -Indicates whether to disable scanning of restore points. -If you specify a value of $False or do not specify a value, Windows Defender restore point is enabled. + +Indicates whether to disable scanning of restore points. Valid values are: + +- $true: Windows Defender restore point scanning is disabled. +- $false: Windows Defender restore point scanning is enabled. This is the default value. ```yaml Type: Boolean @@ -771,7 +1066,11 @@ Accept wildcard characters: False ``` ### -DisableScanningMappedNetworkDrivesForFullScan -Indicates whether to scan mapped network drives. If you specify a value of $False or do not specify a value, Windows Defender scans mapped network drives. If you specify a value of $True, Windows Defender does not scan mapped network drives. + +Indicates whether to scan mapped network drives. Valid values are: + +- $true: Windows Defender doesn't scan mapped network drives. +- $false: Windows Defender scans mapped network drives. This is the default value. ```yaml Type: Boolean @@ -786,7 +1085,11 @@ Accept wildcard characters: False ``` ### -DisableScanningNetworkFiles -Indicates whether to scan for network files. If you specify a value of $False or do not specify a value, Windows Defender scans network files. If you specify a value of $True, Windows Defender does not scan network files. + +Indicates whether to scan network files. Valid values are: + +- $true: Windows Defender doesn't scan network files. +- $false: Windows Defender scans network files. This is the default value. ```yaml Type: Boolean @@ -801,8 +1104,11 @@ Accept wildcard characters: False ``` ### -DisableScriptScanning -Specifies whether to disable the scanning of scripts during malware scans. -If you specify a value of $False or do not specify a value, Windows Defender does not scan scripts. + +Specifies whether to disable the scanning of scripts during malware scans. Valid values are: + +- $true: Windows Defender doesn't scan scripts. +- $false: Windows Defender scans scripts. This is the default value. ```yaml Type: Boolean @@ -817,8 +1123,11 @@ Accept wildcard characters: False ``` ### -DisableSshParsing -Specifies whether to disable inspection of SSH traffic. -By default, Network Protection inspects SSH traffic. + +Specifies whether to disable the inspection of SSH traffic. Valid values are: + +- $true: Network Protection doesn't inspect SSH traffic. +- $false: Network Protection inspects SSH traffic. This is the default value. ```yaml Type: Boolean @@ -833,11 +1142,11 @@ Accept wildcard characters: False ``` ### -DisableSmtpParsing -This setting disables SMTP parsing for network protection. -The accepted values are 0 and 1. -- 1 - SMTP parsing is disabled. -- 0 (Default) - SMTP parsing is enabled. +This setting disables SMTP parsing by Network Protection. Valid values are: + +- $true: SMTP parsing is disabled. +- $false: SMTP parsing is enabled. This is the default value ```yaml Type: Boolean @@ -852,8 +1161,17 @@ Accept wildcard characters: False ``` ### -DisableTlsParsing -Specifies whether to disable inspection of TLS traffic. -Network protection inspects TLS traffic (also known as HTTPS traffic) to see if a connection is being made to a malicious website, and to provide metadata to behavior monitoring. TLS connections to malicious websites can also be blocked if "-EnableNetworkProtection" is set to enabled. HTTP inspection can be disabled by setting this value to "$true". By default, network protection inspects TLS traffic. + +Specifies whether to disable the inspection of TLS traffic. Valid values are: + +- $true: Network Protection doesn't inspect TLS traffic. +- $false: Network Protection inspects TLS traffic. This is the default value. + +Network protection inspects TLS traffic (also known as HTTPS traffic) to see if a connection is +being made to a malicious website, and to provide metadata to behavior monitoring. + +TLS connections to malicious websites can also be blocked if the value of the +**EnableNetworkProtection** parameter is `Enabled`. ```yaml Type: Boolean @@ -868,7 +1186,16 @@ Accept wildcard characters: False ``` ### -EnableControlledFolderAccess -Specifies the state for the controlled folder access feature. Valid values are Disabled, Enabled, and Audit Mode. + + + +Specifies the state for the controlled folder access feature. Valid values are: + +- Disabled +- Enabled +- AuditMode +- BlockDiskModificationOnly +- AuditDiskModificationOnly ```yaml Type: ControlledFolderAccessType @@ -883,10 +1210,15 @@ Accept wildcard characters: False ``` ### -EnableConvertWarnToBlock -This setting controls whether network protection blocks network traffic instead of displaying a warning. This setting can be manually controlled by setting it to `1` to enable and `0` to disable. + +This setting controls whether network protection blocks network traffic instead of displaying a +warning. Valid values are: + +- $true: Network Protection blocks network traffic instead of displaying a warning. +- $false: Network Protection displaying a warning. ```yaml -Type: ASRRuleActionType +Type: Boolean Parameter Sets: (All) Aliases: @@ -897,9 +1229,15 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -EnableDnsSinkhole (Deprecated) -Specifies whether to examine DNS traffic to detect and sinkhole DNS exfiltration attempts and other DNS based malicious attacks. -Network protection can inspect the DNS traffic of a machine and, in conjunction with behavior monitoring, detect and sink hole DNS exfiltration attempts, and other DNS based malicious attacks. Set this configuration to "$true" to enable this feature. +### -EnableDnsSinkhole + +Specifies whether to examine DNS traffic to detect and sinkhole DNS exfiltration attempts and other +DNS based malicious attacks. Valid values are: + +- $true: DNS sinkhole is enabled. Network protection can inspect the DNS traffic of a machine and, +in conjunction with behavior monitoring, detect and sinkhole DNS exfiltration attempts, and other +DNS based malicious attacks. +- $false: DNS sinkhole is disabled. ```yaml Type: Boolean @@ -914,8 +1252,11 @@ Accept wildcard characters: False ``` ### -EnableFileHashComputation -Specifies whether to enable file hash computation. -When this feature is enabled, Windows Defender computes hashes for files it scans. + +Specifies whether to enable file hash computation. Valid values are: + +- $true: Windows Defender computes hashes for scanned files. +- $false: Windows Defender doesn't compute hashes for scanned files. ```yaml Type: Boolean @@ -930,7 +1271,11 @@ Accept wildcard characters: False ``` ### -EnableFullScanOnBatteryPower -Specifies whether Windows Defender does a full scan while on battery power. + +Specifies whether Windows Defender does full scans while on battery power. Valid values are: + +- $true: Windows Defender does full scans while on battery power. +- $false: Windows Defender doesn't do full scans while on battery power. ```yaml Type: Boolean @@ -945,7 +1290,11 @@ Accept wildcard characters: False ``` ### -EnableLowCpuPriority -Specifies whether Windows Defender uses low CPU priority for scheduled scans. + +Specifies whether Windows Defender uses low CPU priority for scheduled scans. Valid values are: + +- $true: Windows Defender uses low CPU priority for scheduled scans. +- $false: Windows Defender doesn't use low CPU priority for scheduled scans. ```yaml Type: Boolean @@ -960,8 +1309,17 @@ Accept wildcard characters: False ``` ### -EnableNetworkProtection -Specifies how the network protection service handles web-based malicious threats, including phishing and malware. -Possible values are Disabled, Enabled, and AuditMode. + + + +Specifies how the network protection service handles web-based malicious threats, including phishing +and malware. Valid values are: + +- Disabled +- Enabled +- AuditMode +- NotConfigured +- Warn ```yaml Type: ASRRuleActionType @@ -975,11 +1333,19 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### Enable UdpReceiveOffload: -Specifies whether UDP receive offload support in Network Protection is enabled, resulting in potentially higher UDP bandwidth in the inbound direction. Starting with platform version `4.18.24030`, Microsoft will gradually move this support default from disabled to enabled. This setting can be manually controlled by setting it to `1` to enable and `0` to disable. +### -EnableUdpReceiveOffload + +Specifies whether UDP receive offload support in Network Protection is enabled, resulting in +potentially higher inbound UDP bandwidth. Valid values are: + +- $true: UDP receive offload support in Network Protection is enabled. +- $false: UDP receive offload support in Network Protection is disabled. + +Starting with platform version `4.18.24030`, Microsoft will gradually move the default value from +disabled to enabled. ```yaml -Type: ASRRuleActionType +Type: Boolean Parameter Sets: (All) Aliases: @@ -990,11 +1356,19 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### Enable UdpSegmentationOffload: -Specifies whether UDP segmentation offload support in Network Protection is enabled, resulting in potentially higher UDP bandwidth in the outbound direction. Starting with platform version `4.18.24030`, Microsoft will gradually move this support default from disabled to enabled. This setting can be manually controlled by setting it to `1` to enable and `0` to disable. +### -EnableUdpSegmentationOffload + +Specifies whether UDP segmentation offload support in Network Protection is enabled, resulting in +potentially higher outbound UDP bandwidth in the outbound direction. Valid values are: + +- $true: UDP segmentation offload support in Network Protection is enabled. +- $false: UDP segmentation offload support in Network Protection is disabled. + +Starting with platform version `4.18.24030`, Microsoft will gradually move the default value from +disabled to enabled. ```yaml -Type: ASRRuleActionType +Type: Boolean Parameter Sets: (All) Aliases: @@ -1006,20 +1380,28 @@ Accept wildcard characters: False ``` ### -EngineUpdatesChannel -Specifies when devices receive Microsoft Defender engine updates during the monthly gradual rollout. -Valid values are: +Specifies when devices receive Microsoft Defender engine updates during the monthly gradual +rollout. Valid values are: -- NotConfigured. Devices stay up to date automatically during the gradual release cycle. This value is suitable for most devices. -- Beta. Devices are the first to receive new updates. Select Beta Channel to participate in identifying and reporting issues to Microsoft. Devices in the Windows Insider Program are subscribed to this channel by default. This value is for use in manual test environments only and a limited number of devices. -- Broad. Devices are offered updates only after the gradual release cycle completes. This value is suggested for a broad set of devices in your production population, from 10 to 100 percent. -- Preview. Devices are offered updates earliest during the monthly gradual release cycle. This value is suggested for pre-production or validation environments. -- Staged. Devices are offered updates after the monthly gradual release cycle. This value is suggested for a small, representative part of your production population, around 10 percent. +- 0 or NotConfigured: Devices stay up to date automatically during the gradual release cycle. This +value is suitable for most devices. +- 2 or Beta: Devices are the first to receive new updates. Select Beta Channel to participate in +identifying and reporting issues to Microsoft. Devices in the Windows Insider Program are +subscribed to this channel by default. This value is for use in manual test environments only and a +limited number of devices. +- 3 or Preview: Devices are offered updates earliest during the monthly gradual release cycle. This +value is suggested for pre-production or validation environments. +- 4 or Staged: Devices are offered updates after the monthly gradual release cycle. This value is +suggested for a small, representative part of your production population, around 10 percent. +- 5 or Broad: Devices are offered updates only after the gradual release cycle completes. This +value is suggested for a broad set of devices in your production population, from 10 to 100 percent. +- 6 or Delayed ```yaml Type: UpdatesChannelType Parameter Sets: (All) -Aliases: erelr +Aliases: euc Required: False Position: Named @@ -1029,7 +1411,21 @@ Accept wildcard characters: False ``` ### -ExclusionExtension -Specifies an array of file name extensions, such as obj or lib, to exclude from scheduled, custom, and real-time scanning. + +Specifies the file name extensions, such as `obj` and `lib`, to exclude from scheduled, custom, +and real-time scanning. + +To replace all existing values with the values you specify, use the following syntax: `"Extension1","Extension2",..."ExtensionN"`. + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -ExclusionExtension "Extension1","Extension2"..."ExtensionN"` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -ExclusionExtension "Extension1","Extension2"..."ExtensionN"` + +To empty the list, use the value $null for this parameter. ```yaml Type: String[] @@ -1044,7 +1440,20 @@ Accept wildcard characters: False ``` ### -ExclusionIpAddress -Specifies an array of IP addresses to exclude from scheduled and real-time scanning. + +Specifies the IP addresses to exclude from scheduled and real-time scanning. + +To replace all existing values with the values you specify, use the following syntax: `"IPAddress1","IPAddress2",..."IPAddresseN"`. + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -ExclusionIpAddress "IPAddress1","IPAddress",..."IPAddressN"` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -ExclusionIpAddress "IPAddress1","IPAddress2",..."IPAddressN"` + +To empty the list, use the value $null for this parameter. ```yaml Type: String[] @@ -1059,8 +1468,22 @@ Accept wildcard characters: False ``` ### -ExclusionPath -Specifies an array of file paths to exclude from scheduled and real-time scanning. -You can specify a folder to exclude all the files under the folder. + +Specifies the path and filename (for specific files) or path only (for all files in the folder) to +exclude from scheduled and real-time scanning. + +To replace all existing values with the values you specify, use the following syntax: +`"Value1","Value2"..."ValueN"`. + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -ExclusionPath "Value1","Value2",..."ValuehN"` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -ExclusionPath "Value1","Value2",..."ValueN"` + +To empty the list, use the value $null for this parameter. ```yaml Type: String[] @@ -1075,11 +1498,24 @@ Accept wildcard characters: False ``` ### -ExclusionProcess -Specifies an array of processes, as paths to process images. -This cmdlet excludes any files opened by the processes that you specify from scheduled and real-time scanning. -Specifying this parameter excludes files opened by executable programs only. -The cmdlet does not exclude the processes themselves. -To exclude a process, specify it by using the **ExclusionPath** parameter. + +Specifies the paths to process images to exclude from scheduled and real-time scanning. + +To replace all existing values with the values you specify, use the following syntax: +`"Path1","Path2"..."PathN"`. + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -ExclusionProcess "Path1","Path2",..."PathhN"` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -ExclusionProcess "Path1","Path2",..."PathN"` + +To empty the list, use the value $null for this parameter. + +This parameter excludes files opened by executable programs only, not the processes themselves. +To exclude processes, use the **ExclusionPath** parameter. ```yaml Type: String[] @@ -1094,7 +1530,9 @@ Accept wildcard characters: False ``` ### -Force -Forces the command to run without asking for user confirmation. + +Forces the command to run without asking for user confirmation. You don't need to specify a value +with this switch. ```yaml Type: SwitchParameter @@ -1109,7 +1547,11 @@ Accept wildcard characters: False ``` ### -ForceUseProxyOnly -Specifies whether to force the device to use only the proxy. + +Specifies whether to force the device to use only the proxy. Valid values are: + +- $true: Use the proxy only. +- $false: Don't force the device to use the proxy. ```yaml Type: Boolean @@ -1124,12 +1566,18 @@ Accept wildcard characters: False ``` ### -HighThreatDefaultAction -Specifies which automatic remediation action to take for a high level threat. -The acceptable values for this parameter are: + + +Specifies the automatic remediation action to take for a high level threat. Valid values are: + +- Clean - Quarantine - Remove -- Ignore +- Allow +- UserDefined +- NoAction +- Block ```yaml Type: ThreatAction @@ -1145,15 +1593,15 @@ Accept wildcard characters: False ``` ### -IntelTDTEnabled -This policy setting configures the Intel TDT integration level for Intel TDT-capable devices. -The acceptable values for this parameter are: -- 0 (Default) - If you don't configure this setting, the default value will be applied. The default value is controlled by Microsoft security intelligence updates. Microsoft will enable Intel TDT if there is a known threat. -- 1 - If you configure this setting to enabled, Intel TDT integration will turn on. -- 2 - If you configure this setting to disabled, Intel TDT integration will turn off. +This policy setting configures the Intel TDT integration level for Intel TDT-capable devices. Valid +values are: + +- $true: Intel TDT integration is turned on. +- $false: Intel TDT integration is turned off. ```yaml -Type: UInt32 +Type: Boolean Parameter Sets: (All) Aliases: itdte Accepted values: 0,1 and 2 @@ -1166,12 +1614,18 @@ Accept wildcard characters: False ``` ### -LowThreatDefaultAction -Specifies which automatic remediation action to take for a low level threat. -The acceptable values for this parameter are: + + +Specifies the automatic remediation action to take for a low level threat. Valid values are: + +- Clean - Quarantine - Remove -- Ignore +- Allow +- UserDefined +- NoAction +- Block ```yaml Type: ThreatAction @@ -1187,23 +1641,24 @@ Accept wildcard characters: False ``` ### -MAPSReporting -Specifies the type of membership in Microsoft Active Protection Service. -Microsoft Active Protection Service is an online community that helps you choose how to respond to potential threats. -The community also helps prevent the spread of new malicious software. -The acceptable values for this parameter are: -- 0: Disabled. -Send no information to Microsoft. -This is the default value. -- 1: Basic membership. -Send basic information to Microsoft about detected software, including where the software came from, the actions that you apply or that apply automatically, and whether the actions succeeded. -- 2: Advanced membership. -In addition to basic information, send more information to Microsoft about malicious software, spyware, and potentially unwanted software, including the location of the software, file names, how the software operates, and how it affects your computer. + + +Specifies the type of membership in Microsoft Active Protection Service. This services is an online +community that helps you choose how to respond to potential threats. The community also helps +prevent the spread of new malicious software. Valid values are: + +- Disabled: Send no information to Microsoft. This is the default value. +- Basic: Send basic information to Microsoft about detected software, including where the software +came from, the actions you applied (manually or automatically), and whether the actions succeeded. +- Advanced: In addition to basic information, send more information to Microsoft about malicious +software, spyware, and potentially unwanted software, including the location of the software, +filenames, how the software operates, and how it affects your computer. -If you join this community, you can choose to automatically send basic or additional information about detected software. -Additional information helps Microsoft create new definitions. -In some instances, personal information might unintentionally be sent to Microsoft. -However, Microsoft will not use this information to identify you or contact you. +If you join this community, you can choose to automatically send basic or additional information +about detected software. Additional information helps Microsoft create new definitions. In some +instances, personal information might unintentionally be sent to Microsoft. However, Microsoft +doesn't use this information to identify you or contact you. ```yaml Type: MAPSReportingType @@ -1219,8 +1674,11 @@ Accept wildcard characters: False ``` ### -MeteredConnectionUpdates -Specifies whether to update managed devices to update through metered connections. -Data charges may apply. + +Specifies whether to update managed devices to update through metered connections. Valid values are: + +- $true: Updates are made over metered connections. Data charges may apply. +- $false: Updates aren't made over metered connections. ```yaml Type: Boolean @@ -1235,12 +1693,18 @@ Accept wildcard characters: False ``` ### -ModerateThreatDefaultAction -Specifies which automatic remediation action to take for a moderate level threat. -The acceptable values for this parameter are: + + +Specifies the automatic remediation action to take for a moderate level threat. Valid values are: + +- Clean - Quarantine - Remove -- Ignore +- Allow +- UserDefined +- NoAction +- Block ```yaml Type: ThreatAction @@ -1257,12 +1721,12 @@ Accept wildcard characters: False ### -OobeEnableRtpAndSigUpdate -This setting allows you to configure whether real-time protection and Security Intelligence Updates are enabled during Out of Box experience (OOBE). - -Valid values are: +This setting allows you to configure whether real-time protection and Security Intelligence Updates +are enabled during Out of Box experience (OOBE). Valid values are: -- True - If you enable this setting, real-time protection and Security Intelligence Updates are enabled during OOBE. -- False (Default) - If you either disable or don't configure this setting, real-time protection and Security Intelligence Updates during OOBE aren't enabled. +- $true: Real-time protection and Security Intelligence Updates are enabled during OOBE. +- $false: Real-time protection and Security Intelligence Updates during OOBE aren't enabled. This +is the default value. ```yaml Type: Boolean @@ -1277,15 +1741,23 @@ Accept wildcard characters: False ``` ### -PlatformUpdatesChannel -Specifies when devices receive Microsoft Defender platform updates during the monthly gradual rollout. -Valid values are: +Specifies when devices receive Microsoft Defender platform updates during the monthly gradual +rollout. Valid values are: -- NotConfigured. Devices stay up to date automatically during the gradual release cycle. This value is suitable for most devices. -- Beta. Devices are the first to receive new updates. Select Beta Channel to participate in identifying and reporting issues to Microsoft. Devices in the Windows Insider Program are subscribed to this channel by default. This value is for use in manual test environments only and a limited number of devices. -- Broad. Devices are offered updates only after the gradual release cycle completes. This value is suggested for a broad set of devices in your production population, from 10 to 100 percent. -- Preview. Devices are offered updates earliest during the monthly gradual release cycle. This value is suggested for pre-production or validation environments. -- Staged. Devices are offered updates after the monthly gradual release cycle. This value is suggested for a small, representative part of your production population, around 10 percent. +- NotConfigured: Devices stay up to date automatically during the gradual release cycle. This value +is suitable for most devices. +- Beta: Devices are the first to receive new updates. Select Beta Channel to participate in +identifying and reporting issues to Microsoft. Devices in the Windows Insider Program are +subscribed to this channel by default. This value is for use in manual test environments only and +for a limited number of devices. +- Preview: Devices are offered updates earliest during the monthly gradual release cycle. This value +is suggested for pre-production or validation environments. +- Staged: Devices are offered updates after the monthly gradual release cycle. This value is +suggested for a small, representative part of your production population, around 10 percent. +- Broad: Devices are offered updates only after the gradual release cycle completes. This value is +suggested for a broad set of devices in your production population, from 10 to 100 percent. +- Delayed ```yaml Type: UpdatesChannelType @@ -1300,8 +1772,40 @@ Accept wildcard characters: False ``` ### -ProxyBypass + Specifies proxy bypasses. +To replace all existing values with the values you specify, use the following syntax: `"Value1","Value2",..."ValueN"`. + +To add values without affecting existing values, use the following syntax: + +`$a = Get-MpPreference | Select-Object -Expand ProxyBypass` + +`$ += "Value1","Value2"..."ValueN"` + +`Set-MpPreference -ProxyBypass $a` + +To remove values without affecting existing values, do the following steps: + +- Run the following commands to see the existing list of values in order: + + `$x = Get-MpPreference` + + `$r = [System.Collections.ArrayList]($x.ProxyBypass)` + + `$r` + + The first value in the list has the index number 0, the second has the index number 1, and so on. + +- Use the index number to specify the value to remove. For example, to remove the seventh value in +the list, run the following commands: + + `$r.RemoveAt(6)` + + `Set-MpPreference -ProxyBypass $r` + +To empty the list, use the value $null for this parameter. + ```yaml Type: String[] Parameter Sets: (All) @@ -1315,6 +1819,7 @@ Accept wildcard characters: False ``` ### -ProxyPacUrl + Specifies the Privilege Attribute Certificate (PAC) proxy. ```yaml @@ -1330,6 +1835,7 @@ Accept wildcard characters: False ``` ### -ProxyServer + Specifies the proxy server. ```yaml @@ -1345,8 +1851,15 @@ Accept wildcard characters: False ``` ### -PUAProtection -Specifies the level of detection for potentially unwanted applications. -When potentially unwanted software is downloaded or attempts to install itself on your computer, you are warned. + + + +Specifies the level of detection for potentially unwanted applications. Valid values are: + +- Disabled +- Enabled: You're warned when potentially unwanted software is downloaded or attempts to install +itself on your computer. +- Audit ```yaml Type: PUAProtectionType @@ -1362,8 +1875,12 @@ Accept wildcard characters: False ``` ### -QuarantinePurgeItemsAfterDelay + + + Specifies the number of days to keep items in the Quarantine folder. -If you specify a value of zero or do not specify a value for this parameter, items stay in the Quarantine folder indefinitely. + +No value or the value 0 means items stay in the Quarantine folder indefinitely. ```yaml Type: UInt32 @@ -1378,10 +1895,17 @@ Accept wildcard characters: False ``` ### -RandomizeScheduleTaskTimes -Indicates whether to select a random time for the scheduled start and scheduled update for definitions. -If you specify a value of $True or do not specify a value, scheduled tasks begin within 30 minutes, before or after, the scheduled time. -If you randomize the start times, it can distribute the impact of scanning. -For example, if several virtual machines share the same host, randomized start times prevents all the hosts from starting the scheduled tasks at the same time. + +Indicates whether to select a random time for the scheduled start and scheduled update for +definitions. Valid values are: + +- $true: Scheduled tasks begin within 30 minutes before or after the scheduled time. This is the +default value. +- $false: Scheduled tasks begin on the scheduled time + +Randomized start times can distribute the impact of scanning. For example, if several virtual +machines share the same host, randomized start times prevent all the hosts from starting the +scheduled tasks at the same time. ```yaml Type: Boolean @@ -1396,6 +1920,7 @@ Accept wildcard characters: False ``` ### -RealTimeScanDirection + Specifies scanning configuration for incoming and outgoing files on NTFS volumes. The acceptable values for this parameter are: @@ -1422,6 +1947,7 @@ Accept wildcard characters: False ``` ### -RemediationScheduleDay + Specifies the day of the week on which to perform a scheduled full scan in order to complete remediation. Alternatively, specify everyday for this full scan or never. The acceptable values for this parameter are: @@ -1453,6 +1979,7 @@ Accept wildcard characters: False ``` ### -RemediationScheduleTime + Specifies the time of day, as the number of minutes after midnight, to perform a scheduled scan. The time refers to the local time on the computer. If you do not specify a value for this parameter, a scheduled scan runs at the default time of two hours after midnight. @@ -1470,6 +1997,7 @@ Accept wildcard characters: False ``` ### -ReportingAdditionalActionTimeOut + Specifies the number of minutes before a detection in the additional action state changes to the cleared state. ```yaml @@ -1485,6 +2013,7 @@ Accept wildcard characters: False ``` ### -ReportingCriticalFailureTimeOut + Specifies the number of minutes before a detection in the critically failed state changes to either the additional action state or the cleared state. ```yaml @@ -1500,6 +2029,7 @@ Accept wildcard characters: False ``` ### -ReportingNonCriticalTimeOut + Specifies the number of minutes before a detection in the non-critically failed state changes to the cleared state. ```yaml @@ -1515,6 +2045,7 @@ Accept wildcard characters: False ``` ### -ScanAvgCPULoadFactor + Specifies the maximum percentage CPU usage for a scan. The acceptable values for this parameter are: integers from 5 through 100, and the value 0, which disables CPU throttling. Windows Defender does not exceed the percentage of CPU usage that you specify. @@ -1535,6 +2066,7 @@ Accept wildcard characters: False ``` ### -ScanOnlyIfIdleEnabled + Indicates whether to start scheduled scans only when the computer is not in use. If you specify a value of $True or do not specify a value, Windows Defender runs schedules scans when the computer is on, but not in use. @@ -1551,6 +2083,7 @@ Accept wildcard characters: False ``` ### -ScanParameters + Specifies the scan type to use during a scheduled scan. The acceptable values for this parameter are: @@ -1573,6 +2106,7 @@ Accept wildcard characters: False ``` ### -ScanPurgeItemsAfterDelay + Specifies the number of days to keep items in the scan history folder. After this time, Windows Defender removes the items. If you specify a value of zero, Windows Defender does not remove items. @@ -1591,6 +2125,7 @@ Accept wildcard characters: False ``` ### -ScanScheduleDay + Specifies the day of the week on which to perform a scheduled scan. Alternatively, specify everyday for a scheduled scan or never. The acceptable values for this parameter are: @@ -1622,6 +2157,7 @@ Accept wildcard characters: False ``` ### -ScanScheduleQuickScanTime + Specifies the time of day, as the number of minutes after midnight, to perform a scheduled quick scan. The time refers to the local time on the computer. If you do not specify a value for this parameter, a scheduled quick scan runs at the time specified by the **ScanScheduleOffset** parameter. @@ -1640,6 +2176,7 @@ Accept wildcard characters: False ``` ### -ScanScheduleOffset + Configures the number of minutes after midnight to perform a scheduled scan. The time on the endpoint is used to determine the local time. If you enable this setting, a scheduled scan will run at the time specified. If you disable or don’t enable this setting, a scheduled scan runs at the default time of two hours (120 minutes) after midnight. ```yaml @@ -1652,6 +2189,7 @@ Accept wildcard characters: False ``` ### -ScanScheduleTime + Specifies the time of day to run a scheduled scan. The time refers to the local time on the computer. Specify the number of minutes after midnight (for example, enter 60 for 1 a.m.). This parameter has a default time of two hours after midnight (2 a.m.). ```yaml @@ -1664,6 +2202,7 @@ Accept wildcard characters: False ``` ### -SchedulerRandomizationTime + Specifies the randomization time for the scheduler. ```yaml @@ -1679,6 +2218,7 @@ Accept wildcard characters: False ``` ### -ServiceHealthReportInterval + This policy setting configures the time interval (in minutes) for the service health reports to be sent from endpoints. These are for Microsoft Defender Antivirus events 1150 and 1151. For more information, see [Microsoft Defender Antivirus event IDs](/microsoft-365/security/defender-endpoint/troubleshoot-microsoft-defender-antivirus#microsoft-defender-antivirus-event-ids). If you do not configure this setting, the default value will be applied. The default value is set at 60 minutes (one hour). @@ -1696,6 +2236,7 @@ Accept wildcard characters: False ``` ### -SevereThreatDefaultAction + Specifies which automatic remediation action to take for a severe level threat. The acceptable values for this parameter are: @@ -1717,6 +2258,7 @@ Accept wildcard characters: False ``` ### -SharedSignaturesPath + Specifies the shared signatures path. ```yaml @@ -1732,6 +2274,7 @@ Accept wildcard characters: False ``` ### -SignatureAuGracePeriod + Specifies a grace period, in minutes, for the definition. If a definition successfully updates within this period, Windows Defender abandons any service initiated updates. @@ -1748,6 +2291,7 @@ Accept wildcard characters: False ``` ### -SignatureBlobFileSharesSources + Specifies the file shares sources for signatures. ```yaml @@ -1763,6 +2307,7 @@ Accept wildcard characters: False ``` ### -SignatureBlobUpdateInterval + Specifies the signature update interval. ```yaml @@ -1778,6 +2323,7 @@ Accept wildcard characters: False ``` ### -SignatureDefinitionUpdateFileSharesSources + Specifies file-share sources for definition updates. Specify sources as a bracketed sequence of Universal Naming Convention (UNC) locations, separated by the pipeline symbol; for example, { \\\\Server01\Share01 | \\\\Server02\Share02 | \\\\Server03\Share03}. If you specify a value for this parameter, Windows Defender attempts to connect to the shares in the order that you specify. @@ -1797,6 +2343,7 @@ Accept wildcard characters: False ``` ### -SignatureDisableUpdateOnStartupWithoutEngine + Indicates whether to initiate definition updates even if no antimalware engine is present. If you specify a value of $True or do not specify a value, Windows Defender does not initiate definition updates on startup. If you specify a value of $False, and if no antimalware engine is present, Windows Defender initiates definition updates on startup. @@ -1814,6 +2361,7 @@ Accept wildcard characters: False ``` ### -SignatureFallbackOrder + Specifies the order in which to contact different definition update sources. Specify the types of update sources in the order in which you want Windows Defender to contact them, enclosed in braces and separated by the pipeline symbol; for example, { InternalDefinitionUpdateServer | MicrosoftUpdateServer | MMPC }. The values that you can specify in the string are: @@ -1842,6 +2390,7 @@ Accept wildcard characters: False ``` ### -SignatureFirstAuGracePeriod + Specifies a grace period, in minutes, for the definition. If a definition successfully updates within this period, Windows Defender abandons any service initiated updates. This parameter overrides the value of the **CheckForSignaturesBeforeRunningScan** parameter. @@ -1859,6 +2408,7 @@ Accept wildcard characters: False ``` ### -SignatureScheduleDay + Specifies the day of the week on which to check for definition updates. Alternatively, specify everyday for a scheduled scan or never. The acceptable values for this parameter are: @@ -1890,6 +2440,7 @@ Accept wildcard characters: False ``` ### -SignatureScheduleTime + Specifies the time of day, as the number of minutes after midnight, to check for definition updates. The time refers to the local time on the computer. If you do not specify a value for this parameter, Windows Defender checks for definition updates at the default time of 15 minutes before the scheduled scan time. @@ -1907,15 +2458,8 @@ Accept wildcard characters: False ``` ### -SignaturesUpdatesChannel -Specifies when devices receive daily Microsoft Defender definition updates during the monthly gradual rollout. - -Valid values are: -- NotConfigured. Devices stay up to date automatically during the gradual release cycle. This value is suitable for most devices. -- Broad. Devices are offered updates only after the gradual release cycle completes. This value is suggested for a broad set of devices in your production population, from 10 to 100 percent. -- Staged. Devices are offered updates after the monthly gradual release cycle. This value is suggested for a small, representative part of your production population, around 10 percent. - -This parameter name will be updated to **DefinitionUpdatesChannel** in a future release. +This parameter has been replaced by the **DefinitionUpdatesChannel** parameter. ```yaml Type: UpdatesChannelType @@ -1930,6 +2474,7 @@ Accept wildcard characters: False ``` ### -SignatureUpdateCatchupInterval + Specifies the number of days after which Windows Defender requires a catch-up definition update. If you do not specify a value for this parameter, Windows Defender requires a catch-up definition update after the default value of one day. @@ -1946,6 +2491,7 @@ Accept wildcard characters: False ``` ### -SignatureUpdateInterval + Specifies the interval, in hours, at which to check for definition updates. The acceptable values for this parameter are: integers from 1 through 24. If you do not specify a value for this parameter, Windows Defender checks at the default interval. @@ -1964,6 +2510,7 @@ Accept wildcard characters: False ``` ### -SubmitSamplesConsent + Specifies how Windows Defender checks for user consent for certain samples. If consent has previously been granted, Windows Defender submits the samples. Otherwise, if the **MAPSReporting** parameter does not have a value of Disabled, Windows Defender prompts the user for consent. @@ -1988,6 +2535,7 @@ Accept wildcard characters: False ``` ### -ThreatIDDefaultAction_Actions + Specifies an array of the actions to take for the IDs specified by using the **ThreatIDDefaultAction_Ids** parameter. The acceptable values for this parameter are: @@ -2016,6 +2564,7 @@ Accept wildcard characters: False ``` ### -ThreatIDDefaultAction_Ids + Specifies an array of threat IDs. This cmdlet modifies the default action for the threat IDs that you specify. @@ -2032,6 +2581,7 @@ Accept wildcard characters: False ``` ### -ThrottleLimit + Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of `0` is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer. @@ -2049,6 +2599,7 @@ Accept wildcard characters: False ``` ### -ThrottleForScheduledScanOnly + A CPU usage limit can be applied to scheduled scans only, or to scheduled and custom scans. The default value applies a CPU usage limit to scheduled scans only. The acceptable values for this parameter are: @@ -2068,6 +2619,7 @@ Accept wildcard characters: False ``` ### -UILockdown + Indicates whether to disable UI lockdown mode. If you specify a value of $True, Windows Defender disables UI lockdown mode. If you specify $False or do not specify a value, UI lockdown mode is enabled. @@ -2085,6 +2637,7 @@ Accept wildcard characters: False ``` ### -UnknownThreatDefaultAction + Specifies which automatic remediation action to take for an unknown level threat. The acceptable values for this parameter are: @@ -2121,4 +2674,3 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Get-MpPreference](./Get-MpPreference.md) [Remove-MpPreference](./Remove-MpPreference.md) - From 67b19475f2b91f7e58d7c01102266f14fae685d7 Mon Sep 17 00:00:00 2001 From: Chris Davis Date: Thu, 17 Oct 2024 19:33:15 -0700 Subject: [PATCH 81/98] Update Set-MpPreference.md --- docset/winserver2022-ps/defender/Set-MpPreference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docset/winserver2022-ps/defender/Set-MpPreference.md b/docset/winserver2022-ps/defender/Set-MpPreference.md index ca51171f3c..26db345515 100644 --- a/docset/winserver2022-ps/defender/Set-MpPreference.md +++ b/docset/winserver2022-ps/defender/Set-MpPreference.md @@ -1904,7 +1904,7 @@ default value. - $false: Scheduled tasks begin on the scheduled time Randomized start times can distribute the impact of scanning. For example, if several virtual -machines share the same host, randomized start times prevent all the hosts from starting the +machines share the same host, randomized start times prevent all virtual machines from starting the scheduled tasks at the same time. ```yaml From c1b26110327736b3553c96895956cf1fae7743dd Mon Sep 17 00:00:00 2001 From: Chris Davis Date: Fri, 18 Oct 2024 18:10:29 -0700 Subject: [PATCH 82/98] Update Set-MpPreference.md --- .../defender/Set-MpPreference.md | 679 ++++++++++-------- 1 file changed, 395 insertions(+), 284 deletions(-) diff --git a/docset/winserver2022-ps/defender/Set-MpPreference.md b/docset/winserver2022-ps/defender/Set-MpPreference.md index 26db345515..6d55a75763 100644 --- a/docset/winserver2022-ps/defender/Set-MpPreference.md +++ b/docset/winserver2022-ps/defender/Set-MpPreference.md @@ -22,7 +22,6 @@ Set-MpPreference [-AllowNetworkProtectionDownLevel ] [-AllowNetworkProtectionOnWinServer ] [-AllowSwitchToAsyncInspection ] - [-ApplyDisableNetworkScanningToIOAV ] [-AsJob] [-AttackSurfaceReductionOnlyExclusions ] [-AttackSurfaceReductionRules_Actions ] @@ -122,10 +121,10 @@ Set-MpPreference [-SignatureScheduleTime ] [-SignatureUpdateCatchupInterval ] [-SignatureUpdateInterval ] - [-SignaturesUpdatesChannel ] [-SubmitSamplesConsent ] [-ThreatIDDefaultAction_Actions ] [-ThreatIDDefaultAction_Ids ] + [-ThrottleForScheduledScanOnly ] [-ThrottleLimit ] [-UILockdown ] [-UnknownThreatDefaultAction ] @@ -300,8 +299,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -AttackSurfaceReductionOnlyExclusions "Value1","Value2",..."ValueN"` -To empty the list, use the value $null for this parameter. - For more information, see [Exclude files and folders from attack surface reduction rules](/defender-endpoint/enable-attack-surface-reduction#exclude-files-and-folders-from-attack-surface-reduction-rules). ```yaml @@ -325,15 +322,16 @@ together in the same command to specify the states of attack surface reduction ( example, the GUID value of the "Block Office communication application from creating child processes" ASR rule is `26190899-1602-49e8-8b27-eb1d0a1ce869`. For more information, see [ASR rule to GUID matrix](/defender-endpoint/attack-surface-reduction-rules-reference#asr-rule-to-guid-matrix). -- The **AttackSurfaceReductionRules_Actions** parameter identifies ASR rule action: +- The **AttackSurfaceReductionRules_Actions** parameter identifies ASR rule action. Valid values +are: - • 0: Deactivated + • 0 or Deactivated - • 1: Activated + • 1 or Activated - • 2: Audit mode + • 2 or Audit mode - • 6: Warning + • 6 or Warning To replace all existing values with the values you specify, use the following syntax: @@ -347,8 +345,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -AttackSurfaceReductionRules_Ids Rule1,Rule2,...RuleN -AttackSurfaceReductionRules_Actions Action1,Action2,...ActionN` -To empty the list, use the value $null for this parameter. - ```yaml Type: ASRRuleActionType[] Parameter Sets: (All) @@ -395,8 +391,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -AttackSurfaceReductionRules_Ids Rule1,Rule2,...RuleN -AttackSurfaceReductionRules_Actions Action1,Action2,...ActionN` -To empty the list, use the value $null for this parameter. - ```yaml Type: String[] Parameter Sets: (All) @@ -411,7 +405,7 @@ Accept wildcard characters: False ### -CheckForSignaturesBeforeRunningScan -Indicates whether to check for new virus and spyware definitions before Windows Defender runs a +Specifies whether to check for new virus and spyware definitions before Windows Defender runs a scan. Valid values are: - $true: Windows Defender checks for new definitions before running a scan. @@ -481,10 +475,10 @@ Accept wildcard characters: False ### -CloudExtendedTimeout -Specifies the amount of extended time in seconds to block a suspicious file and scan it in the -cloud. Without using this parameter, the standard time is 10 seconds. + -Valid values for this parameter are are from 0 to 50 additional seconds. +Specifies the amount of extended time in seconds to block a suspicious file and scan it in the +cloud. A valid value is an integer from 0 to 4294967295. The default value is 10 seconds. ```yaml Type: UInt32 @@ -515,8 +509,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -ControlledFolderAccessAllowedApplications "PathAndFileName1","PathAndFileName2",..."PathAndFileNameN"` -To empty the list, use the value $null for this parameter. - ```yaml Type: String[] Parameter Sets: (All) @@ -546,8 +538,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -ControlledFolderAccessAllowedApplications "Path1","Path2",..."PathN"` -To empty the list, use the value $null for this parameter. - ```yaml Type: String[] Parameter Sets: (All) @@ -589,8 +579,8 @@ Accept wildcard characters: False ### -DisableArchiveScanning -Indicates whether to scan archive files, such as .zip and .cab files, for malicious and unwanted -software. Valid values are: +Specifies whether to scan archive files (for example, .zip and .cab files) for malicious and +unwanted software. Valid values are: - $true: Windows Defender doesn't scan archive file. - $false: Windows Defender scans archive files. This is the default value. @@ -609,7 +599,7 @@ Accept wildcard characters: False ### -DisableAutoExclusions -Indicates whether to disable the Automatic Exclusions feature for the server. Valid values are: +Specifies whether to disable the Automatic Exclusions feature for the server. Valid values are: - $true: Windows Defender disables the Automatic Exclusions feature for the server. - $false: Windows Defender enables the Automatic Exclusions feature for the server. This is the default value. @@ -628,7 +618,7 @@ Accept wildcard characters: False ### -DisableBehaviorMonitoring -Indicates whether to enable behavior monitoring. Valid values are: +Specifies whether to enable behavior monitoring. Valid values are: - $true: Windows Defender disables behavior monitoring. - $false: Windows Defender enables behavior monitoring. This is the default value. @@ -647,7 +637,7 @@ Accept wildcard characters: False ### -DisableBlockAtFirstSeen -Indicates whether to enable block at first seen. Valid values are: +Specifies whether to enable block at first seen. Valid values are: - $true: Windows Defender disables block at first seen. - $false: Windows Defender enables block at first seen. This is the default value. @@ -685,7 +675,7 @@ Accept wildcard characters: False ### -DisableCatchupFullScan -Indicates whether Windows Defender runs catch-up scans for missed scheduled full scans. Valid values +Specifies whether Windows Defender runs catch-up scans for missed scheduled full scans. Valid values are: - $true: Windows Defender doesn't run catch-up scans for missed scheduled full scans. @@ -706,7 +696,7 @@ Accept wildcard characters: False ### -DisableCatchupQuickScan -Indicates whether Windows Defender runs catch-up scans for missed scheduled quick scans. Valid values +Specifies whether Windows Defender runs catch-up scans for missed scheduled quick scans. Valid values are: $true: Windows Defender doesn't run catch-up scans for missed scheduled quick scans. @@ -727,7 +717,7 @@ Accept wildcard characters: False ### -DisableCpuThrottleOnIdleScans -Indicates whether the CPU is throttled for scheduled scans while the device is idle. Valid +Specifies whether the CPU is throttled for scheduled scans while the device is idle. Valid values are: - $true: The CPU is throttled for scheduled scans. @@ -811,28 +801,9 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -DisableFtpParsing - -Specifies whether to disable FTP parsing for network protection. Valid values are: - -- $true: FTP parsing for network protection is disabled. -- $false: FTP parsing for network protection is enabled. - -```yaml -Type: Boolean -Parameter Sets: (All) -Aliases: dfp - -Required: False -Position: Named -Default value: 0 -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -DisableEmailScanning -Indicates whether Windows Defender parses mailbox and email message files to analyze message bodies +Specifies whether Windows Defender parses mailbox and email message files to analyze message bodies and email attachments. Valid values are: - $true: Windows Defender doesn't scan mailbox and email message files. @@ -858,6 +829,25 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -DisableFtpParsing + +Specifies whether to disable FTP parsing for network protection. Valid values are: + +- $true: FTP parsing for network protection is disabled. +- $false: FTP parsing for network protection is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: dfp + +Required: False +Position: Named +Default value: 0 +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -DisableGradualRelease Specifies whether to disable gradual rollout of monthly and daily Windows Defender updates. Valid @@ -929,7 +919,7 @@ Accept wildcard characters: False ### -DisableIOAVProtection -Indicates whether Windows Defender scans all downloaded files and attachments. Valid values are: +Specifies whether Windows Defender scans all downloaded files and attachments. Valid values are: - $true: Windows Defender doesn't scan all downloaded files and attachments. - $false: Windows Defender scans all downloaded files and attachments. This is the default value. @@ -1007,7 +997,7 @@ Accept wildcard characters: False ### -DisableRealtimeMonitoring -Indicates whether to use real-time protection. Valid values are: +Specifies whether to use real-time protection. Valid values are: - $true: Windows Defender doesn't use real-time protection. - $false: Windows Defender uses real-time protection. This is the default and recommended value. @@ -1026,7 +1016,7 @@ Accept wildcard characters: False ### -DisableRemovableDriveScanning -Indicates whether to scan for malicious and unwanted software in removable drives, such as flash +Specifies whether to scan for malicious and unwanted software in removable drives, such as flash drives, during a full scan. Valid values are: - $true: Windows Defender doesn't scan removable drives during a full scan, but can still scan @@ -1048,7 +1038,7 @@ Accept wildcard characters: False ### -DisableRestorePoint -Indicates whether to disable scanning of restore points. Valid values are: +Specifies whether to disable scanning of restore points. Valid values are: - $true: Windows Defender restore point scanning is disabled. - $false: Windows Defender restore point scanning is enabled. This is the default value. @@ -1056,7 +1046,7 @@ Indicates whether to disable scanning of restore points. Valid values are: ```yaml Type: Boolean Parameter Sets: (All) -Aliases: drp, dsnf +Aliases: drp Required: False Position: Named @@ -1067,7 +1057,7 @@ Accept wildcard characters: False ### -DisableScanningMappedNetworkDrivesForFullScan -Indicates whether to scan mapped network drives. Valid values are: +Specifies whether to scan mapped network drives. Valid values are: - $true: Windows Defender doesn't scan mapped network drives. - $false: Windows Defender scans mapped network drives. This is the default value. @@ -1086,7 +1076,7 @@ Accept wildcard characters: False ### -DisableScanningNetworkFiles -Indicates whether to scan network files. Valid values are: +Specifies whether to scan network files. Valid values are: - $true: Windows Defender doesn't scan network files. - $false: Windows Defender scans network files. This is the default value. @@ -1122,40 +1112,40 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -DisableSshParsing +### -DisableSmtpParsing -Specifies whether to disable the inspection of SSH traffic. Valid values are: +This setting disables SMTP parsing by Network Protection. Valid values are: -- $true: Network Protection doesn't inspect SSH traffic. -- $false: Network Protection inspects SSH traffic. This is the default value. +- $true: SMTP parsing is disabled. +- $false: SMTP parsing is enabled. This is the default value ```yaml Type: Boolean Parameter Sets: (All) -Aliases: dsshp +Aliases: dsp Required: False Position: Named -Default value: None +Default value: 0 Accept pipeline input: False Accept wildcard characters: False ``` -### -DisableSmtpParsing +### -DisableSshParsing -This setting disables SMTP parsing by Network Protection. Valid values are: +Specifies whether to disable the inspection of SSH traffic. Valid values are: -- $true: SMTP parsing is disabled. -- $false: SMTP parsing is enabled. This is the default value +- $true: Network Protection doesn't inspect SSH traffic. +- $false: Network Protection inspects SSH traffic. This is the default value. ```yaml Type: Boolean Parameter Sets: (All) -Aliases: dsp +Aliases: dsshp Required: False Position: Named -Default value: 0 +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` @@ -1231,6 +1221,8 @@ Accept wildcard characters: False ### -EnableDnsSinkhole +**Note**: This parameter has been deprecated. + Specifies whether to examine DNS traffic to detect and sinkhole DNS exfiltration attempts and other DNS based malicious attacks. Valid values are: @@ -1310,16 +1302,12 @@ Accept wildcard characters: False ### -EnableNetworkProtection - - Specifies how the network protection service handles web-based malicious threats, including phishing and malware. Valid values are: -- Disabled -- Enabled -- AuditMode -- NotConfigured -- Warn +- 0 or Disabled +- 1 or Enabled +- 2 or AuditMode ```yaml Type: ASRRuleActionType @@ -1425,8 +1413,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -ExclusionExtension "Extension1","Extension2"..."ExtensionN"` -To empty the list, use the value $null for this parameter. - ```yaml Type: String[] Parameter Sets: (All) @@ -1453,8 +1439,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -ExclusionIpAddress "IPAddress1","IPAddress2",..."IPAddressN"` -To empty the list, use the value $null for this parameter. - ```yaml Type: String[] Parameter Sets: (All) @@ -1483,8 +1467,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -ExclusionPath "Value1","Value2",..."ValueN"` -To empty the list, use the value $null for this parameter. - ```yaml Type: String[] Parameter Sets: (All) @@ -1512,8 +1494,6 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -ExclusionProcess "Path1","Path2",..."PathN"` -To empty the list, use the value $null for this parameter. - This parameter excludes files opened by executable programs only, not the processes themselves. To exclude processes, use the **ExclusionPath** parameter. @@ -1567,9 +1547,10 @@ Accept wildcard characters: False ### -HighThreatDefaultAction - + -Specifies the automatic remediation action to take for a high level threat. Valid values are: +Specifies the automatic remediation action to take for high level threats. Valid values are: - Clean - Quarantine @@ -1615,9 +1596,10 @@ Accept wildcard characters: False ### -LowThreatDefaultAction - + -Specifies the automatic remediation action to take for a low level threat. Valid values are: +Specifies the automatic remediation action to take for low level threats. Valid values are: - Clean - Quarantine @@ -1642,16 +1624,14 @@ Accept wildcard characters: False ### -MAPSReporting - - Specifies the type of membership in Microsoft Active Protection Service. This services is an online community that helps you choose how to respond to potential threats. The community also helps prevent the spread of new malicious software. Valid values are: -- Disabled: Send no information to Microsoft. This is the default value. -- Basic: Send basic information to Microsoft about detected software, including where the software +- 0 or Disabled: Send no information to Microsoft. This is the default value. +- 1 or Basic: Send basic information to Microsoft about detected software, including where the software came from, the actions you applied (manually or automatically), and whether the actions succeeded. -- Advanced: In addition to basic information, send more information to Microsoft about malicious +- 2 or Advanced: In addition to basic information, send more information to Microsoft about malicious software, spyware, and potentially unwanted software, including the location of the software, filenames, how the software operates, and how it affects your computer. @@ -1694,9 +1674,10 @@ Accept wildcard characters: False ### -ModerateThreatDefaultAction - + -Specifies the automatic remediation action to take for a moderate level threat. Valid values are: +Specifies the automatic remediation action to take for moderate level threats. Valid values are: - Clean - Quarantine @@ -1804,8 +1785,6 @@ the list, run the following commands: `Set-MpPreference -ProxyBypass $r` -To empty the list, use the value $null for this parameter. - ```yaml Type: String[] Parameter Sets: (All) @@ -1852,14 +1831,12 @@ Accept wildcard characters: False ### -PUAProtection - - Specifies the level of detection for potentially unwanted applications. Valid values are: -- Disabled -- Enabled: You're warned when potentially unwanted software is downloaded or attempts to install +- 0 or Disabled +- 1 or Enabled: You're warned when potentially unwanted software is downloaded or attempts to install itself on your computer. -- Audit +- 2 or Audit ```yaml Type: PUAProtectionType @@ -1876,11 +1853,8 @@ Accept wildcard characters: False ### -QuarantinePurgeItemsAfterDelay - - -Specifies the number of days to keep items in the Quarantine folder. - -No value or the value 0 means items stay in the Quarantine folder indefinitely. +Specifies the number of days to keep items in the Quarantine folder. A valid value is an integer +from 0 to 4294967295. The value 0 means items stay in the Quarantine folder indefinitely. ```yaml Type: UInt32 @@ -1896,7 +1870,7 @@ Accept wildcard characters: False ### -RandomizeScheduleTaskTimes -Indicates whether to select a random time for the scheduled start and scheduled update for +Specifies whether to select a random time for the scheduled start and scheduled update for definitions. Valid values are: - $true: Scheduled tasks begin within 30 minutes before or after the scheduled time. This is the @@ -1921,17 +1895,17 @@ Accept wildcard characters: False ### -RealTimeScanDirection -Specifies scanning configuration for incoming and outgoing files on NTFS volumes. -The acceptable values for this parameter are: +Specifies scanning configuration for incoming and outgoing files on NTFS volumes. Valid values are: + +- 0 or Both: Scan incoming and outgoing files. This is the default value. +- 1 or Incoming: Scan incoming files only. +- 2 or Outcoming \[SP\]: Scan outgoing files only. -- 0: Scan both incoming and outgoing files. -This is the default. -- 1: Scan incoming files only. -- 2: Scan outgoing files only. +Use this parameter to restrict scanning to incoming or outgoing files on servers that have a large +number of file transfers in only one direction. -Specify a value for this parameter to enhance performance on servers which have a large number of file transfers, but need scanning for either incoming or outgoing files. -Evaluate this configuration based on the server role. -For non-NTFS volumes, Windows Defender performs full monitoring of file and program activity. +Evaluate this configuration based on the server role. For non-NTFS volumes, Windows Defender +does full monitoring of file and program activity. ```yaml Type: ScanDirection @@ -1948,28 +1922,27 @@ Accept wildcard characters: False ### -RemediationScheduleDay -Specifies the day of the week on which to perform a scheduled full scan in order to complete remediation. -Alternatively, specify everyday for this full scan or never. -The acceptable values for this parameter are: +Specifies the day of the week to run scheduled full scans to complete remediation. Valid values are: -- 0: Everyday -- 1: Sunday -- 2: Monday -- 3: Tuesday -- 4: Wednesday -- 5: Thursday -- 6: Friday -- 7: Saturday -- 8: Never +- 0 or Everyday +- 1 or Sunday +- 2 or Monday +- 3 or Tuesday +- 4 or Wednesday +- 5 or Thursday +- 6 or Friday +- 7 or Saturday +- 8 or Never (default) -The default value is 8, never. -If you specify a value of 8 or do not specify a value, Windows Defender performs a scheduled full scan to complete remediation by using a default frequency. +For the value 8 or Never, Windows Defender uses a default frequency to run scheduled full scans to +complete remediation. ```yaml Type: Day Parameter Sets: (All) Aliases: rsd -Accepted values: Everyday, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Never +Accepted values: Everyday, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, +Never Required: False Position: Named @@ -1980,9 +1953,12 @@ Accept wildcard characters: False ### -RemediationScheduleTime -Specifies the time of day, as the number of minutes after midnight, to perform a scheduled scan. -The time refers to the local time on the computer. -If you do not specify a value for this parameter, a scheduled scan runs at the default time of two hours after midnight. +Specifies the time on the local computer to run scheduled scans for remediation. + +To specify a value, enter it as a time span: `hh:mm:ss` where `hh` = hours, `mm` = minutes and `ss` += seconds. For example, `13:30:00` indicates 1:30 PM. + +The default value is `02:00:00` (2:00 AM). ```yaml Type: DateTime @@ -1998,7 +1974,8 @@ Accept wildcard characters: False ### -ReportingAdditionalActionTimeOut -Specifies the number of minutes before a detection in the additional action state changes to the cleared state. +Specifies the number of minutes before a detection in the additional action state changes to the +cleared state. A valid value is an integer from 0 to 4294967295. ```yaml Type: UInt32 @@ -2014,7 +1991,8 @@ Accept wildcard characters: False ### -ReportingCriticalFailureTimeOut -Specifies the number of minutes before a detection in the critically failed state changes to either the additional action state or the cleared state. +Specifies the number of minutes before a detection in the critically failed state changes to +the additional action state or the cleared state. A valid value is an integer from 0 to 4294967295. ```yaml Type: UInt32 @@ -2030,7 +2008,8 @@ Accept wildcard characters: False ### -ReportingNonCriticalTimeOut -Specifies the number of minutes before a detection in the non-critically failed state changes to the cleared state. +Specifies the number of minutes before a detection in the non-critically failed state changes to +the cleared state. A valid value is an integer from 0 to 4294967295. ```yaml Type: UInt32 @@ -2047,11 +2026,19 @@ Accept wildcard characters: False ### -ScanAvgCPULoadFactor Specifies the maximum percentage CPU usage for a scan. -The acceptable values for this parameter are: integers from 5 through 100, and the value 0, which disables CPU throttling. -Windows Defender does not exceed the percentage of CPU usage that you specify. -The default value is 50. -Note: This is not a hard limit but rather a guidance for the scanning engine to not exceed this maximum on average. If ScanOnlyIfIdleEnabled (instructing the product to scan only when the computer is not in use) and DisableCpuThrottleOnIdleScans (instructing the product to disable CPU throttling on idle scans) are both enabled, then the value of ScanAvgCPULoadFactor is ignored. +A valid value is an integer from 5 to 100. The default value is 50. The value 0 disables CPU +throttling. + +**Note**: This value isn't a hard limit, but rather guidance for the scanning engine to not exceed +the specified value on average. + +The value of this parameter is ignored if both of the following conditions are true: + +- The value of the **ScanOnlyIfIdleEnabled** parameter is $true (scan only when the computer isn't +in use). +- The value of the **DisableCpuThrottleOnIdleScans** parameter is $false (disable CPU throttling on +idle scans). ```yaml Type: Byte @@ -2067,8 +2054,11 @@ Accept wildcard characters: False ### -ScanOnlyIfIdleEnabled -Indicates whether to start scheduled scans only when the computer is not in use. -If you specify a value of $True or do not specify a value, Windows Defender runs schedules scans when the computer is on, but not in use. +Specifies whether to start scheduled scans only when the computer is not in use. Valid values are: + +- $true: Windows Defender runs schedules scans when the computer is on, but not in use. This is the +default value. +- $false: Windows Defender runs schedules scans when the computer is in use. ```yaml Type: Boolean @@ -2084,13 +2074,10 @@ Accept wildcard characters: False ### -ScanParameters -Specifies the scan type to use during a scheduled scan. -The acceptable values for this parameter are: - -- 1: Quick scan -- 2: Full scan +Specifies the scan type to use during a scheduled scan. Valid values are: -If you do not specify this parameter, Windows Defender uses the default value of quick scan. +- 1 or QuickScan (default) +- 2 or FullScan ```yaml Type: ScanType @@ -2107,10 +2094,11 @@ Accept wildcard characters: False ### -ScanPurgeItemsAfterDelay -Specifies the number of days to keep items in the scan history folder. -After this time, Windows Defender removes the items. -If you specify a value of zero, Windows Defender does not remove items. -If you do not specify a value, Windows Defender removes items from the scan history folder after the default length of time, which is 15 days. +Specifies the number of days to keep items in the scan history folder. After this time, Windows +Defender removes the items. + +A valid value is an integer from 0 to +4294967295. The default value is 15 days. The value 0 means Windows Defender doesn't remove items from the scan history folder. ```yaml Type: UInt32 @@ -2126,22 +2114,19 @@ Accept wildcard characters: False ### -ScanScheduleDay -Specifies the day of the week on which to perform a scheduled scan. -Alternatively, specify everyday for a scheduled scan or never. -The acceptable values for this parameter are: +Specifies the day of the week to run scheduled scans. Valid values are: -- 0: Everyday -- 1: Sunday -- 2: Monday -- 3: Tuesday -- 4: Wednesday -- 5: Thursday -- 6: Friday -- 7: Saturday -- 8: Never +- 0 or Everyday +- 1 or Sunday +- 2 or Monday +- 3 or Tuesday +- 4 or Wednesday +- 5 or Thursday +- 6 or Friday +- 7 or Saturday +- 8 or Never (default) -The default value is 8, never. -If you specify a value of 8 or do not specify a value, Windows Defender does not perform scheduled scans. +For the value 8 or Never, Windows Defender doesn't do scheduled scans. ```yaml Type: Day @@ -2156,17 +2141,18 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -ScanScheduleQuickScanTime +### -ScanScheduleOffset -Specifies the time of day, as the number of minutes after midnight, to perform a scheduled quick scan. -The time refers to the local time on the computer. -If you do not specify a value for this parameter, a scheduled quick scan runs at the time specified by the **ScanScheduleOffset** parameter. -That parameter has a default time of two hours after midnight. +Specifies the number of minutes after midnight on the local computer to run scheduled scans. The +default value is 120, which means scheduled scans start on the local computer at 2:00 AM. + +If you don't specify a value for this parameter, scheduled scans start at the time specified by the +**ScanScheduleTime** and **ScanScheduleQuickScanTime** parameters. ```yaml -Type: DateTime +Type: UInt32 Parameter Sets: (All) -Aliases: scsqst +Aliases: scso Required: False Position: Named @@ -2175,13 +2161,24 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -ScanScheduleOffset +### -ScanScheduleQuickScanTime + +Specifies the time on the local computer to run scheduled quick scans. + +To specify a value, enter it as a time span: `hh:mm:ss` where `hh` = hours, `mm` = minutes and `ss` += seconds. For example, `13:30:00` indicates 1:30 PM. + +The default value is `02:00:00` (2:00 AM). -Configures the number of minutes after midnight to perform a scheduled scan. The time on the endpoint is used to determine the local time. If you enable this setting, a scheduled scan will run at the time specified. If you disable or don’t enable this setting, a scheduled scan runs at the default time of two hours (120 minutes) after midnight. +If you don't specify a value for this parameter, scheduled quick scans run at the time specified +by the **ScanScheduleOffset** parameter. ```yaml -Type: UInt32 -Aliases: scso +Type: DateTime +Parameter Sets: (All) +Aliases: scsqst + +Required: False Position: Named Default value: None Accept pipeline input: False @@ -2190,11 +2187,19 @@ Accept wildcard characters: False ### -ScanScheduleTime -Specifies the time of day to run a scheduled scan. The time refers to the local time on the computer. Specify the number of minutes after midnight (for example, enter 60 for 1 a.m.). This parameter has a default time of two hours after midnight (2 a.m.). +Specifies the time on the local computer to run scheduled scans. + +To specify a value, enter it as a time span: `hh:mm:ss` where `hh` = hours, `mm` = minutes and `ss` += seconds. For example, `13:30:00` indicates 1:30 PM. + +The default value is `02:00:00` (2:00 AM). + +If you don't specify a value for this parameter, scheduled scans run at the time specified +by the **ScanScheduleOffset** parameter. ```yaml Type: DateTime -Aliases: scsqst +Aliases: scst Position: Named Default value: None Accept pipeline input: False @@ -2203,7 +2208,8 @@ Accept wildcard characters: False ### -SchedulerRandomizationTime -Specifies the randomization time for the scheduler. +Specifies the randomization time for the scheduler. A valid value is an integer from 0 to +4294967295. ```yaml Type: UInt32 @@ -2219,11 +2225,16 @@ Accept wildcard characters: False ### -ServiceHealthReportInterval -This policy setting configures the time interval (in minutes) for the service health reports to be sent from endpoints. These are for Microsoft Defender Antivirus events 1150 and 1151. For more information, see [Microsoft Defender Antivirus event IDs](/microsoft-365/security/defender-endpoint/troubleshoot-microsoft-defender-antivirus#microsoft-defender-antivirus-event-ids). + + +Specifies the time interval in minutes for the service health reports to be sent from endpoints. +These reports are for Microsoft Defender Antivirus events 1150 and 1151. -If you do not configure this setting, the default value will be applied. The default value is set at 60 minutes (one hour). -If you configure this setting to 0, no service health reports will be sent. -The maximum value allowed to be set is 14400 minutes (ten days). +A valid value is an integer from 0 to 4294967295. The default value is 60 minutes. The value 0 +means no service health reports are sent. + +For more information, see +[Microsoft Defender Antivirus event IDs](/microsoft-365/security/defender-endpoint/troubleshoot-microsoft-defender-antivirus#microsoft-defender-antivirus-event-ids). ```yaml Type: UInt32 @@ -2237,12 +2248,18 @@ Accept wildcard characters: False ### -SevereThreatDefaultAction -Specifies which automatic remediation action to take for a severe level threat. -The acceptable values for this parameter are: + + +Specifies which automatic remediation action to take for severe level threats. Valid values are: +- Clean - Quarantine - Remove -- Ignore +- Allow +- UserDefined +- NoAction +- Block ```yaml Type: ThreatAction @@ -2259,7 +2276,10 @@ Accept wildcard characters: False ### -SharedSignaturesPath -Specifies the shared signatures path. +Specifies the shared signatures path. For example, `"P:\Signature Data"`. If the value contains +spaces, enclose the value in quotation marks ("). + +To empty this setting, use the value `" "`. ```yaml Type: String @@ -2275,8 +2295,16 @@ Accept wildcard characters: False ### -SignatureAuGracePeriod -Specifies a grace period, in minutes, for the definition. -If a definition successfully updates within this period, Windows Defender abandons any service initiated updates. +Specified the grace period in minutes that's applied to all signature updates after the initial, +first-time application. + +A valid value is an integer from 0 to 4294967295. + +If Windows Defender successfully updates within this period, any service initiated updates are +abandoned. + +THe **SignatureFirstAuGracePeriod** parameter specifies the grace period when a new signature is +first detected. ```yaml Type: UInt32 @@ -2292,7 +2320,11 @@ Accept wildcard characters: False ### -SignatureBlobFileSharesSources -Specifies the file shares sources for signatures. +Specifies the file shares sources for signatures. For example, +`"\\ServerName\\ShareName\Folder name\"`. If the value contains spaces, enclose the value in +quotation marks ("). + +To empty this setting, use the value `" "`. ```yaml Type: String @@ -2308,7 +2340,7 @@ Accept wildcard characters: False ### -SignatureBlobUpdateInterval -Specifies the signature update interval. +Specifies the signature update interval. A valid value is an integer from 0 to 4294967295. ```yaml Type: UInt32 @@ -2325,10 +2357,15 @@ Accept wildcard characters: False ### -SignatureDefinitionUpdateFileSharesSources Specifies file-share sources for definition updates. -Specify sources as a bracketed sequence of Universal Naming Convention (UNC) locations, separated by the pipeline symbol; for example, { \\\\Server01\Share01 | \\\\Server02\Share02 | \\\\Server03\Share03}. -If you specify a value for this parameter, Windows Defender attempts to connect to the shares in the order that you specify. -After Windows Defender updates a definition, it stops attempting to connect to shares on the list. -If you do not specify a value for this parameter, the list is empty. + +A valid value uses the following syntax: +`{\\Server1\Share1 | \\Server2\Share2 | ... \\ServerN\ShareN}`. + +Windows Defender tries to connect to the shared folders in the specified order. After the update +is successful, Windows Defender stops trying to connect to the remaining shared folders in the +list. + +To empty this setting, use the value `" "`. ```yaml Type: String @@ -2344,9 +2381,11 @@ Accept wildcard characters: False ### -SignatureDisableUpdateOnStartupWithoutEngine -Indicates whether to initiate definition updates even if no antimalware engine is present. -If you specify a value of $True or do not specify a value, Windows Defender does not initiate definition updates on startup. -If you specify a value of $False, and if no antimalware engine is present, Windows Defender initiates definition updates on startup. +Specifies whether to initiate definition updates even if no antimalware engine is present. Valid values are: + +- $true: Windows Defender does not initiate definition updates on startup. This is the default value +- $false: If no antimalware engine is present, Windows Defender initiates definition updates on +startup. ```yaml Type: Boolean @@ -2362,20 +2401,19 @@ Accept wildcard characters: False ### -SignatureFallbackOrder -Specifies the order in which to contact different definition update sources. -Specify the types of update sources in the order in which you want Windows Defender to contact them, enclosed in braces and separated by the pipeline symbol; for example, { InternalDefinitionUpdateServer | MicrosoftUpdateServer | MMPC }. -The values that you can specify in the string are: +Specifies the order in which to contact different definition update sources. The available sources +are: - InternalDefinitionUpdateServer - MicrosoftUpdateServer -- MMPC -- FileShares +- MMPC (Microsoft Malware Protection Center) +- FileShares (specified by the **SignatureDefinitionUpdateFileSharesSources** parameter) -MMPC refers to Microsoft Malware Protection Center. +A valid value uses the following syntax: `{Source1 | Source2 | Source3 |Source4}`. The default +value is `{MicrosoftUpdateServer | MMPC}`. -If you specify a value for this parameter, Windows Defender contacts the definition update sources in the specified order. -After Windows Defender downloads definition updates from a source, it stops attempting to connect to other sources. -If you do not specify a value for this parameter, Windows Defender contacts sources in the default order of { MicrosoftUpdateServer | MMPC }. +Windows Defender tries to connect to the sources in the specified order. After the update +is successful, Windows Defender stops trying to connect to the remaining sources in the list. ```yaml Type: String @@ -2391,10 +2429,20 @@ Accept wildcard characters: False ### -SignatureFirstAuGracePeriod -Specifies a grace period, in minutes, for the definition. -If a definition successfully updates within this period, Windows Defender abandons any service initiated updates. +Specifies the grace period in minutes that's given to a new signature when it's first applied. This +grace period allows more time for compatibility checks with new detection logic. For example, to +prevent false positives from triggering alerts. + +A valid value is an integer from 20 to 4320. + +If Windows Defender successfully updates within this period, any service initiated updates are +abandoned. + This parameter overrides the value of the **CheckForSignaturesBeforeRunningScan** parameter. +The **SignatureAuGracePeriod** parameter specifies the standard grace period for all subsequent +signature updates. + ```yaml Type: UInt32 Parameter Sets: (All) @@ -2409,22 +2457,19 @@ Accept wildcard characters: False ### -SignatureScheduleDay -Specifies the day of the week on which to check for definition updates. -Alternatively, specify everyday for a scheduled scan or never. -The acceptable values for this parameter are: +Specifies the day of the week on which to check for definition updates. Valid values are: -- 0: Everyday -- 1: Sunday -- 2: Monday -- 3: Tuesday -- 4: Wednesday -- 5: Thursday -- 6: Friday -- 7: Saturday -- 8: Never +- 0 or Everyday +- 1 or Sunday +- 2 or Monday +- 3 or Tuesday +- 4 or Wednesday +- 5 or Thursday +- 6 or Friday +- 7 or Saturday +- 8 or Never (default) -The default value is 8, never. -If you specify a value of 8 or do not specify a value, Windows Defender checks for definition updates by using a default frequency. +For the value 8 or Never, Windows Defender uses a default frequency to check for definition updates. ```yaml Type: Day @@ -2441,30 +2486,18 @@ Accept wildcard characters: False ### -SignatureScheduleTime -Specifies the time of day, as the number of minutes after midnight, to check for definition updates. -The time refers to the local time on the computer. -If you do not specify a value for this parameter, Windows Defender checks for definition updates at the default time of 15 minutes before the scheduled scan time. - -```yaml -Type: DateTime -Parameter Sets: (All) -Aliases: sigst - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` +Specifies the time on the local computer to check for definition updates. -### -SignaturesUpdatesChannel +To specify a value, enter it as a time span: `hh:mm:ss` where `hh` = hours, `mm` = minutes and `ss` += seconds. For example, `13:30:00` indicates 1:30 PM. -This parameter has been replaced by the **DefinitionUpdatesChannel** parameter. +If you don't specify a value for this parameter, Windows Defender checks for definition updates 15 +minutes before the scheduled scan time by default. ```yaml -Type: UpdatesChannelType +Type: DateTime Parameter Sets: (All) -Aliases: srelr +Aliases: sigst Required: False Position: Named @@ -2476,7 +2509,8 @@ Accept wildcard characters: False ### -SignatureUpdateCatchupInterval Specifies the number of days after which Windows Defender requires a catch-up definition update. -If you do not specify a value for this parameter, Windows Defender requires a catch-up definition update after the default value of one day. + +A valid value is an integer from 0 to 4294967295. The default value is one day. ```yaml Type: UInt32 @@ -2492,10 +2526,14 @@ Accept wildcard characters: False ### -SignatureUpdateInterval -Specifies the interval, in hours, at which to check for definition updates. -The acceptable values for this parameter are: integers from 1 through 24. -If you do not specify a value for this parameter, Windows Defender checks at the default interval. -You can use this parameter instead of the **SignatureScheduleDay** parameter and **SignatureScheduleTime** parameter. + + +Specifies the interval in hours to check for definition updates. + +A valid value is an integer from 0 to 4294967295. + +You can use this parameter instead of the **SignatureScheduleDay**and **SignatureScheduleTime** +parameters. ```yaml Type: UInt32 @@ -2511,15 +2549,15 @@ Accept wildcard characters: False ### -SubmitSamplesConsent -Specifies how Windows Defender checks for user consent for certain samples. -If consent has previously been granted, Windows Defender submits the samples. -Otherwise, if the **MAPSReporting** parameter does not have a value of Disabled, Windows Defender prompts the user for consent. -The acceptable values for this parameter are: +Specifies how Windows Defender checks for user consent for certain samples. Valid values are: + +- 0 or AlwaysPrompt +- 1 or SendSafeSamples +- 2 or NeverSend +- 3 or SendAllSamples -- 0: Always prompt -- 1: Send safe samples automatically -- 2: Never send -- 3: Send all samples automatically +If consent was previously granted, Windows Defender submits the samples. Otherwise, Windows Defender +prompts the user for consent if the value of the **MAPSReporting** parameter isn't Disabled. ```yaml Type: SubmitSamplesConsentType @@ -2536,19 +2574,45 @@ Accept wildcard characters: False ### -ThreatIDDefaultAction_Actions -Specifies an array of the actions to take for the IDs specified by using the **ThreatIDDefaultAction_Ids** parameter. -The acceptable values for this parameter are: +Use the **ThreatIDDefaultAction_Ids** and **ThreatIDDefaultAction_Actions** parameters +together in the same command to specify the actions to take on the corresponding threats. + +- The **ThreatIDDefaultAction_Ids** parameter identifies the threat from the output of the +**Get-MpThreatCatalog** cmdlet. For example, the ThreatID value of the threat named +**Trojan:Win32/BlueFire** is `3229`. +- The **ThreatIDDefaultAction_Actions** parameter identifies the action to take on the corresponding +threat ID. Valid values are: + + • 1 or Clean + + • 2 or Quarantine + + • 3 or Remove + + • 6 or Allow + + • 8 or UserDefined + + • 9 or NoAction + + • 10 or Block + +To replace all existing values with the values you specify, use the following syntax: + +`Set-MpPreference -ThreatIDDefaultAction_Ids ThreatID1,ThreatID2,...ThreatIDN -ThreatIDDefaultAction_Actions Action1,Action2,...ActionN` + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -ThreatIDDefaultAction_Ids ThreatID1,ThreatID2,...ThreatIDN -ThreatIDDefaultAction_Actions Action1,Action2,...ActionN` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: -- 1: Clean -- 2: Quarantine -- 3: Remove -- 6: Allow -- 8: UserDefined -- 9: NoAction -- 10: Block +`Remove-MpPreference -ThreatIDDefaultAction_Ids ThreatID1,ThreatID2,...ThreatIDN -ThreatIDDefaultAction_Actions Action1,Action2,...ActionN` -> [!NOTE] -> A value of 0 (NULL) applies an action based on the Security Intelligence Update (SIU). This is the default value. +**Note**: When a threat and corresponding action aren't specified in the +**ThreatIDDefaultAction_Ids** and **ThreatIDDefaultAction_Actions** parameters, the action that's +applied to the threat is based on the Security Intelligence Update (SIU). By default, no threats or +corresponding actions are specified in the parameters. ```yaml Type: ThreatAction[] @@ -2565,8 +2629,45 @@ Accept wildcard characters: False ### -ThreatIDDefaultAction_Ids -Specifies an array of threat IDs. -This cmdlet modifies the default action for the threat IDs that you specify. +Use the **ThreatIDDefaultAction_Ids** and **ThreatIDDefaultAction_Actions** parameters +together in the same command to specify the actions to take on the corresponding threats. + +- The **ThreatIDDefaultAction_Ids** parameter identifies the threat from the output of the +**Get-MpThreatCatalog** cmdlet. For example, the ThreatID value of the threat named +**Trojan:Win32/BlueFire** is `3229`. +- The **ThreatIDDefaultAction_Actions** parameter identifies the action to take on the corresponding +threat ID. Valid values are: + + • 1 or Clean + + • 2 or Quarantine + + • 3 or Remove + + • 6 or Allow + + • 8 or UserDefined + + • 9 or NoAction + + • 10 or Block + +To replace all existing values with the values you specify, use the following syntax: + +`Set-MpPreference -ThreatIDDefaultAction_Ids ThreatID1,ThreatID2,...ThreatIDN -ThreatIDDefaultAction_Actions Action1,Action2,...ActionN` + +To add values without affecting existing values, use the **Add-MPPreference** cmdlet: + +`Add-MpPreference -ThreatIDDefaultAction_Ids ThreatID1,ThreatID2,...ThreatIDN -ThreatIDDefaultAction_Actions Action1,Action2,...ActionN` + +To remove values without affecting other existing values, use the **Remove-MPPreference** cmdlet: + +`Remove-MpPreference -ThreatIDDefaultAction_Ids ThreatID1,ThreatID2,...ThreatIDN -ThreatIDDefaultAction_Actions Action1,Action2,...ActionN` + +**Note**: When a threat and corresponding action aren't specified in the +**ThreatIDDefaultAction_Ids** and **ThreatIDDefaultAction_Actions** parameters, the action that's +applied to the threat is based on the Security Intelligence Update (SIU). By default, no threats or +corresponding actions are specified in the parameters. ```yaml Type: Int64[] @@ -2582,8 +2683,12 @@ Accept wildcard characters: False ### -ThrottleLimit -Specifies the maximum number of concurrent operations that can be established to run the cmdlet. -If this parameter is omitted or a value of `0` is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. +Specifies the maximum number of concurrent operations that can be established to run this cmdlet. + +A valid value is an integer from 0 to 2147483647. The default value is 0, which means PowerShell +calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are +running on the computer. + The throttle limit applies only to the current cmdlet, not to the session or to the computer. ```yaml @@ -2600,11 +2705,10 @@ Accept wildcard characters: False ### -ThrottleForScheduledScanOnly -A CPU usage limit can be applied to scheduled scans only, or to scheduled and custom scans. The default value applies a CPU usage limit to scheduled scans only. -The acceptable values for this parameter are: +Specifies whether a CPU usage limit applies scheduled scans only. Valid values are: -- 1 (Default) - If you enable this setting, CPU throttling will apply only to scheduled scans. -- 0 - If you disable this setting, CPU throttling will apply to scheduled and custom scans. +- $true: CPU throttling applies only to scheduled scans. This is the default value. +- $false: CPU throttling applies to scheduled and custom scans. ```yaml Type: Boolean @@ -2620,9 +2724,10 @@ Accept wildcard characters: False ### -UILockdown -Indicates whether to disable UI lockdown mode. -If you specify a value of $True, Windows Defender disables UI lockdown mode. -If you specify $False or do not specify a value, UI lockdown mode is enabled. +Specifies whether to disable UI lockdown mode. Valid values are: + +- $true: UI lockdown mode is disabled. +- $false: UI lockdown mode is enabled ```yaml Type: Boolean @@ -2638,12 +2743,18 @@ Accept wildcard characters: False ### -UnknownThreatDefaultAction -Specifies which automatic remediation action to take for an unknown level threat. -The acceptable values for this parameter are: + -- Quarantine -- Remove -- Ignore +Specifies the automatic remediation action to take for unknown level threats. Valid values are: + +- 1 or Clean +- 2 or Quarantine +- 3 or Remove +- 6 or Allow +- 8 or UserDefined +- 9 or NoAction +- 10 or Block ```yaml Type: ThreatAction From da779cacc22ac435e5347d6dd99cc29fadce3526 Mon Sep 17 00:00:00 2001 From: Chris Davis Date: Mon, 21 Oct 2024 10:56:23 -0700 Subject: [PATCH 83/98] Update Set-MpPreference.md --- .../defender/Set-MpPreference.md | 94 ++++++++++++++++--- 1 file changed, 80 insertions(+), 14 deletions(-) diff --git a/docset/winserver2022-ps/defender/Set-MpPreference.md b/docset/winserver2022-ps/defender/Set-MpPreference.md index 6d55a75763..51c6268f7f 100644 --- a/docset/winserver2022-ps/defender/Set-MpPreference.md +++ b/docset/winserver2022-ps/defender/Set-MpPreference.md @@ -193,12 +193,19 @@ Accept wildcard characters: False ### -AllowNetworkProtectionDownLevel -Specifies whether to allow network protection to be set to Enabled or Audit Mode on Windows versions -before 1709. Valid values are: +Specifies whether network protection on Windows Server 2012 R2 is controlled by the +**EnableNetworkProtection** parameter. Valid values are: -- $true: Allow network protection to be set to Enabled or Audit Mode on Windows v1709 or earlier. -- $false: Don't allow network protection to be set to Enabled or Audit Mode on Windows v1709 or -earlier. +- $true: Network protection is controlled by the **EnableNetworkProtection** +parameter (Enabled, Disabled, or AuditMode). + + **Tip**: For Windows Server 2016 or Windows Server 2012 R2, you also need to set the +**AllowNetworkProtectionOnWinServer** parameter to the value $true. + +- $false: Network protection isn't controlled by the **EnableNetworkProtection** +parameter. + +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). ```yaml Type: Boolean @@ -214,11 +221,19 @@ Accept wildcard characters: False ### -AllowNetworkProtectionOnWinServer -Specifies whether to allow network protection to be set to Enabled or Audit Mode for Windows Server. -Valid values are: +Specifies whether network protection on Windows Server is controlled by the +**EnableNetworkProtection** parameter. Valid values are: -- $true: Allow network protection to be set to Enabled or Audit Mode on Windows Server. -- $false: Don't allow network protection to be set to Enabled or Audit Mode on Windows Server. +- $true: Network protection is controlled by the **EnableNetworkProtection** +parameter (Enabled, Disabled, or AuditMode). + + **Tip**: For Windows Server 2016 or Windows Server 2012 R2, you also need to set the +**AllowNetworkProtectionDownLevel** parameter to the value $true. + +- $false: Network protection isn't controlled by the **EnableNetworkProtection** +parameter. + +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). ```yaml Type: Boolean @@ -509,6 +524,15 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -ControlledFolderAccessAllowedApplications "PathAndFileName1","PathAndFileName2",..."PathAndFileNameN"` +The value parameter is meaningful only if the value of the **EnableControlledFolderAccess** +parameter isn't `Disabled`. + +To specify additional folders that are protected by controlled folder access, use the +**ControlledFolderAccessProtectedFolders** parameter. + +For more information about controlled folder access, see [Protect important folders with controlled +folder access](/defender-endpoint/controlled-folders). + ```yaml Type: String[] Parameter Sets: (All) @@ -538,6 +562,15 @@ To remove values without affecting other existing values, use the **Remove-MPPre `Remove-MpPreference -ControlledFolderAccessAllowedApplications "Path1","Path2",..."PathN"` +The value parameter is meaningful only if the value of the **EnableControlledFolderAccess** +parameter isn't `Disabled`. + +To specify applications that are allowed to access controlled folders, use the +**ControlledFolderAccessAllowedApplications** parameter. + +For more information about controlled folder access, see [Protect important folders with controlled +folder access](/defender-endpoint/controlled-folders). + ```yaml Type: String[] Parameter Sets: (All) @@ -769,6 +802,8 @@ Network protection needs to inspect DNS traffic over TCP in the following scenar - To provide metadata for anti-malware behavior monitoring. - To allow for a DNS sinkhole if the **EnableDnsSinkhole** parameter is set to the value $true. +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: Boolean Parameter Sets: (All) @@ -836,6 +871,8 @@ Specifies whether to disable FTP parsing for network protection. Valid values ar - $true: FTP parsing for network protection is disabled. - $false: FTP parsing for network protection is enabled. +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: Boolean Parameter Sets: (All) @@ -905,6 +942,8 @@ Specifies whether Network Protection inspects only outbound connections. Valid v - $true: Network Protection inspects only outbound connections. - $false: Network Protection inspects inbound and outbound connections. This is the default value. +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: Boolean Parameter Sets: (All) @@ -944,6 +983,8 @@ Valid values are: - $true: Network protection telemetry is disabled. - $false: Network protection telemetry is enabled. This is the default value. +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: Boolean Parameter Sets: (All) @@ -1114,11 +1155,13 @@ Accept wildcard characters: False ### -DisableSmtpParsing -This setting disables SMTP parsing by Network Protection. Valid values are: +This setting disables SMTP parsing by network protection. Valid values are: - $true: SMTP parsing is disabled. - $false: SMTP parsing is enabled. This is the default value +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: Boolean Parameter Sets: (All) @@ -1135,8 +1178,10 @@ Accept wildcard characters: False Specifies whether to disable the inspection of SSH traffic. Valid values are: -- $true: Network Protection doesn't inspect SSH traffic. -- $false: Network Protection inspects SSH traffic. This is the default value. +- $true: Network protection doesn't inspect SSH traffic. +- $false: Network protection inspects SSH traffic. This is the default value. + +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). ```yaml Type: Boolean @@ -1163,6 +1208,8 @@ being made to a malicious website, and to provide metadata to behavior monitorin TLS connections to malicious websites can also be blocked if the value of the **EnableNetworkProtection** parameter is `Enabled`. +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: Boolean Parameter Sets: (All) @@ -1187,6 +1234,15 @@ Specifies the state for the controlled folder access feature. Valid values are: - BlockDiskModificationOnly - AuditDiskModificationOnly +To specify additional folders that are protected by controlled folder access, use the +**ControlledFolderAccessProtectedFolders** parameter. + +To specify applications that are allowed to access controlled folders, use the +**ControlledFolderAccessAllowedApplications** parameter. + +For more information about controlled folder access, see [Protect important folders with controlled +folder access](/defender-endpoint/controlled-folders). + ```yaml Type: ControlledFolderAccessType Parameter Sets: (All) @@ -1207,6 +1263,8 @@ warning. Valid values are: - $true: Network Protection blocks network traffic instead of displaying a warning. - $false: Network Protection displaying a warning. +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: Boolean Parameter Sets: (All) @@ -1231,6 +1289,8 @@ in conjunction with behavior monitoring, detect and sinkhole DNS exfiltration at DNS based malicious attacks. - $false: DNS sinkhole is disabled. +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: Boolean Parameter Sets: (All) @@ -1309,6 +1369,12 @@ and malware. Valid values are: - 1 or Enabled - 2 or AuditMode +**Tip**: Network protection on Windows Server also requires that the +**AllowNetworkProtectionOnWinServer** and (for Windows Server 2016 or Windows Server 2012 R2) +**AllowNetworkProtectionDownLevel** parameters are set to the value $true. + +For more information about network protection, see [Protect your network](/defender-endpoint/network-protection). + ```yaml Type: ASRRuleActionType Parameter Sets: (All) @@ -1329,8 +1395,8 @@ potentially higher inbound UDP bandwidth. Valid values are: - $true: UDP receive offload support in Network Protection is enabled. - $false: UDP receive offload support in Network Protection is disabled. -Starting with platform version `4.18.24030`, Microsoft will gradually move the default value from -disabled to enabled. +Starting with platform version `4.18.24030`, we're gradually moving the default value from +$false (disabled) to $true (enabled). ```yaml Type: Boolean From 424889d87785bcd77f75c4cedca4a2d6318716af Mon Sep 17 00:00:00 2001 From: Chris Davis Date: Mon, 21 Oct 2024 11:02:12 -0700 Subject: [PATCH 84/98] Update Set-MpPreference.md --- docset/winserver2022-ps/defender/Set-MpPreference.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docset/winserver2022-ps/defender/Set-MpPreference.md b/docset/winserver2022-ps/defender/Set-MpPreference.md index 51c6268f7f..1a29c9bc06 100644 --- a/docset/winserver2022-ps/defender/Set-MpPreference.md +++ b/docset/winserver2022-ps/defender/Set-MpPreference.md @@ -14,6 +14,10 @@ title: Set-MpPreference Configures preferences for Windows Defender scans and updates. +> [!NOTE] +> You need to run this cmdlet in an elevated PowerShell window (a PowerShell window you opened by +selecting **Run as administrator**). + ## SYNTAX ```powershell From 873c2883bd366ee6396cdae021030170b9291e33 Mon Sep 17 00:00:00 2001 From: Chris Davis Date: Mon, 21 Oct 2024 12:20:33 -0700 Subject: [PATCH 85/98] Update Set-MpPreference.md --- docset/winserver2022-ps/defender/Set-MpPreference.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docset/winserver2022-ps/defender/Set-MpPreference.md b/docset/winserver2022-ps/defender/Set-MpPreference.md index 1a29c9bc06..cc39b6de49 100644 --- a/docset/winserver2022-ps/defender/Set-MpPreference.md +++ b/docset/winserver2022-ps/defender/Set-MpPreference.md @@ -2011,8 +2011,7 @@ complete remediation. Type: Day Parameter Sets: (All) Aliases: rsd -Accepted values: Everyday, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, -Never +Accepted values: Everyday, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Never Required: False Position: Named From 0d7eb12141a91b18fe36811c1c3975c7f53d24e1 Mon Sep 17 00:00:00 2001 From: Chris Davis Date: Mon, 21 Oct 2024 13:22:06 -0700 Subject: [PATCH 86/98] Update Set-MpPreference.md --- docset/winserver2022-ps/defender/Set-MpPreference.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docset/winserver2022-ps/defender/Set-MpPreference.md b/docset/winserver2022-ps/defender/Set-MpPreference.md index cc39b6de49..9dae961c56 100644 --- a/docset/winserver2022-ps/defender/Set-MpPreference.md +++ b/docset/winserver2022-ps/defender/Set-MpPreference.md @@ -143,7 +143,8 @@ for high, moderate, and low threat levels. **REMEDIATION VALUES**: -The following table provides remediation action values for detected threats at low, medium, high, and severe alert levels. +The following table provides remediation action values for detected threats at low, medium, high, +and severe alert levels. |Value|Action| |---|---| @@ -172,7 +173,8 @@ This command configures preferences to check for definition updates every day. PS C:\> Set-MpPreference -SignatureScheduleTime 02:00:00 ``` -This command configures preferences to check for definition updates 120 minutes after midnight on days when it's scheduled to check. +This command configures preferences to check for definition updates 120 minutes after midnight on +days when it's scheduled to check. ## PARAMETERS @@ -197,8 +199,8 @@ Accept wildcard characters: False ### -AllowNetworkProtectionDownLevel -Specifies whether network protection on Windows Server 2012 R2 is controlled by the -**EnableNetworkProtection** parameter. Valid values are: +Specifies whether network protection on Windows Server 2016 or Windows Server 2012 R2 is controlled +by the **EnableNetworkProtection** parameter. Valid values are: - $true: Network protection is controlled by the **EnableNetworkProtection** parameter (Enabled, Disabled, or AuditMode). From 0f9a49a3dffbb987aeafc3242590edc61c1a4e2a Mon Sep 17 00:00:00 2001 From: Shujing Zhang Date: Tue, 5 Nov 2024 17:28:01 +0800 Subject: [PATCH 87/98] Delete .openpublishing.build.ps1 --- .openpublishing.build.ps1 | 17 ----------------- 1 file changed, 17 deletions(-) delete mode 100644 .openpublishing.build.ps1 diff --git a/.openpublishing.build.ps1 b/.openpublishing.build.ps1 deleted file mode 100644 index aadef76202..0000000000 --- a/.openpublishing.build.ps1 +++ /dev/null @@ -1,17 +0,0 @@ -param( - [string]$buildCorePowershellUrl = "https://opbuildstorageprod.blob.core.windows.net/opps1container/.openpublishing.buildcore.ps1", - [string]$parameters -) -# Main -$errorActionPreference = 'Stop' - -# Step-1: Download buildcore script to local -echo "download build core script to local with source url: $buildCorePowershellUrl" -$repositoryRoot = Split-Path -Parent $MyInvocation.MyCommand.Definition -$buildCorePowershellDestination = "$repositoryRoot\.openpublishing.buildcore.ps1" -Invoke-WebRequest $buildCorePowershellUrl -OutFile "$buildCorePowershellDestination" - -# Step-2: Run build core -echo "run build core script with parameters: $parameters" -& "$buildCorePowershellDestination" "$parameters" -exit $LASTEXITCODE From bff49fc9487cc3d5505ba081c4596bd6d57d9de0 Mon Sep 17 00:00:00 2001 From: albert Date: Fri, 8 Nov 2024 13:47:13 -0800 Subject: [PATCH 88/98] Broken links - JasonGerend --- .../winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md | 9 +-------- docset/winserver2012r2-ps/hpc/Set-HpcNode.md | 2 +- docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md | 2 +- docset/winserver2012r2-ps/hpc/Set-HpcPool.md | 2 +- docset/winserver2012r2-ps/hpc/Set-HpcTask.md | 4 ++-- docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md | 2 +- docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcJob.md | 4 ++-- docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcTask.md | 4 ++-- docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md | 2 +- docset/winserver2012r2-ps/hpc/Submit-HpcJob.md | 4 ++-- .../hpc/Validate-HpcIScsiStorageArray.md | 4 ++-- docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md | 2 +- 14 files changed, 19 insertions(+), 26 deletions(-) diff --git a/docset/winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md b/docset/winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md index 664c25b091..8738e4d6aa 100644 --- a/docset/winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md +++ b/docset/winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md @@ -42,14 +42,7 @@ PS C:\> Get-AdfsRelyingPartyTrust -Name "FabrikamApp" This command gets the property settings for the relying party trust named FabrikamApp. -### Example 2: Get property settings for a relying party trust by using an identifier -``` -PS C:\> Get-AdfsRelyingPartyTrust -Identifier "https://FabrikamApp.CentralServer.org" -``` - -This command gets the property settings for a relying party trust that has the identifier https://FabrikamApp.CentralServer.org. - -### Example 3: Get property settings for an updated relying party trust +### Example 2: Get property settings for an updated relying party trust ``` PS C:\> Get-AdfsRelyingPartyTrust | Where-Object{ $_.LastUpdateTime -le (get-date).subtract((new-timespan -hours 24))} ``` diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcNode.md b/docset/winserver2012r2-ps/hpc/Set-HpcNode.md index 66ed57e7df..0719c1e7d8 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcNode.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcNode.md @@ -340,7 +340,7 @@ You must be a cluster administrator to run this cmdlet successfully. ## RELATED LINKS -[Get-HpcNode](./Get-HpcNode.md) +[Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) [Remove-HpcNode](./Remove-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md b/docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md index dad527b258..3c48afd617 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md @@ -214,6 +214,6 @@ You must be a cluster administrator to run this cmdlet successfully. ## RELATED LINKS -[Get-HpcNode](./Get-HpcNode.md) +[Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) [Set-HpcNode](./Set-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcPool.md b/docset/winserver2012r2-ps/hpc/Set-HpcPool.md index 6bda893cfb..a21c87b2b3 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcPool.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcPool.md @@ -117,7 +117,7 @@ This cmdlet was introduced in HPC Pack 2008 R2 with Service Pack 2 (SP2). It is ## RELATED LINKS -[Add-HpcPool](./Add-HpcPool.md) +[Add-HpcPool](/powershell/module/hpcpack2019/add-hpcpool?view=hpc19-ps) [Get-HpcPool](./Get-HpcPool.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcTask.md b/docset/winserver2012r2-ps/hpc/Set-HpcTask.md index 6e3be5366a..6a18d9d89a 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcTask.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcTask.md @@ -663,9 +663,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-HpcTask](./Add-HpcTask.md) +[Add-HpcTask](/powershell/module/hpcpack2019/add-hpctask?view=hpc19-ps) -[Export-HpcTask](./Export-HpcTask.md) +[Export-HpcTask](/powershell/module/hpcpack2019/export-hpctask?view=hpc19-ps) [Get-HpcTask](./Get-HpcTask.md) diff --git a/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md b/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md index da3c77aeda..78099794fc 100644 --- a/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md +++ b/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md @@ -165,7 +165,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Get-HpcNode](./Get-HpcNode.md) +[Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) [Remove-HpcNode](./Remove-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md b/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md index d098ba88e5..0acb700214 100644 --- a/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md +++ b/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md @@ -111,7 +111,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-HpcNodeSet](./Add-HpcNodeSet.md) +[Add-HpcNodeSet](/powershell/module/hpcpack2019/add-hpcnodeset?view=hpc19-ps) [Remove-HpcNodeSet](./Remove-HpcNodeSet.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md b/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md index e02a6b7de0..f58406fa52 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md @@ -248,9 +248,9 @@ All other tasks are queued, including those that failed. ## RELATED LINKS -[Export-HpcJob](./Export-HpcJob.md) +[Export-HpcJob](/powershell/module/hpcpack2019/export-hpcjob?view=hpc19-ps) -[Get-HpcJob](./Get-HpcJob.md) +[Get-HpcJob](/powershell/module/hpcpack2019/get-hpcjob?view=hpc19-ps) [New-HpcJob](./New-HpcJob.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md b/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md index 2c4730b185..9ee7a77158 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md @@ -143,7 +143,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-HpcNodeSet](./Add-HpcNodeSet.md) +[Add-HpcNodeSet](/powershell/module/hpcpack2019/add-hpciscsistoragearray?view=hpc19-ps) [Remove-HpcNodeSet](./Remove-HpcNodeSet.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md b/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md index 35f45ee854..55d2c272e6 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md @@ -257,9 +257,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-HpcTask](./Add-HpcTask.md) +[Add-HpcTask](/powershell/module/hpcpack2019/add-hpctask?view=hpc19-ps) -[Export-HpcTask](./Export-HpcTask.md) +[Export-HpcTask](/powershell/module/hpcpack2019/export-hpctask?view=hpc19-ps) [Get-HpcTask](./Get-HpcTask.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md b/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md index 758d5f24d1..e9b8a65653 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md @@ -156,7 +156,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Export-HpcTestResult](./Export-HpcTestResult.md) +[Export-HpcTestResult](/powershell/module/hpcpack2016/export-hpctestresult?view=hpc16-ps) [Get-HpcTestResult](./Get-HpcTestResult.md) diff --git a/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md b/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md index ba9ead48c8..55956f1fcd 100644 --- a/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md +++ b/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md @@ -126,9 +126,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Export-HpcJob](./Export-HpcJob.md) +[Export-HpcJob](/powershell/module/hpcpack2019/export-hpcjob?view=hpc19-ps) -[Get-HpcJob](./Get-HpcJob.md) +[Get-HpcJob](/powershell/module/hpcpack2019/get-hpcjob?view=hpc19-ps) [New-HpcJob](./New-HpcJob.md) diff --git a/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md b/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md index a58c7aa395..289dda63a3 100644 --- a/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md +++ b/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md @@ -112,9 +112,9 @@ The message for this event provides more information about the failure. ## RELATED LINKS -[Add-HpcIScsiStorageArray](./Add-HpcIScsiStorageArray.md) +[Add-HpcIScsiStorageArray](/powershell/module/hpcpack2019/add-hpciscsistoragearray?view=hpc19-ps) -[Get-HpcIScsiStorageArray](./Get-HpcIScsiStorageArray.md) +[Get-HpcIScsiStorageArray](/powershell/module/hpcpack2019/get-hpciscsistoragearray?view=hpc19-ps) [Remove-HpcIScsiStorageArray](./Remove-HpcIScsiStorageArray.md) diff --git a/docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md b/docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md index 62ce603109..c2037b67c4 100644 --- a/docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md +++ b/docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md @@ -36,7 +36,7 @@ If a model is specified in the cmdlet after the BPA scan has been performed, the This cmdlet cannot be canceled after it has been started. Single-node XML is not supported by the BPA model schema. -For more information about what is supported by the BPA model schema, see the [Microsoft Baseline Configuration Analyzer Model Authoring Guide](https://www.microsoft.com/download/details.aspx?id=16475) on the [Microsoft Download Center](https://www.microsoft.com/download/details.aspx?id=16475). +For more information about what is supported by the BPA model schema, see the [Microsoft Baseline Configuration Analyzer Model Authoring Guide](https://www.microsoft.com/download?id=16475) on the [Microsoft Download Center](https://www.microsoft.com/download?id=16475). ## EXAMPLES From 404e7dbc361f69d31ba8e6ec59912473911b271a Mon Sep 17 00:00:00 2001 From: albert Date: Fri, 8 Nov 2024 15:05:19 -0800 Subject: [PATCH 89/98] Broken links - JasonGerend --- docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md | 4 ++-- docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md | 2 +- docset/winserver2012r2-ps/hpc/Set-HpcNode.md | 4 ++-- docset/winserver2012r2-ps/hpc/Set-HpcPool.md | 4 ++-- docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md | 4 ++-- docset/winserver2012r2-ps/hpc/Set-HpcTask.md | 2 +- docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md | 6 +++--- docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md | 4 ++-- docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md | 2 +- docset/winserver2012r2-ps/hpc/Start-HpcNode.md | 6 +++--- docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcJob.md | 4 ++-- docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcTask.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md | 4 ++-- docset/winserver2012r2-ps/hpc/Submit-HpcJob.md | 4 ++-- .../winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md | 4 ++-- 18 files changed, 31 insertions(+), 31 deletions(-) diff --git a/docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md b/docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md index c56d39968a..42e2be1d3e 100644 --- a/docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md +++ b/docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md @@ -66,6 +66,6 @@ This cmdlet was introduced in HPC Pack 2008 R2 with Service Pack 2 (SP2). It is [New-HpcSoftCard](./New-HpcSoftCard.md) -[Remove-HpcJobCredential](./Remove-HpcJobCredential.md) +[Remove-HpcJobCredential](/powershell/module/hpcpack2016/remove-hpcjobcredential?view=hpc16-ps) -[Set-HpcJobCredential](./Set-HpcJobCredential.md) +[Set-HpcJobCredential](/powershell/module/hpcpack2019/set-hpcjobcredential?view=hpc19-ps) diff --git a/docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md b/docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md index 1bd67d39b9..ebd44728af 100644 --- a/docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md +++ b/docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md @@ -85,4 +85,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Get-HpcJobCredential](./Get-HpcJobCredential.md) -[Set-HpcJobCredential](./Set-HpcJobCredential.md) +[Set-HpcJobCredential](/powershell/module/hpcpack2019/set-hpcjobcredential?view=hpc19-ps) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcNode.md b/docset/winserver2012r2-ps/hpc/Set-HpcNode.md index 0719c1e7d8..d7c54ab754 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcNode.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcNode.md @@ -342,9 +342,9 @@ You must be a cluster administrator to run this cmdlet successfully. [Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) -[Remove-HpcNode](./Remove-HpcNode.md) +[Remove-HpcNode](/powershell/module/hpcpack2016/remove-hpcnode?view=hpc16-ps) -[Restart-HpcNode](./Restart-HpcNode.md) +[Restart-HpcNode](/powershell/module/hpcpack2019/restart-hpcnode?view=hpc19-ps) [Shutdown-HpcNode](./Shutdown-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcPool.md b/docset/winserver2012r2-ps/hpc/Set-HpcPool.md index a21c87b2b3..2c1e86cbe0 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcPool.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcPool.md @@ -119,6 +119,6 @@ This cmdlet was introduced in HPC Pack 2008 R2 with Service Pack 2 (SP2). It is [Add-HpcPool](/powershell/module/hpcpack2019/add-hpcpool?view=hpc19-ps) -[Get-HpcPool](./Get-HpcPool.md) +[Get-HpcPool](/powershell/module/hpcpack2019/get-hpcpool?view=hpc19-ps) -[Remove-HpcPool](./Remove-HpcPool.md) +[Remove-HpcPool](/powershell/module/hpcpack2019/remove-hpcpool?view=hpc19-ps) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md b/docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md index e47bd6b686..fdee7b4603 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md @@ -132,8 +132,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Remove-HpcSoaCredential](./Remove-HpcSoaCredential.md) +[Remove-HpcSoaCredential](/powershell/module/hpcpack2016/remove-hpcsoacredential?view=hpc16-ps) -[Set-HpcJobCredential](./Set-HpcJobCredential.md) +[Set-HpcJobCredential](/powershell/module/hpcpack2019/set-hpcjobcredential?view=hpc19-ps) [Set-HpcTestCredential](./Set-HpcTestCredential.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcTask.md b/docset/winserver2012r2-ps/hpc/Set-HpcTask.md index 6a18d9d89a..32207f4308 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcTask.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcTask.md @@ -667,6 +667,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Export-HpcTask](/powershell/module/hpcpack2019/export-hpctask?view=hpc19-ps) -[Get-HpcTask](./Get-HpcTask.md) +[Get-HpcTask](/powershell/module/hpcpack2019/get-hpctask?view=hpc19-ps) [Stop-HpcTask](./Stop-HpcTask.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md b/docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md index e5714a831d..ba73d7ffb7 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md @@ -144,10 +144,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Invoke-HpcTest](./Invoke-HpcTest.md) +[Invoke-HpcTest](/powershell/module/hpcpack2019/invoke-hpctest?view=hpc19-ps) -[Remove-HpcTestCredential](./Remove-HpcTestCredential.md) +[Remove-HpcTestCredential](/powershell/module/hpcpack2019/remove-hpctestcredential?view=hpc19-ps) -[Set-HpcJobCredential](./Set-HpcJobCredential.md) +[Set-HpcJobCredential](/powershell/module/hpcpack2019/set-hpcjobcredential?view=hpc19-ps) [Set-HpcSoaCredential](./Set-HpcSoaCredential.md) diff --git a/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md b/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md index 78099794fc..7d124d422f 100644 --- a/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md +++ b/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md @@ -167,9 +167,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) -[Remove-HpcNode](./Remove-HpcNode.md) +[Remove-HpcNode](/powershell/module/hpcpack2016/remove-hpcnode?view=hpc16-ps) -[Restart-HpcNode](./Restart-HpcNode.md) +[Restart-HpcNode](/powershell/module/hpcpack2019/restart-hpcnode?view=hpc19-ps) [Set-HpcNode](./Set-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md b/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md index a9377a3e62..ac7298f3b1 100644 --- a/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md +++ b/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md @@ -137,7 +137,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Remove-HpcAzureNode](./Remove-HpcAzureNode.md) +[Remove-HpcAzureNode](/powershell/module/hpcpack2019/remove-hpcazurenode?view=hpc19-ps) [Start-HpcNodeSet](./Start-HpcNodeSet.md) diff --git a/docset/winserver2012r2-ps/hpc/Start-HpcNode.md b/docset/winserver2012r2-ps/hpc/Start-HpcNode.md index 94f1ca3c3d..333515f5c6 100644 --- a/docset/winserver2012r2-ps/hpc/Start-HpcNode.md +++ b/docset/winserver2012r2-ps/hpc/Start-HpcNode.md @@ -117,11 +117,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Get-HpcNode](./Get-HpcNode.md) +[Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) -[Remove-HpcNode](./Remove-HpcNode.md) +[Remove-HpcNode](/powershell/module/hpcpack2016/remove-hpcnode?view=hpc16-ps) -[Restart-HpcNode](./Restart-HpcNode.md) +[Restart-HpcNode](/powershell/module/hpcpack2019/restart-hpcnode?view=hpc19-ps) [Set-HpcNode](./Set-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md b/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md index 0acb700214..019a99edba 100644 --- a/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md +++ b/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md @@ -113,7 +113,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Add-HpcNodeSet](/powershell/module/hpcpack2019/add-hpcnodeset?view=hpc19-ps) -[Remove-HpcNodeSet](./Remove-HpcNodeSet.md) +[Remove-HpcNodeSet](/powershell/module/hpcpack2016/remove-hpcnodeset?view=hpc16-ps) [Start-HpcAzureNode](./Start-HpcAzureNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md b/docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md index 159055cdda..a65c49b14b 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md @@ -171,7 +171,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Remove-HpcAzureNode](./Remove-HpcAzureNode.md) +[Remove-HpcAzureNode](/powershell/module/hpcpack2019/remove-hpcazurenode?view=hpc19-ps) [Start-HpcAzureNode](./Start-HpcAzureNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md b/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md index f58406fa52..b0da30268b 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md @@ -252,8 +252,8 @@ All other tasks are queued, including those that failed. [Get-HpcJob](/powershell/module/hpcpack2019/get-hpcjob?view=hpc19-ps) -[New-HpcJob](./New-HpcJob.md) +[New-HpcJob](/powershell/module/hpcpack2019/new-hpcjob?view=hpc19-ps) -[Set-HpcJob](./Set-HpcJob.md) +[Set-HpcJob](/powershell/module/hpcpack2019/set-hpcjob?view=hpc19-ps) [Submit-HpcJob](./Submit-HpcJob.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md b/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md index 9ee7a77158..6d5587e5da 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md @@ -145,7 +145,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Add-HpcNodeSet](/powershell/module/hpcpack2019/add-hpciscsistoragearray?view=hpc19-ps) -[Remove-HpcNodeSet](./Remove-HpcNodeSet.md) +[Remove-HpcNodeSet](/powershell/module/hpcpack2016/remove-hpcnodeset?view=hpc16-ps) [Start-HpcNodeSet](./Start-HpcNodeSet.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md b/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md index 55d2c272e6..10d0101262 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md @@ -261,7 +261,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Export-HpcTask](/powershell/module/hpcpack2019/export-hpctask?view=hpc19-ps) -[Get-HpcTask](./Get-HpcTask.md) +[Get-HpcTask](/powershell/module/hpcpack2019/get-hpctask?view=hpc19-ps) [Set-HpcTask](./Set-HpcTask.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md b/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md index e9b8a65653..3a4ad5f042 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md @@ -158,6 +158,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Export-HpcTestResult](/powershell/module/hpcpack2016/export-hpctestresult?view=hpc16-ps) -[Get-HpcTestResult](./Get-HpcTestResult.md) +[Get-HpcTestResult](/powershell/module/hpcpack2019/get-hpctestresult?view=hpc19-ps) -[Invoke-HpcTest](./Invoke-HpcTest.md) +[Invoke-HpcTest](/powershell/module/hpcpack2019/invoke-hpctest?view=hpc19-ps) diff --git a/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md b/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md index 55956f1fcd..95d0d98bc5 100644 --- a/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md +++ b/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md @@ -130,8 +130,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Get-HpcJob](/powershell/module/hpcpack2019/get-hpcjob?view=hpc19-ps) -[New-HpcJob](./New-HpcJob.md) +[New-HpcJob](/powershell/module/hpcpack2019/new-hpcjob?view=hpc19-ps) -[Set-HpcJob](./Set-HpcJob.md) +[Set-HpcJob](/powershell/module/hpcpack2019/set-hpcjob?view=hpc19-ps) [Stop-HpcJob](./Stop-HpcJob.md) diff --git a/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md b/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md index 289dda63a3..7364f7653c 100644 --- a/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md +++ b/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md @@ -116,6 +116,6 @@ The message for this event provides more information about the failure. [Get-HpcIScsiStorageArray](/powershell/module/hpcpack2019/get-hpciscsistoragearray?view=hpc19-ps) -[Remove-HpcIScsiStorageArray](./Remove-HpcIScsiStorageArray.md) +[Remove-HpcIScsiStorageArray](/powershell/module/hpcpack2019/remove-hpciscsistoragearray?view=hpc19-ps) -[Set-HpcIScsiStorageArray](./Set-HpcIScsiStorageArray.md) +[Set-HpcIScsiStorageArray](/powershell/module/hpcpack2019/set-hpciscsistoragearray?view=hpc19-ps) From 774d236a8c922a6c14d755d664eea640c57a8abe Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 12 Nov 2024 12:11:00 -0500 Subject: [PATCH 90/98] Updated cmdlets and parameters --- .../smbshare/Block-SmbClientAccessToServer.md | 289 +++++++++++++ .../smbshare/Get-SmbClientAccessToServer.md | 199 +++++++++ .../Get-SmbClientCertificateMapping.md | 291 +++++++++++++ .../Get-SmbServerCertificateMapping.md | 135 +++++- .../smbshare/Get-SmbServerConfiguration.md | 28 +- .../winserver2022-ps/smbshare/Get-SmbShare.md | 215 ++++++---- .../smbshare/Grant-SmbClientAccessToServer.md | 290 +++++++++++++ .../New-SmbClientCertificateMapping.md | 322 +++++++++++++++ .../New-SmbServerCertificateMapping.md | 144 ++++++- .../winserver2022-ps/smbshare/New-SmbShare.md | 59 +-- .../Remove-SmbClientCertificateMapping.md | 385 ++++++++++++++++++ .../Remove-SmbServerCertificateMapping.md | 182 +++++++-- .../smbshare/Remove-SmbShare.md | 133 +++--- .../smbshare/Reset-SmbServerConfiguration.md | 15 +- .../Revoke-SmbClientAccessToServer.md | 262 ++++++++++++ .../Set-SmbClientCertificateMapping.md | 244 +++++++++++ .../Set-SmbServerCertificateMapping.md | 153 +++++-- .../smbshare/Set-SmbServerConfiguration.md | 1 + .../winserver2022-ps/smbshare/Set-SmbShare.md | 176 ++++---- .../Unblock-SmbClientAccessToServer.md | 269 ++++++++++++ 20 files changed, 3405 insertions(+), 387 deletions(-) create mode 100644 docset/winserver2022-ps/smbshare/Block-SmbClientAccessToServer.md create mode 100644 docset/winserver2022-ps/smbshare/Get-SmbClientAccessToServer.md create mode 100644 docset/winserver2022-ps/smbshare/Get-SmbClientCertificateMapping.md create mode 100644 docset/winserver2022-ps/smbshare/Grant-SmbClientAccessToServer.md create mode 100644 docset/winserver2022-ps/smbshare/New-SmbClientCertificateMapping.md create mode 100644 docset/winserver2022-ps/smbshare/Remove-SmbClientCertificateMapping.md create mode 100644 docset/winserver2022-ps/smbshare/Revoke-SmbClientAccessToServer.md create mode 100644 docset/winserver2022-ps/smbshare/Set-SmbClientCertificateMapping.md create mode 100644 docset/winserver2022-ps/smbshare/Unblock-SmbClientAccessToServer.md diff --git a/docset/winserver2022-ps/smbshare/Block-SmbClientAccessToServer.md b/docset/winserver2022-ps/smbshare/Block-SmbClientAccessToServer.md new file mode 100644 index 0000000000..26191aee75 --- /dev/null +++ b/docset/winserver2022-ps/smbshare/Block-SmbClientAccessToServer.md @@ -0,0 +1,289 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbClientAccessToServer.cdxml-help.xml +Module Name: SmbShare +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/block-smbclientaccesstoserver?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Block-SmbClientAccessToServer +--- + +# Block-SmbClientAccessToServer + +## SYNOPSIS +Blocks SMB client access to a specified server. + +## SYNTAX + +### Query + +``` +Block-SmbClientAccessToServer [-Name] -IdentifierType + -Identifier [-Description ] [-Force] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] [] +``` + +### InputObject + +``` +Block-SmbClientAccessToServer -InputObject -IdentifierType + -Identifier [-Description ] [-Force] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Block-SmbClientAccessToServer` cmdlet is used to prevent SMB clients from accessing a +specified server when using SMB over QUIC client access control. When you run this cmdlet, all SMB +client connections to the specified server will be terminated, and no new connections will be +allowed until the block is lifted. To unblock access to the server, use the +`Unblock-SmbClientAccessToServer` cmdlet. + +## EXAMPLES + +### Example 1: Block SMB client access to a server + +```powershell +$params = @{ + Name = "Server01" + IdentifierType = "ISSUER" + Identifier = "CN=MyCertificateIssuer" + Force = $true +} +Block-SmbClientAccessToServer @params +``` + +This command blocks SMB client access to a server named `Server01` for the based on the client's +certificate. This command runs without prompting for confirmation as the **Force** parameter is set +to `$true`. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or +[Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description + +Used to provide a description of the rule being added to the server's firewall when you use the +`Block-SmbClientAccessToServer` cmdlet. This can be useful if you need to keep track of why SMB +client access to a server has been blocked, or if you need to provide additional information about +the block for documentation purposes. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Identifier + +Specifies the identity of the client that is being granted access to the SMB server. This parameter +takes a string value that represents the identity of the client. The format of the string value +will depend on the **IdentifierType** parameter that you're using. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IdentifierType + +Specifies the type of identifier that you're using to identify a client. The valid values for the +**IdentifierType** parameter are: + +- SHA256 +- ISSUER + +If you're using the `SHA256` identifier type, you're specifying a hash value that uniquely +identifies the client. If you're using the `ISSUER` identifier type, you're specifying the issuer +of the client's certificate. + +```yaml +Type: IdentifierType +Parameter Sets: (All) +Aliases: +Accepted values: SHA256, ISSUER + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject + +Specifies the input object that's used in a pipeline command. + +```yaml +Type: CimInstance[] +Parameter Sets: InputObject +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -Name + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. + +```yaml +Type: String[] +Parameter Sets: Query +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. + +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.Management.Infrastructure.CimInstance[] + +## OUTPUTS + +### Microsoft.Management.Infrastructure.CimInstance[] + +## NOTES + +## RELATED LINKS + +[Get-SmbClientAccessToServer](Get-SmbClientAccessToServer.md) + +[Grant-SmbClientAccessToServer](Grant-SmbClientAccessToServer.md) + +[Revoke-SmbClientAccessToServer](Revoke-SmbClientAccessToServer.md) + +[Unblock-SmbClientAccessToServer](Unblock-SmbClientAccessToServer.md) diff --git a/docset/winserver2022-ps/smbshare/Get-SmbClientAccessToServer.md b/docset/winserver2022-ps/smbshare/Get-SmbClientAccessToServer.md new file mode 100644 index 0000000000..d840f0e478 --- /dev/null +++ b/docset/winserver2022-ps/smbshare/Get-SmbClientAccessToServer.md @@ -0,0 +1,199 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbClientAccessToServer.cdxml-help.xml +Module Name: SmbShare +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/get-smbclientaccesstoserver?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-SmbClientAccessToServer +--- + +# Get-SmbClientAccessToServer + +## SYNOPSIS +Gets information about SMB client access to a specified server. + +## SYNTAX + +### Query + +``` +Get-SmbClientAccessToServer [-Name] [-CimSession ] [-ThrottleLimit ] + [-AsJob] [-WhatIf] [-Confirm] [] +``` + +### InputObject + +``` +Get-SmbClientAccessToServer -InputObject [-CimSession ] + [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Get-SmbClientAccessToServer` cmdlet is used to retrieve information about SMB client access to +a specified server. When you run this cmdlet, it'll return a list of allowed and blocked +connections for SMB over QUIC client access control. + +## EXAMPLES + +### Example 1: Retrieve client access information + +```powershell +Get-SmbClientAccessToServer -Name "Server01" +``` + +This command retrieves the SMB client access information for a device named `Server01`. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or +[Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject + +Specifies the input object that's used in a pipeline command. + +```yaml +Type: CimInstance[] +Parameter Sets: InputObject +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -Name + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. + +```yaml +Type: String[] +Parameter Sets: Query +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. + +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.Management.Infrastructure.CimInstance[] + +## OUTPUTS + +### Microsoft.Management.Infrastructure.CimInstance[] + +## NOTES + +## RELATED LINKS + +[Block-SmbClientAccessToServer](Block-SmbClientAccessToServer.md) + +[Grant-SmbClientAccessToServer](Grant-SmbClientAccessToServer.md) + +[Revoke-SmbClientAccessToServer](Revoke-SmbClientAccessToServer.md) + +[Unblock-SmbClientAccessToServer](Unblock-SmbClientAccessToServer.md) diff --git a/docset/winserver2022-ps/smbshare/Get-SmbClientCertificateMapping.md b/docset/winserver2022-ps/smbshare/Get-SmbClientCertificateMapping.md new file mode 100644 index 0000000000..ff46c3fa70 --- /dev/null +++ b/docset/winserver2022-ps/smbshare/Get-SmbClientCertificateMapping.md @@ -0,0 +1,291 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbClientCertificateMapping.cdxml-help.xml +Module Name: SmbShare +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/get-smbclientcertificatemapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Get-SmbClientCertificateMapping +--- + +# Get-SmbClientCertificateMapping + +## SYNOPSIS +Retrieves the client certificate mappings for the Server Message Block (SMB) protocol. + +## SYNTAX + +``` +Get-SmbClientCertificateMapping [[-Namespace] ] [[-Subject] ] + [-IssuerName ] [-Thumbprint ] [-DisplayName ] [-StoreName ] + [-Type ] [-Flags ] [-IncludeHidden] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [] +``` + +## DESCRIPTION + +The `Get-SmbClientCertificateMapping` cmdlet retrieves the client certificate mappings for the SMB +protocol, such as when using SMB over QUIC. These mappings are used to authenticate clients that +connect to SMB servers using certificates. + +## EXAMPLES + +### Example 1: Retrieve all certificate mappings for a specific store + +```powershell +Get-SmbClientCertificateMapping -StoreName "My" +``` + +This retrieves all certificate mappings that have been stored in a specific certificate store. + +### Example 2: Retrieve a specific certificate mapping by display name + +```powershell +Get-SmbClientCertificateMapping -DisplayName "MyCertificateMapping" +``` + +This retrieves a specific certificate mapping by its display name. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DisplayName + +Specifies the friendly name of the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Flags + +Specifies if `NamedPipes` are enabled for SMB over QUIC. The acceptable values for this parameter +are: + +- `None`: Remove all flags +- `AllowNamedPipe`: Enable use of named pipes in SMB over QUIC connections for this mapping (off by + default, overrides value of the **RestrictNamedPipeAccessOverQuic** parameter) +- `DefaultCert`: Not used + +```yaml +Type: Flags[] +Parameter Sets: (All) +Aliases: +Accepted values: None, AllowNamedPipe, DefaultCert + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -IncludeHidden + +Not used. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IssuerName + +Filters the certificate mappings based on the issuer name of the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Namespace + +Specifies the namespace in which the certificate mappings are located. By default, the cmdlet +searches in the `root\cimv2\Security\MicrosoftTlsCertificateMappingProvider` namespace. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -StoreName + +Specifies the path to the certificate store for the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Subject + +Specifies the subject name of the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 2 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Thumbprint + +Specifies the thumbprint value of the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Type + +Specifies the type of certificate mapping. The acceptable value for this parameter is: + +`QUIC`: Certificate mapping is for SMB over QUIC. + +```yaml +Type: Type[] +Parameter Sets: (All) +Aliases: +Accepted values: QUIC + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbClientCertificateMapping.Type[] + +### Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbClientCertificateMapping.Flags[] + +## OUTPUTS + +### Microsoft.Management.Infrastructure.CimInstance + +### Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/SMB/MSFT_SmbClientCertificateMapping + +## NOTES + +## RELATED LINKS + +[New-SmbClientCertificateMapping](New-SmbClientCertificateMapping.md) + +[Remove-SmbClientCertificateMapping](Remove-SmbClientCertificateMapping.md) + +[Set-SmbClientCertificateMapping](Set-SmbClientCertificateMapping.md) diff --git a/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md index 997c4e3d00..bcffedce4c 100644 --- a/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbServerCertificateMapping.cdxml-help.xml Module Name: SmbShare -ms.date: 08/31/2021 +ms.date: 02/22/2024 online version: https://learn.microsoft.com/powershell/module/smbshare/get-smbservercertificatemapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Get-SmbServerCertificateMapping @@ -16,34 +16,55 @@ Retrieves a certificate associated with the SMB server for SMB over QUIC. ## SYNTAX ``` -Get-SmbServerCertificateMapping [[-Name] ] [[-Subject] ] [-Thumbprint ] - [-DisplayName ] [-StoreName ] [-Type ] [-Flags ] [-IncludeHidden] - [-CimSession ] [-ThrottleLimit ] [-AsJob] [] +Get-SmbServerCertificateMapping [[-Name] ] [[-Subject] ] + [-Thumbprint ] [-DisplayName ] [-StoreName ] [-Type ] + [-Flags ] [-RequireClientAuthentication ] + [-SkipClientCertificateAccessCheck ] [-IncludeHidden] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [] ``` ## DESCRIPTION -The **Get-SmbServerCertificateMapping** cmdlet retrieves the certificates associated with the SMB server for SMB over QUIC on ‘Windows Server 2022 Datacenter: Azure Edition’. This cmdlet is not used for Windows or other Windows Server editions. For more information, review [SMB over QUIC](https://aka.ms/smboverquic). + +The `Get-SmbServerCertificateMapping` cmdlet retrieves the certificates associated with the SMB +server for SMB over QUIC. For more information, see [SMB over QUIC](https://aka.ms/smboverquic). + +> [!NOTE] +> +> - The **RequireClientAuthentication** and **SkipClientCertificateAccessCheck** parameters are only +> supported in Windows Server Datacenter: Azure Edition. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client +> certificate validation and access control checks. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is also set to `$true`, the server will perform client +> certificate validation but no access control checks. ## EXAMPLES ### Example 1 - Retrieve the certificate mapped to two SMB over QUIC server names -This command retrieves the certificate mapped to two SMB over QUIC server names that clients can connect to, `fs2.contoso.com` and `2022-ae-02.corp.contoso.com`. +This command retrieves the certificate mapped to two SMB over QUIC server names that clients can +connect to, `fs2.contoso.com` and `2022-ae-02.corp.contoso.com`. ```powershell -PS C:\> Get-SmbServerCertificateMapping +Get-SmbServerCertificateMapping ``` + ```output -Name Subject Thumbprint DisplayName StoreName Type Flags ----- ------- ---------- ----------- --------- ---- ----- -2022-ae-02.corp.contoso.com CN=2022-ae-02 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F 2022-ae-02 My QUIC None +Name Subject Thumbprint DisplayName StoreName Type Flags +---- ------- ---------- ----------- --------- ---- ----- +2022-ae-02.corp.contoso.com CN=2022-ae-02 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F 2022-ae-02 My QUIC None fs2.contoso.com CN=2022-ae-02 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F 2022-ae-02 My QUIC None ``` ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. ```yaml Type: SwitchParameter @@ -58,7 +79,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a [`New-CimSession`](/powershell/module/cimcmdlets/new-cimsession) or [`Get-CimSession`](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [`New-CimSession`](/powershell/module/cimcmdlets/new-cimsession) or +[`Get-CimSession`](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -73,6 +98,7 @@ Accept wildcard characters: False ``` ### -DisplayName + Specifies a friendly name to display for the mapping. ```yaml @@ -88,12 +114,14 @@ Accept wildcard characters: False ``` ### -Flags -Specifies if `NamedPipes` are enabled for SMB over QUIC. The acceptable values for this parameter are: +Specifies if `NamedPipes` are enabled for SMB over QUIC. The acceptable values for this parameter +are: -- `None:` Remove all flags -- `AllowNamedPipe:` Enable use of named pipes in SMB over QUIC connections for this mapping (off by default, overrides value of RestrictNamedPipeAccessOverQuic) -- `DefaultCert:` Not used +- `None`: Remove all flags +- `AllowNamedPipe`: Enable use of named pipes in SMB over QUIC connections for this mapping (off by + default, overrides value of the **RestrictNamedpipeAccessOverQuic** parameter) +- `DefaultCert`: Not used ```yaml Type: Flags[] @@ -109,6 +137,7 @@ Accept wildcard characters: False ``` ### -IncludeHidden + Not used. ```yaml @@ -124,7 +153,9 @@ Accept wildcard characters: False ``` ### -Name -Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate’s subject name or an entry in the certificate’s subject alternative names. + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. ```yaml Type: String[] @@ -138,7 +169,49 @@ Accept pipeline input: True (ByPropertyName) Accept wildcard characters: False ``` +### -RequireClientAuthentication + +Specifies whether client authentication is required for connections to the server. When this +parameter is set to `$true`, clients must present a valid certificate to connect to the server. +When it is set to `$false`, clients can connect without presenting a certificate. + +```yaml +Type: Boolean[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -SkipClientCertificateAccessCheck + +Specifies whether the server should skip the check for client certificate access when a client +connects. When this parameter is set to `$true`, the server will not perform the access control +checks based on the client certificates. This can be useful in scenarios where the server is acting +as a gateway or proxy, and does not need to perform full certificate validation. + +However, it can also increase the risk of security breaches. When this parameter is set to +`$false`, the server will check whether the client has access to the certificate it presents before +allowing the client to connect. + +```yaml +Type: Boolean[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + ### -StoreName + Specifies the path to the certificate store for the certificate. ```yaml @@ -154,6 +227,7 @@ Accept wildcard characters: False ``` ### -Subject + Specifies the subject name of the certificate. ```yaml @@ -169,7 +243,12 @@ Accept wildcard characters: False ``` ### -ThrottleLimit -Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. ```yaml Type: Int32 @@ -184,6 +263,7 @@ Accept wildcard characters: False ``` ### -Thumbprint + Specifies the thumbprint value of the certificate. ```yaml @@ -199,9 +279,10 @@ Accept wildcard characters: False ``` ### -Type -Specifies the type of certificate mapping. The acceptable value for this parameter is: -`QUIC:` Certificate mapping is for SMB over QUIC. +Specifies the type of certificate mapping. The acceptable value for this parameter is: + +- `QUIC`: Certificate mapping is for SMB over QUIC. ```yaml Type: Type[] @@ -217,7 +298,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -227,6 +312,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ### Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbServerCertificateMapping.Flags[] +### System.Boolean[] + ## OUTPUTS ### Microsoft.Management.Infrastructure.CimInstance @@ -236,3 +323,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +[New-SmbServerCertificateMapping](New-SmbServerCertificateMapping.md) + +[Remove-SmbServerCertificateMapping](Remove-SmbServerCertificateMapping.md) + +[Set-SmbServerCertificateMapping](Set-SmbServerCertificateMapping.md) diff --git a/docset/winserver2022-ps/smbshare/Get-SmbServerConfiguration.md b/docset/winserver2022-ps/smbshare/Get-SmbServerConfiguration.md index f030032ce0..b624d9e474 100644 --- a/docset/winserver2022-ps/smbshare/Get-SmbServerConfiguration.md +++ b/docset/winserver2022-ps/smbshare/Get-SmbServerConfiguration.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbServerConfiguration.cdxml-help.xml Module Name: SmbShare -ms.date: 06/23/2022 +ms.date: 02/22/2024 online version: https://learn.microsoft.com/powershell/module/smbshare/get-smbserverconfiguration?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Get-SmbServerConfiguration @@ -22,7 +22,8 @@ Get-SmbServerConfiguration [-CimSession ] [-ThrottleLimit ] ## DESCRIPTION -The `Get-SmbServerConfiguration` cmdlet retrieves the Server Message Block (SMB) server configuration. +The `Get-SmbServerConfiguration` cmdlet retrieves the Server Message Block (SMB) server +configuration. ## EXAMPLES @@ -32,7 +33,7 @@ The `Get-SmbServerConfiguration` cmdlet retrieves the Server Message Block (SMB) Get-SmbServerConfiguration ``` -```Output +```output AnnounceComment : AnnounceServer : False AsynchronousCredits : 512 @@ -83,12 +84,6 @@ EncryptionCiphers : AES_128_GCM, AES_128_CCM, AES_256_GCM, This command retrieves the SMB server configuration. -> [!NOTE] -> The **EncryptionCiphers** parameter is available beginning with 2022-06 Cumulative Update for -> Microsoft server operating system version 21H2 for x64-based Systems -> ([KB5014665](https://support.microsoft.com/help/5014665)), and Cumulative Update for Windows 11, -> version 22H2 ([KB5014668](https://support.microsoft.com/help/5014668)). - ## PARAMETERS ### -AsJob @@ -111,8 +106,8 @@ Accept wildcard characters: False ### -CimSession Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session -object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) -or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the current session on the local computer. ```yaml @@ -158,15 +153,14 @@ Aliases: cf Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. +Shows what would happen if the cmdlet runs. The cmdlet isn't run. ```yaml Type: SwitchParameter @@ -185,7 +179,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -201,4 +195,6 @@ The **MSFT_SmbServerConfiguration** object represents the configuration of the S ## RELATED LINKS -[Set-SmbServerConfiguration](./Set-SmbServerConfiguration.md) +[Reset-SmbServerConfiguration](Reset-SmbServerConfiguration.md) + +[Set-SmbServerConfiguration](Set-SmbServerConfiguration.md) diff --git a/docset/winserver2022-ps/smbshare/Get-SmbShare.md b/docset/winserver2022-ps/smbshare/Get-SmbShare.md index a5f4a87637..34bf76bd90 100644 --- a/docset/winserver2022-ps/smbshare/Get-SmbShare.md +++ b/docset/winserver2022-ps/smbshare/Get-SmbShare.md @@ -26,116 +26,127 @@ Get-SmbShare [[-Name] ] [[-ScopeName] ] [-Scoped ``` ## DESCRIPTION -The **Get-SmbShare** cmdlet retrieves objects that represent the Server Message Block (SMB) shares being displayed by the computer. + +The `Get-SmbShare` cmdlet retrieves objects that represent the Server Message Block (SMB) shares +being displayed by the computer. ## EXAMPLES ### Example 1: Get SMB shares on a local computer -``` -PS C:\>Get-SMBShare -Name ScopeName Path Description ----- --------- ---- ----------- -ADMIN$ * C:\Windows Remote Admin -C$ * C:\ Default share -D$ * D:\ Default share -F$ * F:\ Default share -IPC$ * Remote IPC + +```powershell +Get-SMBShare +Name ScopeName Path Description +---- --------- ---- ----------- +ADMIN$ * C:\\Windows Remote Admin +C$ * C:\\ Default share +D$ * D:\\ Default share +F$ * F:\ Default share +IPC$ * Remote IPC VMS1 * I:\VMS ``` This command retrieves the SMB shares on the computer. ### Example 2: Get a specific SMB share on the local computer -``` -PS C:\>Get-SmbShare -Name "VMS1" -Name ScopeName Path Description ----- --------- ---- ----------- + +```powershell +Get-SmbShare -Name "VMS1" +Name ScopeName Path Description +---- --------- ---- ----------- VMS1 * I:\VMS ``` -This command retrieves information about the SMB share named 'VMS1' on the local computer. +This command retrieves information about the SMB share named `VMS1` on the local computer. ### Example 3: Display information about the SMB shares on a remote computer -``` -PS C:\>get-smbshare -CimSession "NEDFS1" + +```powershell +Get-SmbShare -CimSession "NEDFS1" Name ScopeName Path Description PSComputerName ---- --------- ---- ----------- -------------- -ADMIN$ * C:\Windows Remote Admin ae-dfsr-sr-01 -C$ * C:\ Default share ae-dfsr-sr-01 -D$ * D:\ Default share ae-dfsr-sr-01 -E$ * E:\ Default share ae-dfsr-sr-01 -IPC$ * Remote IPC ae-dfsr-sr-01 -IT dept * D:\data\IT dept ae-dfsr-sr-01 -procedures * D:\hr\procedures ae-dfsr-sr-01 -VHD and ISO * D:\data\VHD and ISO ae-dfsr-sr-01 - +ADMIN$ * C:\\Windows Remote Admin ae-dfsr-sr-01 +C$ * C:\\ Default share ae-dfsr-sr-01 +D$ * D:\\ Default share ae-dfsr-sr-01 +E$ * E:\\ Default share ae-dfsr-sr-01 +IPC$ * Remote IPC ae-dfsr-sr-01 +IT dept * D:\\data\IT dept ae-dfsr-sr-01 +procedures * D:\\hr\procedures ae-dfsr-sr-01 +VHD and ISO * D:\\data\VHD and ISO ae-dfsr-sr-01 ``` -This command displays the information about the SMB shares on the remote computer NEDFS1. +This command displays the information about the SMB shares on the remote computer `NEDFS1`. ### Example 4: Display all properties about a specific SMB share on the local computer in a list -``` -PS C:\>Get-SmbShare -Name "VMS1" | Format-List -Property * -PresetPathAcl : System.Security.AccessControl.DirectorySecurity -ShareState : Online -AvailabilityType : Clustered -ShareType : FileSystemDirectory -FolderEnumerationMode : Unrestricted -CachingMode : Manual -CATimeout : 0 -ConcurrentUserLimit : 0 -ContinuouslyAvailable : True -CurrentUsers : 3 -Description : -EncryptData : False -Name : VMS1 -Path : I:\VMS -Scoped : True + +```powershell +Get-SmbShare -Name "VMS1" | Format-List -Property * +PresetPathAcl : System.Security.AccessControl.DirectorySecurity +ShareState : Online +AvailabilityType : Clustered +ShareType : FileSystemDirectory +FolderEnumerationMode : Unrestricted +CachingMode : Manual +CATimeout : 0 +ConcurrentUserLimit : 0 +ContinuouslyAvailable : True +CurrentUsers : 3 +Description : +EncryptData : False +Name : VMS1 +Path : I:\VMS +Scoped : True ScopeName : * -SecurityDescriptor : O:BAG:DUD:(A;;FA;;;S-1-5-21-219828122-4198910963-4161819395-500)(A;;FA;;;S-1-5-21-219828122-419 - 8910963-4161819395-1106)(A;;FA;;;S-1-5-21-219828122-4198910963-4161819395-1109) -ShadowCopy : False -Special : False -Temporary : False -Volume : \\?\Volume{b02c4ba7-e6f1-11e1-93eb-0008a1c0ef0d}\ -PSComputerName : -CimClass : ROOT/Microsoft/Windows/SMB:MSFT_SmbShare -CimInstanceProperties : {AvailabilityType, CachingMode, CATimeout, ConcurrentUserLimit...} +SecurityDescriptor : O:BAG:DUD:(A;;FA;;;S-1-5-21-219828122-4198910963-4161819395-500)(A;;FA;;;S-1-5-21-219828122-419 + 8910963-4161819395-1106)(A;;FA;;;S-1-5-21-219828122-4198910963-4161819395-1109) +ShadowCopy : False +Special : False +Temporary : False +Volume : \\?\Volume{b02c4ba7-e6f1-11e1-93eb-0008a1c0ef0d}\ +PSComputerName : +CimClass : ROOT/Microsoft/Windows/SMB:MSFT_SmbShare +CimInstanceProperties : {AvailabilityType, CachingMode, CATimeout, ConcurrentUserLimit...} CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties ``` -This command displays all of the information about the SMB share named 'VMS1' on the local computer as a formatted list. +This command displays all of the information about the SMB share named `VMS1` on the local computer +as a formatted list. ### Example 5: Get shares on the local failover cluster computer that have scale out availability -``` -PS C:\>Get-SmbShare | Where-Object -Property AvailabilityType -Eq ScaleOut -Name ScopeName Path Description ----- --------- ---- ----------- -ClusterStorage$ Contoso-SO C:\ClusterStorage Cluster Shared Volumes Def... -VMS3 Contoso-SO C:\ClusterStorage\Volume1\VMS -VMS4 Contoso-SO C:\ClusterStorage\Volume2\VMS + +```powershell +Get-SmbShare | Where-Object -Property AvailabilityType -Eq ScaleOut +Name ScopeName Path Description +---- --------- ---- ----------- +ClusterStorage$ Contoso-SO C:\\ClusterStorage Cluster Shared Volumes Def... +VMS3 Contoso-SO C:\\ClusterStorage\Volume1\VMS +VMS4 Contoso-SO C:\\ClusterStorage\Volume2\VMS ``` This command retrieves the SMB shares on the computer that have scaled out availability. ### Example 6: Get shares that are connected to a local failover cluster file server resource named "Contoso-FS" -``` -PS C:\>Get-SmbShare -ScopeName "Contoso-FS" -Name ScopeName Path Description ----- --------- ---- ----------- -I$ Contoso-FS I:\ Cluster Default Share -J$ Contoso-FS J:\ Cluster Default Share -VMS1 Contoso-FS I:\VMS + +```powershell +Get-SmbShare -ScopeName "Contoso-FS" +Name ScopeName Path Description +---- --------- ---- ----------- +I$ Contoso-FS I:\ Cluster Default Share +J$ Contoso-FS J:\ Cluster Default Share +VMS1 Contoso-FS I:\VMS VMS2 Contoso-FS J:\VMS ``` -This command retrieves the SMB shares on the Windows Server failover cluster that are connected to the clustered file server resource named Contoso-FS. +This command retrieves the SMB shares on the Windows Server failover cluster that are connected to +the clustered file server resource named `Contoso-FS`. ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. ```yaml Type: SwitchParameter @@ -150,6 +161,7 @@ Accept wildcard characters: False ``` ### -AvailabilityType + Specifies the cluster type of the shares being enumerated. ```yaml @@ -166,6 +178,7 @@ Accept wildcard characters: False ``` ### -CaTimeout + Specifies the continuous availability time-out of the shares being enumerated. ```yaml @@ -181,6 +194,7 @@ Accept wildcard characters: False ``` ### -CachingMode + Specifies the caching mode of the shares being enumerated. ```yaml @@ -197,9 +211,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -214,6 +230,7 @@ Accept wildcard characters: False ``` ### -CompressData + Indicates that the shares being enumerated should request compression from clients. ```yaml @@ -229,6 +246,7 @@ Accept wildcard characters: False ``` ### -ConcurrentUserLimit + Specifies the concurrent user limit of the shares being enumerated. ```yaml @@ -244,6 +262,7 @@ Accept wildcard characters: False ``` ### -ContinuouslyAvailable + Indicates that the shares being enumerated should be continuously available. ```yaml @@ -259,6 +278,7 @@ Accept wildcard characters: False ``` ### -EncryptData + Indicates that the shares being enumerated should be encrypted. ```yaml @@ -274,6 +294,7 @@ Accept wildcard characters: False ``` ### -FolderEnumerationMode + Specifies the folder enumeration mode of the shares being enumerated. ```yaml @@ -290,6 +311,7 @@ Accept wildcard characters: False ``` ### -IncludeHidden + Indicates that shares that are created and used internally are also enumerated. ```yaml @@ -305,6 +327,7 @@ Accept wildcard characters: False ``` ### -LeasingMode + Specifies SMB leasing and oplock behaviors. ```yaml @@ -320,6 +343,7 @@ Accept wildcard characters: False ``` ### -Name + Specifies one or more SMB shares by share name. ```yaml @@ -335,7 +359,9 @@ Accept wildcard characters: False ``` ### -ScopeName -Specifies the scope of the share by name. For use with Windows Server failover cluster file server resources. + +Specifies the scope of the share by name. For use with Windows Server failover cluster file server +resources. ```yaml Type: String[] @@ -350,6 +376,7 @@ Accept wildcard characters: False ``` ### -Scoped + Indicates that the shares to be numerated should be scoped. ```yaml @@ -365,6 +392,7 @@ Accept wildcard characters: False ``` ### -ShareState + Specifies the state of the shares being enumerated. ```yaml @@ -381,8 +409,9 @@ Accept wildcard characters: False ``` ### -SmbInstance -Specifies the input to this cmdlet. -You can use this parameter, or you can pipe the input to this cmdlet. + +Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this +cmdlet. ```yaml Type: SmbInstance @@ -398,8 +427,9 @@ Accept wildcard characters: False ``` ### -Special -Indicates that the shares to be numerated should be special. -Admin share, default shares, IPC$ share are examples of special shares. + +Indicates that the shares to be numerated should be special. Admin share, default shares, IPC$ +share are examples of special shares. ```yaml Type: Boolean[] @@ -414,9 +444,12 @@ Accept wildcard characters: False ``` ### -ThrottleLimit -Specifies the maximum number of concurrent operations that can be established to run the cmdlet. -If this parameter is omitted or a value of `0` is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. -The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell® calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. ```yaml Type: Int32 @@ -431,7 +464,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -440,16 +477,18 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS ### Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/SMB/MSFT_SmbShare -The `Microsoft.Management.Infrastructure.CimInstance` object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. -The path after the pound sign (`#`) provides the namespace and class name for the underlying WMI object. -The **MSFT_SmbShare** object represents the SMB shares on the computer. + +The `Microsoft.Management.Infrastructure.CimInstance` object is a wrapper class that displays +Windows Management Instrumentation (WMI) objects. The path after the pound sign (`#`) provides the +namespace and class name for the underlying WMI object. The **MSFT_SmbShare** object represents the +SMB shares on the computer. ## NOTES ## RELATED LINKS -[New-SmbShare](./New-SmbShare.md) +[New-SmbShare](New-SmbShare.md) -[Remove-SmbShare](./Remove-SmbShare.md) +[Remove-SmbShare](Remove-SmbShare.md) -[Set-SmbShare](./Set-SmbShare.md) +[Set-SmbShare](Set-SmbShare.md) diff --git a/docset/winserver2022-ps/smbshare/Grant-SmbClientAccessToServer.md b/docset/winserver2022-ps/smbshare/Grant-SmbClientAccessToServer.md new file mode 100644 index 0000000000..70e4a35b8e --- /dev/null +++ b/docset/winserver2022-ps/smbshare/Grant-SmbClientAccessToServer.md @@ -0,0 +1,290 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbServerConfiguration.cdxml-help.xml +Module Name: SmbClientAccessToServer +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/grant-smbclientaccesstoserver?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Grant-SmbClientAccessToServer +--- + +# Grant-SmbClientAccessToServer + +## SYNOPSIS +Allow access to a computer or set of computers for SMB over QUIC's client access control feature on +an SMB Server. + +## SYNTAX + +### Query + +``` +Grant-SmbClientAccessToServer [-Name] -IdentifierType + -Identifier [-Description ] [-Force] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] [] +``` + +### InputObject + +``` +Grant-SmbClientAccessToServer -InputObject -IdentifierType + -Identifier [-Description ] [-Force] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Grant-SmbClientAccessToServer` cmdlet is used to allow SMB clients to access a specified +server. When you run this cmdlet, it'll add a new rule to the server's firewall to allow incoming +SMB traffic from the specified client IP address. If you need to revoke access to the server in the +future, you can use the `Revoke-SmbClientAccessToServer` cmdlet. + +## EXAMPLES + +### Example 1: Grant SMB client access to a server + +```powershell +$params = @{ + Name = "Server01" + IdentifierType = "ISSUER" + Identifier = "CN=MyCertificateIssuer" + Description = "Allow access from client for LabSvr" + Force = $true +} +Grant-SmbClientAccessToServer @params +``` + +This example grants SMB client access to a server named `Server01` based on the client's +certificate. The **Description** parameter is used to provide a description of the rule being added +to the server's firewall. This command runs without prompting for confirmation. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or +[Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description + +Used to provide a description of the rule being added to the server's firewall when you use the +`Grant-SmbClientAccessToServer` cmdlet. This can be useful if you need to keep track of which +clients have been granted access to a server, or if you need to provide additional information +about the rule for documentation purposes. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Identifier + +Specifies the identity of the client that is being granted access to the SMB server. This parameter +takes a string value that represents the identity of the client. The format of the string value +will depend on the **IdentifierType** parameter that you're using. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IdentifierType + +Specifies the type of identifier that you're using to identify a client. The valid values for the +**IdentifierType** parameter are: + +- SHA256 +- ISSUER + +If you're using the `SHA256` identifier type, you're specifying a hash value that uniquely +identifies the client. If you're using the `ISSUER` identifier type, you're specifying the issuer +of the client's certificate. + +```yaml +Type: IdentifierType +Parameter Sets: (All) +Aliases: +Accepted values: SHA256, ISSUER + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject + +Specifies the input object that's used in a pipeline command. + +```yaml +Type: CimInstance[] +Parameter Sets: InputObject +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -Name + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. + +```yaml +Type: String +Parameter Sets: Query +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. + +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.Management.Infrastructure.CimInstance[] + +## OUTPUTS + +### Microsoft.Management.Infrastructure.CimInstance[] + +## NOTES + +## RELATED LINKS + +[Block-SmbClientAccessToServer](Block-SmbClientAccessToServer.md) + +[Get-SmbClientAccessToServer](Get-SmbClientAccessToServer.md) + +[Revoke-SmbClientAccessToServer](Revoke-SmbClientAccessToServer.md) + +[Unblock-SmbClientAccessToServer](Unblock-SmbClientAccessToServer.md) diff --git a/docset/winserver2022-ps/smbshare/New-SmbClientCertificateMapping.md b/docset/winserver2022-ps/smbshare/New-SmbClientCertificateMapping.md new file mode 100644 index 0000000000..25bc2bfbe4 --- /dev/null +++ b/docset/winserver2022-ps/smbshare/New-SmbClientCertificateMapping.md @@ -0,0 +1,322 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbClientCertificateMapping.cdxml-help.xml +Module Name: SmbShare +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/new-smbclientcertificatemapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: New-SmbClientCertificateMapping +--- + +# New-SmbClientCertificateMapping + +## SYNOPSIS +Creates a new client certificate mapping for the Server Message Block (SMB) protocol. + +## SYNTAX + +``` +New-SmbClientCertificateMapping [-Namespace] [-Thumbprint ] [-StoreName ] + [-IssuerName ] [-Subject ] [-DisplayName ] [-Type ] [-Flags ] + [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] + [] +``` + +## DESCRIPTION + +The `New-SmbClientCertificateMapping` cmdlet creates a new client certificate mapping for the SMB +protocol. These mappings are used to authenticate clients that connect to SMB servers using +certificates. You can use this cmdlet to create a new mapping between a client certificate and an +SMB client name. + +## EXAMPLES + +### Example 1: Create a new certificate mapping for an SMB client + +```powershell +$params = @{ + Thumbprint = "a1b2c3d4e5f6g7h8" + StoreName = "My" + IssuerName = "CN=MyCertificateAuthority" + Subject = "CN=MyClientCertificate" + DisplayName = "MyClientCertificateMapping" +} +New-SmbClientCertificateMapping @params +``` + +This creates a new certificate mapping for an SMB client where a specific thumbprint, store name, +issuer name, subject, and display name are specified for the certificate mapping. + +For example, if you have an SMB client named `MySMBClient` that needs to connect to a server using +a specific certificate, you could use this cmdlet to create a certificate mapping that associates +the client with the certificate. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DisplayName + +Specifies the friendly name of the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Flags + +Specifies if `NamedPipes` are enabled for SMB over QUIC. The acceptable values for this parameter +are: + +- `None`: Remove all flags +- `AllowNamedPipe`: Enable use of named pipes in SMB over QUIC connections for this mapping (off by + default, overrides value of the **RestrictNamedPipeAccessOverQuic** parameter) +- `DefaultCert`: Not used + +```yaml +Type: Flags[] +Parameter Sets: (All) +Aliases: +Accepted values: None, AllowNamedPipe, DefaultCert + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IssuerName + +Filters the certificate mappings based on the issuer name of the certificate. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Namespace + +Specifies the namespace of the QUIC server. For example, `server1.contoso.com`. By default, the +cmdlet searches in the `root\cimv2\Security\MicrosoftTlsCertificateMappingProvider` namespace. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -StoreName + +Specifies the path to the certificate store for the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Subject + +Specifies the subject name of the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: 2 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Thumbprint + +Specifies the thumbprint value of the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Type + +Specifies the type of certificate mapping. The acceptable value for this parameter is: + +`QUIC`: Certificate mapping is for SMB over QUIC. + +```yaml +Type: Type[] +Parameter Sets: (All) +Aliases: +Accepted values: QUIC + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String + +## OUTPUTS + +### Microsoft.Management.Infrastructure.CimInstance + +## NOTES + +## RELATED LINKS + +[Get-SmbClientCertificateMapping](Get-SmbClientCertificateMapping.md) + +[Remove-SmbClientCertificateMapping](Remove-SmbClientCertificateMapping.md) + +[Set-SmbClientCertificateMapping](Set-SmbClientCertificateMapping.md) diff --git a/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md index 142230892d..38482991c4 100644 --- a/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbServerCertificateMapping.cdxml-help.xml Module Name: SmbShare -ms.date: 08/31/2021 +ms.date: 02/22/2024 online version: https://learn.microsoft.com/powershell/module/smbshare/new-smbservercertificatemapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: New-SmbServerCertificateMapping @@ -17,32 +17,59 @@ Creates a certificate association with the SMB server for SMB over QUIC. ``` New-SmbServerCertificateMapping [-Name] [-Thumbprint] [-StoreName] - [-Subject ] [-DisplayName ] [-Type ] [-Flags ] [-Force] - [-CimSession ] [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] [] + [-Subject ] [-DisplayName ] [-Type ] [-Flags ] + [-RequireClientAuthentication ] [-SkipClientCertificateAccessCheck ] [-Force] + [-CimSession ] [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] + [] ``` ## DESCRIPTION -The **New-SmbServerCertificateMapping** cmdlet associates a certificate to the SMB server for SMB over QUIC on Windows Server 2022 Datacenter: Azure Edition. This cmdlet is not used for Windows or other Windows Server editions. For more information, review [SMB over QUIC](https://aka.ms/smboverquic). + +The `New-SmbServerCertificateMapping` cmdlet associates a certificate to the SMB server for SMB +over QUIC. For more information, see [SMB over QUIC](https://aka.ms/smboverquic). + +> [!NOTE] +> +> - The **RequireClientAuthentication** and **SkipClientCertificateAccessCheck** parameters are only +> supported in Windows Server Datacenter: Azure Edition. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client +> certificate validation and access control checks. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is also set to `$true`, the server will perform client +> certificate validation but no access control checks. ## EXAMPLES ### Example 1 - Map a certificate located in the local machine's personal store -This command maps a certificate located in the local machine’s personal store for SMB server edge endpoint “fs2.contoso.com” using the certificate’s thumbprint. +This command maps a certificate located in the local machine's personal store for SMB server edge +endpoint `fs2.contoso.com` using the certificate's thumbprint. ```powershell -New-SmbServerCertificateMapping -Name fs2.contoso.com -Thumbprint 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F -StoreName my -Subject CN=2022-ae-02 +$params = @{ + Name = "fs2.contoso.com" + Thumbprint = "88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F" + StoreName = "My" + Subject = "CN=2022-ae-02" +} +New-SmbServerCertificateMapping @params ``` + ```output -Name Subject Thumbprint DisplayName StoreName Type Flags ----- ------- ---------- ----------- --------- ---- ----- +Name Subject Thumbprint DisplayName StoreName Type Flags +---- ------- ---------- ----------- --------- ---- ----- fs2.contoso.com CN=2022-ae-02 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F 2022-ae-02 my QUIC None ``` ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. ```yaml Type: SwitchParameter @@ -57,7 +84,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or +[Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -72,6 +103,7 @@ Accept wildcard characters: False ``` ### -DisplayName + Specifies a friendly name to display for the mapping. ```yaml @@ -87,11 +119,14 @@ Accept wildcard characters: False ``` ### -Flags -Specifies if Named Pipes are enabled for SMB over QUIC. The acceptable values for this parameter are: -- `None:` Remove all flags. -- `AllowNamedPipe:` Enable use of named pipes in SMB over QUIC connections for this mapping (off by default, overrides the value of RestrictNamedPipeAccessOverQuic). -- `DefaultCert:` Not used. +Specifies if Named Pipes are enabled for SMB over QUIC. The acceptable values for this parameter +are: + +- `None`: Remove all flags. +- `AllowNamedPipe`: Enable use of named pipes in SMB over QUIC connections for this mapping (off by + default, overrides the value of the **RestrictNamedpipeAccessOverQuic** parameter). +- `DefaultCert`: Not used. ```yaml Type: Flags @@ -107,6 +142,7 @@ Accept wildcard characters: False ``` ### -Force + Forces the command to run without asking for user confirmation. ```yaml @@ -122,7 +158,9 @@ Accept wildcard characters: False ``` ### -Name -Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate’s subject name or an entry in the certificate’s subject alternative names. + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. ```yaml Type: String @@ -136,8 +174,51 @@ Accept pipeline input: True (ByPropertyName) Accept wildcard characters: False ``` +### -RequireClientAuthentication + +Specifies whether client authentication is required for connections to the server. When this +parameter is set to `$true`, clients must present a valid certificate to connect to the server. +When it is set to `$false`, clients can connect without presenting a certificate. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipClientCertificateAccessCheck + +Specifies whether the server should skip the check for client certificate access when a client +connects. When this parameter is set to `$true`, the server will not perform the access control +checks based on the client certificates. This can be useful in scenarios where the server is acting +as a gateway or proxy, and does not need to perform full certificate validation. + +However, it can also increase the risk of security breaches. When this parameter is set to +`$false`, the server will check whether the client has access to the certificate it presents before +allowing the client to connect. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -StoreName -Specifies the path to the certificate store for the certificate. The recommended value is “My” for the local machine personal store. + +Specifies the path to the certificate store for the certificate. The recommended value is "My" for +the local machine personal store. ```yaml Type: String @@ -152,6 +233,7 @@ Accept wildcard characters: False ``` ### -Subject + Specifies the subject name of the certificate. ```yaml @@ -167,7 +249,12 @@ Accept wildcard characters: False ``` ### -ThrottleLimit -Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. ```yaml Type: Int32 @@ -182,6 +269,7 @@ Accept wildcard characters: False ``` ### -Thumbprint + Specifies the thumbprint value of the certificate. ```yaml @@ -197,9 +285,10 @@ Accept wildcard characters: False ``` ### -Type -Specifies the type of certificate mapping. The acceptable value for this parameter is: -`QUIC` Certificate mapping is for SMB over QUIC. +Specifies the type of certificate mapping. The acceptable value for this parameter is: + +- `QUIC`: Certificate mapping is for SMB over QUIC. ```yaml Type: Type @@ -215,6 +304,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -230,8 +320,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. ```yaml Type: SwitchParameter @@ -246,7 +336,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -259,3 +353,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +[Get-SmbServerCertificateMapping](Get-SmbServerCertificateMapping.md) + +[Remove-SmbServerCertificateMapping](Remove-SmbServerCertificateMapping.md) + +[Set-SmbServerCertificateMapping](Set-SmbServerCertificateMapping.md) diff --git a/docset/winserver2022-ps/smbshare/New-SmbShare.md b/docset/winserver2022-ps/smbshare/New-SmbShare.md index 65d43f96ac..f2a5b88aa8 100644 --- a/docset/winserver2022-ps/smbshare/New-SmbShare.md +++ b/docset/winserver2022-ps/smbshare/New-SmbShare.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbShare.cdxml-help.xml Module Name: SmbShare -ms.date: 10/20/2022 +ms.date: 02/22/2024 online version: https://learn.microsoft.com/powershell/module/smbshare/new-smbshare?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: New-SmbShare @@ -42,7 +42,7 @@ To delete a share that was created by this cmdlet, use the `Remove-SmbShare` cmd ```powershell $Parameters = @{ - Name = 'Public' + Name = 'VMSFiles' Path = 'D:\Public' FullAccess = 'Contoso\Administrator', 'Contoso\Contoso-HV1$' } @@ -101,36 +101,15 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -CATimeout - -Specifies the continuous availability time-out for the share. - -```yaml -Type: UInt32 -Parameter Sets: (All) -Aliases: - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -CachingMode Specifies the caching mode of the offline files for the SMB share. There are five caching modes: -- None. -Prevents users from storing documents and programs offline. -- Manual. -Allows users to identify the documents and programs they want to store offline. -- Programs. -Automatically stores documents and programs offline. -- Documents. -Automatically stores documents offline. -- BranchCache. -Enables BranchCache and manual caching of documents on the shared folder. +- BranchCache - Enables BranchCache and manual caching of documents on the shared folder. +- Documents - Automatically stores documents offline. +- Manual - Allows users to identify the documents and programs that they want to store offline. +- Programs - Automatically stores documents and programs offline. +- None - Prevents users from storing documents and programs offline. ```yaml Type: CachingMode @@ -182,8 +161,8 @@ Accept wildcard characters: False ### -CimSession Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session -object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) -or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the current session on the local computer. ```yaml @@ -335,9 +314,9 @@ Accept wildcard characters: False Specifies SMB leasing and oplock behaviors for application compatibility. The acceptable values for this parameter are: -- `Full:` Use default lease and oplock behaviors from SMB3. -- `Shared:` Grant read-caching lease but not write or handle-caching. -- `None:` No oplocks or leases, behave like SMB1 (not recommended). +- `Full`: Use default lease and oplock behaviors from SMB3. +- `Shared`: Grant read-caching lease but not write or handle-caching. +- `None`: No oplocks or leases, behave like SMB1 (not recommended). ```yaml Type: LeasingMode @@ -425,7 +404,8 @@ Accept wildcard characters: False ### -ScopeName -Specifies the scope name of the share. For use with Windows Server failover cluster file server resources. +Specifies the scope name of the share. For use with Windows Server failover cluster file server +resources. ```yaml Type: String @@ -510,8 +490,7 @@ Accept wildcard characters: False ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet isn't run. +Shows what would happen if the cmdlet runs. The cmdlet isn't run. > [!NOTE] > The **WhatIf** switch doesn't work with this cmdlet. @@ -533,7 +512,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -552,8 +531,8 @@ object that represents the SMB share. ## RELATED LINKS -[Get-SmbShare](./Get-SmbShare.md) +[Get-SmbShare](Get-SmbShare.md) -[Remove-SmbShare](./Remove-SmbShare.md) +[Remove-SmbShare](Remove-SmbShare.md) -[Set-SmbShare](./Set-SmbShare.md) +[Set-SmbShare](Set-SmbShare.md) diff --git a/docset/winserver2022-ps/smbshare/Remove-SmbClientCertificateMapping.md b/docset/winserver2022-ps/smbshare/Remove-SmbClientCertificateMapping.md new file mode 100644 index 0000000000..8cf8624e6a --- /dev/null +++ b/docset/winserver2022-ps/smbshare/Remove-SmbClientCertificateMapping.md @@ -0,0 +1,385 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbClientCertificateMapping.cdxml-help.xml +Module Name: SmbShare +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/remove-smbclientcertificatemapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Remove-SmbClientCertificateMapping +--- + +# Remove-SmbClientCertificateMapping + +## SYNOPSIS +Removes an existing client certificate mapping for the Server Message Block (SMB) protocol. + +## SYNTAX + +### Query + +``` +Remove-SmbClientCertificateMapping [-Namespace] [[-Subject] ] + [[-Thumbprint] ] [[-DisplayName] ] [[-StoreName] ] + [[-IssuerName] ] [[-Type] ] [[-Flags] ] [-IncludeHidden] [-Force] + [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] + [] +``` + +### InputObject + +``` +Remove-SmbClientCertificateMapping -InputObject [-Force] + [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] + [] +``` + +## DESCRIPTION + +The `Remove-SmbClientCertificateMapping` cmdlet removes an existing client certificate mapping for +the SMB protocol. These mappings are used to authenticate clients that connect to SMB servers using +certificates. You can use this cmdlet to remove a mapping between a client certificate and an SMB +client name. + +## EXAMPLES + +### Example 1: Remove all certificate mappings from a specific store + +```powershell +Remove-SmbClientCertificateMapping -StoreName "My" -Force +``` + +This force removes all certificate mappings that have been stored in a specific certificate store. + +### Example 2: Remove a certificate mapping by thumbprint + +```powershell +Remove-SmbClientCertificateMapping -Thumbprint "MyThumbprint" -Force +``` + +This force removes a certificate mapping with a specific thumbprint. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DisplayName + +Specifies the friendly name of the certificate. + +```yaml +Type: String[] +Parameter Sets: Query +Aliases: + +Required: False +Position: 4 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Flags + +Specifies if Named Pipes are enabled for SMB over QUIC. The acceptable values for this parameter +are: + +- `None`: Remove all flags. +- `AllowNamedPipe`: Enable use of named pipes in SMB over QUIC connections for this mapping (off by + default, overrides the value of the **RestrictNamedPipeAccessOverQuic** parameter). +- `DefaultCert`: Not used. + +```yaml +Type: Flags[] +Parameter Sets: Query +Aliases: +Accepted values: None, AllowNamedPipe, DefaultCert + +Required: False +Position: 7 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IncludeHidden + +Not used. + +```yaml +Type: SwitchParameter +Parameter Sets: Query +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject + +Specifies the input object that's used in a pipeline command. + +```yaml +Type: CimInstance[] +Parameter Sets: InputObject +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -IssuerName + +Filters the certificate mappings based on the issuer name of the certificate. + +```yaml +Type: String[] +Parameter Sets: Query +Aliases: + +Required: False +Position: 5 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Namespace + +Specifies the namespace of the QUIC server. For example, `server1.contoso.com`. By default, the +cmdlet searches in the `root\cimv2\Security\MicrosoftTlsCertificateMappingProvider` namespace. + +```yaml +Type: String[] +Parameter Sets: Query +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -PassThru + +Returns an object representing the item with which you're working. By default, this cmdlet doesn't +generate any output. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StoreName + +Specifies the path to the certificate store for the certificate. The recommended value is "My" for +the local machine personal store. + +```yaml +Type: String[] +Parameter Sets: Query +Aliases: + +Required: False +Position: 5 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Subject + +Specifies the subject name of the certificate. + +```yaml +Type: String[] +Parameter Sets: Query +Aliases: + +Required: False +Position: 2 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Thumbprint + +Specifies the thumbprint value of the certificate. + +```yaml +Type: String[] +Parameter Sets: Query +Aliases: + +Required: False +Position: 3 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Type + +`QUIC`: Certificate mapping is for SMB over QUIC. + +```yaml +Type: Type[] +Parameter Sets: Query +Aliases: +Accepted values: QUIC + +Required: False +Position: 6 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbClientCertificateMapping.Type[] + +### Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbClientCertificateMapping.Flags[] + +### Microsoft.Management.Infrastructure.CimInstance[] + +## OUTPUTS + +### Microsoft.Management.Infrastructure.CimInstance + +### Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/SMB/MSFT_SmbClientCertificateMapping + +## NOTES + +## RELATED LINKS + +[Get-SmbClientCertificateMapping](Get-SmbClientCertificateMapping.md) + +[New-SmbClientCertificateMapping](New-SmbClientCertificateMapping.md) + +[Set-SmbClientCertificateMapping](Set-SmbClientCertificateMapping.md) diff --git a/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md index 9dbd5fdd14..0ae4821c44 100644 --- a/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md @@ -2,8 +2,8 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbServerCertificateMapping.cdxml-help.xml Module Name: SmbShare -ms.date: 08/31/2021 -online version: https://learn.microsoft.com/powershell/module/smbshare/Remove-SmbServerCertificateMapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/remove-smbservercertificatemapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Remove-SmbServerCertificateMapping --- @@ -16,56 +16,71 @@ Removes a certificate mapping from the SMB server for SMB over QUIC. ## SYNTAX ### Query + ``` -Remove-SmbServerCertificateMapping [-Name] [[-Subject] ] [[-Thumbprint] ] - [[-DisplayName] ] [[-StoreName] ] [[-Type] ] [[-Flags] ] [-IncludeHidden] - [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] +Remove-SmbServerCertificateMapping [-Name] [[-Subject] ] + [[-Thumbprint] ] [[-DisplayName] ] [[-StoreName] ] [[-Type] ] + [[-Flags]] [[-RequireClientAuthentication] ] + [[-SkipClientCertificateAccessCheck] ] [-IncludeHidden] [-Force] + [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] ``` -### InputObject (cdxml) +### InputObject + ``` -Remove-SmbServerCertificateMapping -InputObject [-Force] [-CimSession ] - [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] +Remove-SmbServerCertificateMapping -InputObject [-Force] + [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] + [] ``` ## DESCRIPTION -The Remove-SmbServerCertificateMapping cmdlet removes a certificate’s mapping to the SMB server for SMB over QUIC on ‘Windows Server 2022 Datacenter: Azure Edition’. This cmdlet is not used for Windows or other Windows Server editions. For more information, review SMB over QUIC. + +The `Remove-SmbServerCertificateMapping` cmdlet removes the certificates associated with the SMB +server for SMB over QUIC. For more information, review +[SMB over QUIC](/windows-server/storage/file-server/smb-over-quic). + +> [!NOTE] +> +> - The **RequireClientAuthentication** and **SkipClientCertificateAccessCheck** parameters are only +> supported in Windows Server Datacenter: Azure Edition. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client +> certificate validation and access control checks. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is also set to `$true`, the server will perform client +> certificate validation but no access control checks. ## EXAMPLES ### Example 1 - Remove a certificate mapping for SMB server edge endpoint -This command removes a certificate mapping for SMB server edge endpoint “fs2.contoso.com” with a specific certificate thumbprint. - ```powershell -PS C:\> Get-SmbServerCertificateMapping +$params = @{ + Name = "fs2.contoso.com" + Thumbprint = "88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F" +} +Remove-SmbServerCertificateMapping @params ``` ```output -Name Subject Thumbprint DisplayName StoreName Type Flags ----- ------- ---------- ----------- --------- ---- ----- -2022-ae-02.corp.contoso.com CN=2022-ae-02 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F 2022-ae-02 my QUIC None -fs2.contoso.com CN=2022-ae-02 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F 2022-ae-02 my QUIC None - -``` -```powershell -Remove-SmbServerCertificateMapping -Name fs2.contoso.com -Thumbprint 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F -``` - -```output -Confirm -Are you sure you want to perform this action? -Performing operation 'Delete' on Target 'SMB Server Certificate Mapping.'. +Confirm +Are you sure you want to perform this action? +Performing operation 'Delete' on Target 'SMB Server Certificate Mapping.'. [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y ``` -This command removes a certificate mapping for SMB server edge endpoint “fs2.contoso.com” with a specific certificate thumbprint. +This command removes a certificate mapping for SMB server edge endpoint `fs2.contoso.com` with a +specific certificate thumbprint. ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. ```yaml Type: SwitchParameter @@ -80,7 +95,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a [`New-CimSession`](/powershell/module/cimcmdlets/new-cimsession) or [`Get-CimSession`](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [`New-CimSession`](/powershell/module/cimcmdlets/new-cimsession) or +[`Get-CimSession`](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -95,6 +114,7 @@ Accept wildcard characters: False ``` ### -DisplayName + Specifies a friendly name to display for the mapping. ```yaml @@ -110,11 +130,14 @@ Accept wildcard characters: False ``` ### -Flags -Specifies if Named Pipes are enabled for SMB over QUIC. The acceptable values for this parameter are: -- `None:` Remove all flags. -- `AllowNamedPipe:` Enable use of named pipes in SMB over QUIC connections for this mapping (off by default, overrides the value of RestrictNamedPipeAccessOverQuic). -- `DefaultCert:` Not used. +Specifies if Named Pipes are enabled for SMB over QUIC. The acceptable values for this parameter +are: + +- `None`: Remove all flags. +- `AllowNamedPipe`: Enable use of named pipes in SMB over QUIC connections for this mapping (off by + default, overrides the value of the **RestrictNamedpipeAccessOverQuic** parameter). +- `DefaultCert`: Not used. ```yaml Type: Flags[] @@ -130,6 +153,7 @@ Accept wildcard characters: False ``` ### -Force + Forces the command to run without asking for user confirmation. ```yaml @@ -145,6 +169,7 @@ Accept wildcard characters: False ``` ### -IncludeHidden + Not used. ```yaml @@ -160,11 +185,12 @@ Accept wildcard characters: False ``` ### -InputObject -Specifies the input object that is used in a pipeline command. + +Specifies the input object that's used in a pipeline command. ```yaml Type: CimInstance[] -Parameter Sets: InputObject (cdxml) +Parameter Sets: InputObject Aliases: Required: True @@ -175,7 +201,9 @@ Accept wildcard characters: False ``` ### -Name -Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate’s subject name or an entry in the certificate’s subject alternative names. + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. ```yaml Type: String[] @@ -190,7 +218,9 @@ Accept wildcard characters: False ``` ### -PassThru -Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output. + +Returns an object representing the item with which you're working. By default, this cmdlet doesn't +generate any output. ```yaml Type: SwitchParameter @@ -204,8 +234,51 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RequireClientAuthentication + +Specifies whether client authentication is required for connections to the server. When this +parameter is set to `$true`, clients must present a valid certificate to connect to the server. +When it is set to `$false`, clients can connect without presenting a certificate. + +```yaml +Type: Boolean[] +Parameter Sets: Query +Aliases: + +Required: False +Position: 8 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -SkipClientCertificateAccessCheck + +Specifies whether the server should skip the check for client certificate access when a client +connects. When this parameter is set to `$true`, the server will not perform the access control +checks based on the client certificates. This can be useful in scenarios where the server is acting +as a gateway or proxy, and does not need to perform full certificate validation. + +However, it can also increase the risk of security breaches. When this parameter is set to +`$false`, the server will check whether the client has access to the certificate it presents before +allowing the client to connect. + +```yaml +Type: Boolean[] +Parameter Sets: Query +Aliases: + +Required: False +Position: 9 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + ### -StoreName -Specifies the path to the certificate store for the certificate. The recommended value is “My” for the local machine personal store. + +Specifies the path to the certificate store for the certificate. The recommended value is "My" for +the local machine personal store. ```yaml Type: String[] @@ -220,6 +293,7 @@ Accept wildcard characters: False ``` ### -Subject + Specifies the subject name of the certificate. ```yaml @@ -235,7 +309,12 @@ Accept wildcard characters: False ``` ### -ThrottleLimit -Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. ```yaml Type: Int32 @@ -250,6 +329,7 @@ Accept wildcard characters: False ``` ### -Thumbprint + Specifies the thumbprint value of the certificate. ```yaml @@ -265,7 +345,10 @@ Accept wildcard characters: False ``` ### -Type -`QUIC` Certificate mapping is for SMB over QUIC. + +Specifies the type of certificate mapping. The acceptable value for this parameter is: + +- `QUIC`: Certificate mapping is for SMB over QUIC. ```yaml Type: Type[] @@ -281,6 +364,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -296,8 +380,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. ```yaml Type: SwitchParameter @@ -312,7 +396,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -322,6 +410,8 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ### Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbServerCertificateMapping.Flags[] +### System.Boolean[] + ### Microsoft.Management.Infrastructure.CimInstance[] ## OUTPUTS @@ -333,3 +423,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +[Get-SmbServerCertificateMapping](Get-SmbServerCertificateMapping.md) + +[New-SmbServerCertificateMapping](New-SmbServerCertificateMapping.md) + +[Set-SmbServerCertificateMapping](Set-SmbServerCertificateMapping.md) diff --git a/docset/winserver2022-ps/smbshare/Remove-SmbShare.md b/docset/winserver2022-ps/smbshare/Remove-SmbShare.md index f60237a742..2456be86e2 100644 --- a/docset/winserver2022-ps/smbshare/Remove-SmbShare.md +++ b/docset/winserver2022-ps/smbshare/Remove-SmbShare.md @@ -2,8 +2,8 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbShare.cdxml-help.xml Module Name: SmbShare -ms.date: 12/20/2016 -online version: https://learn.microsoft.com/powershell/module/smbshare/remove-smbshare?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/remove-smbshare?view=windowsserver2025-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Remove-SmbShare --- @@ -16,39 +16,44 @@ Deletes the specified SMB shares. ## SYNTAX ### Query + ``` Remove-SmbShare [-Name] [[-ScopeName] ] [-SmbInstance ] [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] ``` -### InputObject (cdxml) +### InputObject + ``` -Remove-SmbShare -InputObject [-Force] [-CimSession ] [-ThrottleLimit ] - [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] +Remove-SmbShare -InputObject [-Force] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The **Remove-SmbShare** cmdlet deletes one or more Server Message Block (SMB) shares. -Removing an SMB share forcibly disconnects all of the existing connections to the share. -Use this cmdlet with caution. -Clients that are forcibly disconnected from a share are not able to flush locally cached data before they are disconnected. -This may cause data loss. -Use the Get-SmbSession cmdlet to determine whether users are connected to a share. +The `Remove-SmbShare` cmdlet deletes one or more Server Message Block (SMB) shares. + +Removing an SMB share forcibly disconnects all of the existing connections to the share. Use this +cmdlet with caution. Clients that are forcibly disconnected from a share aren't able to flush +locally cached data before they are disconnected. This may cause data loss. Use the `Get-SmbSession` +cmdlet to determine whether users are connected to a share. ## EXAMPLES ### Example 1: Delete an SMB share -``` -PS C:\>Remove-SmbShare -Name "Data" -Confirm -Are you sure you want to perform this action? -Performing operation 'Remove-Share' on Target 'Contoso-FS,Data'. + +```powershell +Remove-SmbShare -Name "Data" + + +Confirm +Are you sure you want to perform this action? +Performing operation `Remove-Share` on Target 'Contoso-FS,Data'. [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): ``` -This command deletes the SMB share named Data. +This command deletes the SMB share named `Data`. ### Example 2: Delete a Windows Server failover cluster file server resource SMB share without confirmation @@ -56,17 +61,20 @@ This command deletes the SMB share named Data. Remove-SmbShare -Name "VMFiles" -ScopeName "Contoso-SO" -Force ``` -This command deletes the SMB share named VMFiles on the `Contoso-SO` file server resource without user confirmation. +This command deletes the SMB share named `VMFiles` on the `Contoso-SO` file server resource without +user confirmation. ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -76,9 +84,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -93,12 +103,13 @@ Accept wildcard characters: False ``` ### -Force + Forces the command to run without asking for user confirmation. ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -108,12 +119,13 @@ Accept wildcard characters: False ``` ### -InputObject -Specifies the input object that is used in a pipeline command. + +Specifies the input object that's used in a pipeline command. ```yaml Type: CimInstance[] -Parameter Sets: InputObject (cdxml) -Aliases: +Parameter Sets: InputObject +Aliases: Required: True Position: Named @@ -123,12 +135,13 @@ Accept wildcard characters: False ``` ### -Name + Specifies an array of names of SMB shares. ```yaml Type: String[] Parameter Sets: Query -Aliases: +Aliases: Required: True Position: 1 @@ -138,13 +151,14 @@ Accept wildcard characters: False ``` ### -PassThru -Returns an object representing the item with which you are working. -By default, this cmdlet does not generate any output. + +Returns an object representing the item with which you're working. By default, this cmdlet doesn't +generate any output. ```yaml Type: SwitchParameter Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -155,12 +169,13 @@ Accept wildcard characters: False ### -ScopeName -Specifies an array of the scopes of the SMB share to delete. For use with Windows Server failover cluster file server resources. +Specifies an array of the scopes of the SMB share to delete. For use with Windows Server failover +cluster file server resources. ```yaml Type: String[] Parameter Sets: Query -Aliases: +Aliases: Required: False Position: 2 @@ -170,13 +185,14 @@ Accept wildcard characters: False ``` ### -SmbInstance -Specifies the input to this cmdlet. -You can use this parameter, or you can pipe the input to this cmdlet. + +Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this +cmdlet. ```yaml Type: SmbInstance Parameter Sets: Query -Aliases: +Aliases: Accepted values: Default, CSV, SBL, SR Required: False @@ -187,14 +203,17 @@ Accept wildcard characters: False ``` ### -ThrottleLimit -Specifies the maximum number of concurrent operations that can be established to run the cmdlet. -If this parameter is omitted or a value of `0` is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. -The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. ```yaml Type: Int32 Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -204,6 +223,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -213,14 +233,14 @@ Aliases: cf Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. ```yaml Type: SwitchParameter @@ -229,33 +249,40 @@ Aliases: wi Required: False Position: Named -Default value: False +Default value: None Accept pipeline input: False Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS ### Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/SMB/MSFT_SmbShare -The `Microsoft.Management.Infrastructure.CimInstance` object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. -The path after the pound sign (`#`) provides the namespace and class name for the underlying WMI object. + +The `Microsoft.Management.Infrastructure.CimInstance` object is a wrapper class that displays +Windows Management Instrumentation (WMI) objects. The path after the pound sign (`#`) provides the +namespace and class name for the underlying WMI object. ## OUTPUTS ### Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/SMB/MSFT_SmbShare -The `Microsoft.Management.Infrastructure.CimInstance` object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. -The path after the pound sign (`#`) provides the namespace and class name for the underlying WMI object. + +The `Microsoft.Management.Infrastructure.CimInstance` object is a wrapper class that displays +Windows Management Instrumentation (WMI) objects. The path after the pound sign (`#`) provides the +namespace and class name for the underlying WMI object. ## NOTES ## RELATED LINKS -[Get-SmbShare](./Get-SmbShare.md) - -[New-SmbShare](./New-SmbShare.md) +[Get-SmbShare](Get-SmbShare.md) -[Set-SmbShare](./Set-SmbShare.md) +[New-SmbShare](New-SmbShare.md) +[Set-SmbShare](Set-SmbShare.md) diff --git a/docset/winserver2022-ps/smbshare/Reset-SmbServerConfiguration.md b/docset/winserver2022-ps/smbshare/Reset-SmbServerConfiguration.md index e1583389f9..9eda3676a4 100644 --- a/docset/winserver2022-ps/smbshare/Reset-SmbServerConfiguration.md +++ b/docset/winserver2022-ps/smbshare/Reset-SmbServerConfiguration.md @@ -2,8 +2,8 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbServerConfiguration.cdxml-help.xml Module Name: SmbShare -ms.date: 10/20/2022 -online version: http://go.microsoft.com/fwlink/?LinkID=241959 +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/reset-smbserverconfiguration?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Reset-SmbServerConfiguration --- @@ -39,6 +39,7 @@ default values. For more information on SMB server and protocol specifications, and [[MS-SMB2]:Server Message Block (SMB) Protocol Versions 2 and3](/openspecs/windows_protocols/ms-smb2/5606ad47-5ee0-437a-817e-70c366052962). > [!NOTE] +> > - This cmdlet is available beginning with 2022-06 Cumulative Update for Microsoft server operating > system version 21H2 for x64-based Systems > ([KB5014665](https://support.microsoft.com/help/5014665)), and Cumulative Update for Windows 11, @@ -210,8 +211,8 @@ Accept wildcard characters: False ### -CimSession Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session -object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) -or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the current session on the local computer. ```yaml @@ -844,7 +845,7 @@ Accept wildcard characters: False This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see -[about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -858,6 +859,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Get-SmbServerConfiguration](./Get-SmbServerConfiguration.md) +[Get-SmbServerConfiguration](Get-SmbServerConfiguration.md) -[Set-SmbServerConfiguration](./Set-SmbServerConfiguration.md) +[Set-SmbServerConfiguration](Set-SmbServerConfiguration.md) diff --git a/docset/winserver2022-ps/smbshare/Revoke-SmbClientAccessToServer.md b/docset/winserver2022-ps/smbshare/Revoke-SmbClientAccessToServer.md new file mode 100644 index 0000000000..4d7becee8a --- /dev/null +++ b/docset/winserver2022-ps/smbshare/Revoke-SmbClientAccessToServer.md @@ -0,0 +1,262 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbClientAccessToServer.cdxml-help.xml +Module Name: SmbShare +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/revoke-smbclientaccesstoserver?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Revoke-SmbClientAccessToServer +--- + +# Revoke-SmbClientAccessToServer + +## SYNOPSIS +Revokes SMB client access to a specified server. + +## SYNTAX + +### Query + +``` +Revoke-SmbClientAccessToServer [-Name] -IdentifierType + -Identifier [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] + [-WhatIf] [-Confirm] [] +``` + +### InputObject + +``` +Revoke-SmbClientAccessToServer -InputObject -IdentifierType + -Identifier [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] + [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Revoke-SmbClientAccessToServer` cmdlet is used to remove a previously granted access rule for +SMB clients to a specified server. When you run this cmdlet, it'll remove the firewall rule that +allows incoming SMB traffic from the specified client IP address. If you need to grant access to +the server again in the future, you can use the `Grant-SmbClientAccessToServer` cmdlet. + +## EXAMPLES + +### Example 1 + +```powershell +Revoke-SmbClientAccessToServer -Name "Server01" -IdentifierType "SHA256" -Identifier "ClientHash" +``` + +This example revokes the SMB client access to a server named `Server01` for a client with a +specific SHA256 hash value. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or +[Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Identifier + +Specifies the identity of the client that is being granted access to the SMB server. This parameter +takes a string value that represents the identity of the client. The format of the string value +will depend on the **IdentifierType** parameter that you're using. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IdentifierType + +Specifies the type of identifier that you're using to identify a client. The valid values for the +**IdentifierType** parameter are: + +- SHA256 +- ISSUER + +If you're using the `SHA256` identifier type, you're specifying a hash value that uniquely +identifies the client. If you're using the `ISSUER` identifier type, you're specifying the issuer +of the client's certificate. + +```yaml +Type: IdentifierType +Parameter Sets: (All) +Aliases: +Accepted values: SHA256, ISSUER + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject + +Specifies the input object that's used in a pipeline command. + +```yaml +Type: CimInstance[] +Parameter Sets: InputObject +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -Name + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. + +```yaml +Type: String +Parameter Sets: Query +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. + +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.Management.Infrastructure.CimInstance[] + +## OUTPUTS + +### Microsoft.Management.Infrastructure.CimInstance[] + +## NOTES + +## RELATED LINKS + +[Block-SmbClientAccessToServer](Block-SmbClientAccessToServer.md) + +[Get-SmbClientAccessToServer](Get-SmbClientAccessToServer.md) + +[Grant-SmbClientAccessToServer](Grant-SmbClientAccessToServer.md) + +[Unblock-SmbClientAccessToServer](Unblock-SmbClientAccessToServer.md) diff --git a/docset/winserver2022-ps/smbshare/Set-SmbClientCertificateMapping.md b/docset/winserver2022-ps/smbshare/Set-SmbClientCertificateMapping.md new file mode 100644 index 0000000000..cf8e9f3a80 --- /dev/null +++ b/docset/winserver2022-ps/smbshare/Set-SmbClientCertificateMapping.md @@ -0,0 +1,244 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbClientCertificateMapping.cdxml-help.xml +Module Name: SmbShare +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/set-smbclientcertificatemapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Set-SmbClientCertificateMapping +--- + +# Set-SmbClientCertificateMapping + +## SYNOPSIS +Configures an existing client certificate mapping for the Server Message Block (SMB) protocol. + +## SYNTAX + +``` +Set-SmbClientCertificateMapping [-Namespace] [-Flags ] [-Thumbprint ] + [-StoreName ] [-IssuerName ] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Set-SmbClientCertificateMapping` cmdlet modifies an existing client certificate mapping for +the SMB protocol. These mappings are used to authenticate clients that connect to SMB servers using +certificates. You can use this cmdlet to modify an existing mapping between a client certificate +and an SMB client name. + +## EXAMPLES + +### Example 1: Update the issuer name for a certificate mapping + +```powershell +Set-SmbClientCertificateMapping -Thumbprint "1234567890abcdef" -IssuerName "CN=NewIssuerName" +``` + +This updates the issuer name for a certificate mapping with a specific thumbprint. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Flags + +Specifies if `NamedPipes` are enabled for SMB over QUIC. The acceptable values for this parameter +are: + +- `None`: Remove all flags +- `AllowNamedPipe`: Enable use of named pipes in SMB over QUIC connections for this mapping (off by + default, overrides value of the **RestrictNamedPipeAccessOverQuic** parameter) +- `DefaultCert`: Not used + +```yaml +Type: Flags[] +Parameter Sets: (All) +Aliases: +Accepted values: None, AllowNamedPipe, DefaultCert + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -IssuerName + +Filters the certificate mappings based on the issuer name of the certificate. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Namespace + +Specifies the namespace of the QUIC server. For example, `server1.contoso.com`. By default, the +cmdlet searches in the `root\cimv2\Security\MicrosoftTlsCertificateMappingProvider` namespace. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -StoreName + +Specifies the path to the certificate store for the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Thumbprint + +Specifies the thumbprint value of the certificate. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String + +### Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbClientCertificateMapping.Flags + +## OUTPUTS + +### System.Object + +## NOTES + +## RELATED LINKS + +[Get-SmbClientCertificateMapping](Get-SmbClientCertificateMapping.md) + +[New-SmbClientCertificateMapping](New-SmbClientCertificateMapping.md) + +[Remove-SmbClientCertificateMapping](Remove-SmbClientCertificateMapping.md) diff --git a/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md index 86e9858f1c..aa1310d637 100644 --- a/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md @@ -2,8 +2,8 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbServerCertificateMapping.cdxml-help.xml Module Name: SmbShare -ms.date: 08/21/2021 -online version: https://learn.microsoft.com/powershell/module/smbshare/Set-SmbServerCertificateMapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/set-smbservercertificatemapping?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Set-SmbServerCertificateMapping --- @@ -16,35 +16,64 @@ Modifies a certificate association with the SMB server for SMB over QUIC. ## SYNTAX ### Query + ``` Set-SmbServerCertificateMapping [-Name] [-Flags ] [-Thumbprint ] - [-StoreName ] [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] - [-Confirm] [] + [-StoreName ] [-RequireClientAuthentication ] + [-SkipClientCertificateAccessCheck ] [-CimSession ] [-ThrottleLimit ] + [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] ``` -### InputObject (cdxml) +### InputObject + ``` Set-SmbServerCertificateMapping -InputObject [-Flags ] [-Thumbprint ] - [-StoreName ] [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] - [-Confirm] [] + [-StoreName ] [-RequireClientAuthentication ] + [-SkipClientCertificateAccessCheck ] [-CimSession ] [-ThrottleLimit ] + [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The **Set-SmbServerCertificateMapping** cmdlet modifies a certificate’s association to the SMB server for SMB over QUIC on Windows Server 2022 Datacenter: Azure Edition. This cmdlet is not used for Windows or other Windows Server editions. For more information, review [SMB over QUIC](https://aka.ms/smboverquic). + +The `Set-SmbServerCertificateMapping` cmdlet modifies a certificate's association to the SMB server +for SMB over QUIC. For more information, see [SMB over QUIC](https://aka.ms/smboverquic). + +> [!NOTE] +> +> - The **RequireClientAuthentication** and **SkipClientCertificateAccessCheck** parameters are only +> supported in Windows Server Datacenter: Azure Edition. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client +> certificate validation and access control checks. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is also set to `$true`, the server will perform client +> certificate validation but no access control checks. ## EXAMPLES -### Example 1 - Enable Named Pipes for the SMB over QUIC endpoint -This command enables Named Pipes for the SMB over QUIC endpoint, overriding the default behavior where Named Pipes are disabled for increased security. +### Example 1: Enable Named Pipes for the SMB over QUIC endpoint + +This command enables Named Pipes for the SMB over QUIC endpoint, overriding the default behavior +where Named Pipes are disabled for increased security. ```powershell -PS C:\> Set-SmbServerCertificateMapping -Name 2022-ae-02.corp.contoso.com -Thumbprint 88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F -StoreName my -Flags AllowNamedPipe +$params = @{ + Name = "2022-ae-02.corp.contoso.com" + Thumbprint = "88032B3551FAF7DE26EFFFF814AA086E3DBD2A4F" + StoreName = "My" + Flags = "AllowNamedPipe" +} +Set-SmbServerCertificateMapping @params ``` ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. ```yaml Type: SwitchParameter @@ -59,7 +88,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or +[Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -74,11 +107,14 @@ Accept wildcard characters: False ``` ### -Flags -Specifies if Named Pipes are enabled for SMB over QUIC. The acceptable values for this parameter are: -- `None:` Remove all flags. -- `AllowNamedPipe:` Enable use of named pipes in SMB over QUIC connections for this mapping (off by default, overrides the value of RestrictNamedPipeAccessOverQuic). -- `DefaultCert:` Not used. +Specifies if Named Pipes are enabled for SMB over QUIC. The acceptable values for this parameter +are: + +- `None`: Remove all flags. +- `AllowNamedPipe`: Enable use of named pipes in SMB over QUIC connections for this mapping (off by + default, overrides the value of the **RestrictNamedpipeAccessOverQuic** parameter). +- `DefaultCert`: Not used. ```yaml Type: Flags @@ -94,11 +130,12 @@ Accept wildcard characters: False ``` ### -InputObject -Specifies the input object that is used in a pipeline command. + +Specifies the input object that's used in a pipeline command. ```yaml Type: CimInstance[] -Parameter Sets: InputObject (cdxml) +Parameter Sets: InputObject Aliases: Required: True @@ -109,7 +146,9 @@ Accept wildcard characters: False ``` ### -Name -Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate’s subject name or an entry in the certificate’s subject alternative names. + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. ```yaml Type: String[] @@ -124,7 +163,9 @@ Accept wildcard characters: False ``` ### -PassThru -Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output. + +Returns an object representing the item with which you're working. By default, this cmdlet doesn't +generate any output. ```yaml Type: SwitchParameter @@ -138,8 +179,51 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -RequireClientAuthentication + +Specifies whether client authentication is required for connections to the server. When this +parameter is set to `$true`, clients must present a valid certificate to connect to the server. +When it is set to `$false`, clients can connect without presenting a certificate. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipClientCertificateAccessCheck + +Specifies whether the server should skip the check for client certificate access when a client +connects. When this parameter is set to `$true`, the server will not perform the access control +checks based on the client certificates. This can be useful in scenarios where the server is acting +as a gateway or proxy, and does not need to perform full certificate validation. + +However, it can also increase the risk of security breaches. When this parameter is set to +`$false`, the server will check whether the client has access to the certificate it presents before +allowing the client to connect. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -StoreName -Specifies the path to the certificate store for the certificate. The recommended value is “My” for the local machine personal store. + +Specifies the path to the certificate store for the certificate. The recommended value is "My" for +the local machine personal store. ```yaml Type: String @@ -154,7 +238,12 @@ Accept wildcard characters: False ``` ### -ThrottleLimit -Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. ```yaml Type: Int32 @@ -169,6 +258,7 @@ Accept wildcard characters: False ``` ### -Thumbprint + Specifies the thumbprint value of the certificate. ```yaml @@ -184,6 +274,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -199,8 +290,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. ```yaml Type: SwitchParameter @@ -215,7 +306,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -236,3 +331,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + +[Get-SmbServerCertificateMapping](Get-SmbServerCertificateMapping.md) + +[New-SmbServerCertificateMapping](New-SmbServerCertificateMapping.md) + +[Remove-SmbServerCertificateMapping](Remove-SmbServerCertificateMapping.md) diff --git a/docset/winserver2022-ps/smbshare/Set-SmbServerConfiguration.md b/docset/winserver2022-ps/smbshare/Set-SmbServerConfiguration.md index fc61ca7ee8..b97240eb0b 100644 --- a/docset/winserver2022-ps/smbshare/Set-SmbServerConfiguration.md +++ b/docset/winserver2022-ps/smbshare/Set-SmbServerConfiguration.md @@ -47,6 +47,7 @@ For more information on SMB server and protocol specifications, see and [[MS-SMB2]:Server Message Block (SMB) Protocol Versions 2 and 3](/openspecs/windows_protocols/ms-smb2/5606ad47-5ee0-437a-817e-70c366052962). > [!NOTE] +> > - The **EncryptionCiphers** parameter is available beginning with 2022-06 Cumulative Update for > Microsoft server operating system version 21H2 for x64-based Systems > ([KB5014665](https://support.microsoft.com/help/5014665)), and Cumulative Update for Windows 11, diff --git a/docset/winserver2022-ps/smbshare/Set-SmbShare.md b/docset/winserver2022-ps/smbshare/Set-SmbShare.md index ce2929ed2e..7e4378228a 100644 --- a/docset/winserver2022-ps/smbshare/Set-SmbShare.md +++ b/docset/winserver2022-ps/smbshare/Set-SmbShare.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbShare.cdxml-help.xml Module Name: SmbShare -ms.date: 12/20/2016 +ms.date: 02/22/2024 online version: https://learn.microsoft.com/powershell/module/smbshare/set-smbshare?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Set-SmbShare @@ -16,43 +16,51 @@ Modifies the properties of the SMB share. ## SYNTAX ### Query + ``` -Set-SmbShare [-Name] [[-ScopeName] ] [-SmbInstance ] [-Description ] - [-ConcurrentUserLimit ] [-CATimeout ] [-ContinuouslyAvailable ] - [-FolderEnumerationMode ] [-CachingMode ] [-SecurityDescriptor ] - [-EncryptData ] [-CompressData ] [-LeasingMode ] [-Force] - [-CimSession ] [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] - [] +Set-SmbShare [-Name] [[-ScopeName] ] [-SmbInstance ] + [-Description ] [-ConcurrentUserLimit ] [-CATimeout ] + [-ContinuouslyAvailable ] [-FolderEnumerationMode ] + [-CachingMode ] [-SecurityDescriptor ] [-EncryptData ] + [-CompressData ] [-LeasingMode ] [-Force] [-CimSession ] + [-ThrottleLimit ] [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] ``` -### InputObject (cdxml) +### InputObject + ``` Set-SmbShare -InputObject [-Description ] [-ConcurrentUserLimit ] - [-CATimeout ] [-ContinuouslyAvailable ] [-FolderEnumerationMode ] - [-CachingMode ] [-SecurityDescriptor ] [-EncryptData ] [-CompressData ] - [-LeasingMode ] [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] - [-PassThru] [-WhatIf] [-Confirm] [] + [-CATimeout ] [-ContinuouslyAvailable ] + [-FolderEnumerationMode ] [-CachingMode ] + [-SecurityDescriptor ] [-EncryptData ] [-CompressData ] + [-LeasingMode ] [-Force] [-CimSession ] [-ThrottleLimit ] + [-AsJob] [-PassThru] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION -The **Set-SmbShare** cmdlet modifies the properties of the Server Message Block (SMB) share. + +The `Set-SmbShare` cmdlet modifies the properties of the Server Message Block (SMB) share. ## EXAMPLES ### Example 1: Modify properties of an SMB share -``` -PS C:\>Set-SmbShare -Name "VMFiles" -EncryptData $True -Confirm -Are you sure you want to perform this action? -Performing operation 'Modify' on Target 'Contoso-SO,VMFiles'. + +```powershell +Set-SmbShare -Name "VMFiles" -EncryptData $True + + +Confirm +Are you sure you want to perform this action? +Performing operation 'Modify' on Target 'Contoso-SO,VMFiles'. [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): ``` This command modifies the properties of an SMB share. ### Example 2: Modify properties of an SMB share without confirmation -``` -PS C:\>Set-SmbShare -Name "VMFiles" -EncryptData $True -Force + +```powershell +Set-SmbShare -Name "VMFiles" -EncryptData $True -Force ``` This command modifies the properties of an SMB share without user confirmation. @@ -60,7 +68,9 @@ This command modifies the properties of an SMB share without user confirmation. ## PARAMETERS ### -AsJob -Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. ```yaml Type: SwitchParameter @@ -75,6 +85,7 @@ Accept wildcard characters: False ``` ### -CATimeout + Specifies the continuous availability time-out of the SMB share. ```yaml @@ -90,24 +101,19 @@ Accept wildcard characters: False ``` ### -CachingMode -Specifies the caching mode of the offline files for the SMB share. -There are five caching modes: - -- None. -Prevents users from storing documents and programs offline. -- Manual. -Allows users to identify the documents and programs that they want to store offline. -- Programs. -Automatically stores documents and programs offline. -- Documents. -Automatically stores documents offline. -- BranchCache. -Enables BranchCache and manual caching of documents on the shared folder. + +Specifies the caching mode of the offline files for the SMB share. There are five caching modes: + +- BranchCache - Enables BranchCache and manual caching of documents on the shared folder. +- Documents - Automatically stores documents offline. +- Manual - Allows users to identify the documents and programs that they want to store offline. +- Programs - Automatically stores documents and programs offline. +- None - Prevents users from storing documents and programs offline. ```yaml Type: CachingMode Parameter Sets: (All) -Aliases: +Aliases: Accepted values: None, Manual, Documents, Programs, BranchCache, Unknown Required: False @@ -118,9 +124,11 @@ Accept wildcard characters: False ``` ### -CimSession -Runs the cmdlet in a remote session or on a remote computer. -Enter a computer name or a session object, such as the output of a [New-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227967) or [Get-CimSession](https://go.microsoft.com/fwlink/p/?LinkId=227966) cmdlet. -The default is the current session on the local computer. + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) +or [Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. ```yaml Type: CimSession[] @@ -135,6 +143,7 @@ Accept wildcard characters: False ``` ### -CompressData + Indicates that the shares being enumerated should request compression from clients. ```yaml @@ -150,6 +159,7 @@ Accept wildcard characters: False ``` ### -ConcurrentUserLimit + Specifies the maximum number of concurrently connected users that the SMB share may accommodate. If this parameter is set to zero (0), then the number of users is unlimited. By default, new SMB shares have no limit on the number of concurrent connections. @@ -167,6 +177,7 @@ Accept wildcard characters: False ``` ### -ContinuouslyAvailable + Indicates whether the share is continuously available. ```yaml @@ -182,10 +193,10 @@ Accept wildcard characters: False ``` ### -Description -Specifies an optional description of the SMB share. -A description of the share can be displayed by running the Get-SmbShare cmdlet. -Specify an empty string to clear the current description. -The description may not contain more than 256 characters. + +Specifies an optional description of the SMB share. A description of the share can be displayed by +running the Get-SmbShare cmdlet. Specify an empty string to clear the current description. The +description may not contain more than 256 characters. ```yaml Type: String @@ -200,6 +211,7 @@ Accept wildcard characters: False ``` ### -EncryptData + Indicates whether the SMB share is encrypted. ```yaml @@ -215,16 +227,17 @@ Accept wildcard characters: False ``` ### -FolderEnumerationMode -Specifies which files and folders in the new SMB share will be visible to the users. -The acceptable values for this parameter are: -- AccessBased. -SMB does not the display the files and folders for a share to a user unless that user has rights to access the files and folders. -By default, access-based enumeration is disabled for new SMB shares. -- Unrestricted. -SMB displays files and folders to a user even when the user does not have permission to access those items. +Specifies which files and folders in the new SMB share will be visible to the users. The acceptable +values for this parameter are: + +- `AccessBased`: SMB doesn't the display the files and folders for a share to a user unless that + user has rights to access the files and folders. By default, access-based enumeration is disabled + for new SMB shares. +- `Unrestricted`: SMB displays files and folders to a user even when the user doesn't have + permission to access those items. -The default value is Unrestricted. +The default value is **Unrestricted**. ```yaml Type: FolderEnumerationMode @@ -240,6 +253,7 @@ Accept wildcard characters: False ``` ### -Force + Forces the command to run without asking for user confirmation. ```yaml @@ -255,11 +269,12 @@ Accept wildcard characters: False ``` ### -InputObject + Specifies the input object that is used in a pipeline command. ```yaml Type: CimInstance[] -Parameter Sets: InputObject (cdxml) +Parameter Sets: InputObject Aliases: Required: True @@ -268,21 +283,25 @@ Default value: None Accept pipeline input: True (ByValue) Accept wildcard characters: False ``` + ### -LeasingMode -Specifies SMB leasing and oplock behaviors for application compatibility. The acceptable values for this parameter are: +Specifies SMB leasing and oplock behaviors for application compatibility. The acceptable values for +this parameter are: -- `Full:` Use default lease and oplock behaviors from SMB3. -- `Shared:` Grant read-caching lease but not write or handle-caching. -- `None:` No oplocks or leases, behave like SMB1 (not recommended). +- `Full`: Use default lease and oplock behaviors from SMB3. +- `Shared`: Grant read-caching lease but not write or handle-caching. +- `None`: No oplocks or leases, behave like SMB1 (not recommended). > [!IMPORTANT] -> We do not recommend disabling oplocks, but may be required in some scenarios. For more information, see [SMB1 Product Clearinghouse](https://techcommunity.microsoft.com/t5/Storage-at-Microsoft/SMB1-Product-Clearinghouse/ba-p/426008). +> We don't recommend disabling oplocks, but may be required in some scenarios. +> For more information, see [SMB1 Product Clearinghouse](https://techcommunity.microsoft.com/t5/Storage-at-Microsoft/SMB1-Product-Clearinghouse/ba-p/426008). ```yaml Type: LeasingMode Parameter Sets: (All) -Aliases: +Aliases: +Accepted values: Full, Shared, None Required: False Position: Named @@ -292,6 +311,7 @@ Accept wildcard characters: False ``` ### -Name + Specifies the name of one or more SMB shares. ```yaml @@ -307,8 +327,9 @@ Accept wildcard characters: False ``` ### -PassThru -Returns an object representing the item with which you are working. -By default, this cmdlet does not generate any output. + +Returns an object representing the item with which you are working. By default, this cmdlet does +not generate any output. ```yaml Type: SwitchParameter @@ -323,7 +344,9 @@ Accept wildcard characters: False ``` ### -ScopeName -Specifies the scope name of the SMB share. For use with Windows Server failover cluster file server resources. + +Specifies the scope name of the SMB share. For use with Windows Server failover cluster file server +resources. ```yaml Type: String[] @@ -338,6 +361,7 @@ Accept wildcard characters: False ``` ### -SecurityDescriptor + Specifies the security descriptor for the SMB share in string format. ```yaml @@ -353,8 +377,9 @@ Accept wildcard characters: False ``` ### -SmbInstance -Specifies the input to this cmdlet. -You can use this parameter, or you can pipe the input to this cmdlet. + +Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this +cmdlet. ```yaml Type: SmbInstance @@ -370,9 +395,12 @@ Accept wildcard characters: False ``` ### -ThrottleLimit -Specifies the maximum number of concurrent operations that can be established to run the cmdlet. -If this parameter is omitted or a value of `0` is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. -The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell® calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. The throttle limit applies only to the current cmdlet, not to the session or to the +computer. ```yaml Type: Int32 @@ -387,6 +415,7 @@ Accept wildcard characters: False ``` ### -Confirm + Prompts you for confirmation before running the cmdlet. ```yaml @@ -402,8 +431,8 @@ Accept wildcard characters: False ``` ### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. + +Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml Type: SwitchParameter @@ -418,7 +447,11 @@ Accept wildcard characters: False ``` ### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). ## INPUTS @@ -427,14 +460,15 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## OUTPUTS ### Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/SMB/MSFT_SmbShare + This cmdlet returns a **MSFT_SmbShare** object that represents the modified share. ## NOTES ## RELATED LINKS -[Get-SmbShare](./Get-SmbShare.md) +[Get-SmbShare](Get-SmbShare.md) -[New-SmbShare](./New-SmbShare.md) +[New-SmbShare](New-SmbShare.md) -[Remove-SmbShare](./Remove-SmbShare.md) +[Remove-SmbShare](Remove-SmbShare.md) diff --git a/docset/winserver2022-ps/smbshare/Unblock-SmbClientAccessToServer.md b/docset/winserver2022-ps/smbshare/Unblock-SmbClientAccessToServer.md new file mode 100644 index 0000000000..7c5130b796 --- /dev/null +++ b/docset/winserver2022-ps/smbshare/Unblock-SmbClientAccessToServer.md @@ -0,0 +1,269 @@ +--- +description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. +external help file: SmbClientAccessToServer.cdxml-help.xml +Module Name: SmbShare +ms.date: 02/22/2024 +online version: https://learn.microsoft.com/powershell/module/smbshare/unblock-smbclientaccesstoserver?view=windowsserver2022-ps&wt.mc_id=ps-gethelp +schema: 2.0.0 +title: Unblock-SmbClientAccessToServer +--- + +# Unblock-SmbClientAccessToServer + +## SYNOPSIS +Unblocks SMB client access to a previously blocked server. + +## SYNTAX + +### Query + +``` +Unblock-SmbClientAccessToServer [-Name] -IdentifierType + -Identifier [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] + [-WhatIf] [-Confirm] [] +``` + +### InputObject + +``` +Unblock-SmbClientAccessToServer -InputObject -IdentifierType + -Identifier [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] + [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION + +The `Unblock-SmbClientAccessToServer` cmdlet is used to allow SMB clients to access a server that +was previously blocked using the `Block-SmbClientAccessToServer` cmdlet. When you run this cmdlet, +any existing block on SMB client connections to the specified server will be lifted, and new +connections will be allowed. + +## EXAMPLES + +### Example 1: Unblock SMB client access to a server + +```powershell +$params = @{ + Name = "Server01" + IdentifierType = "ISSUER" + Identifier = "CN=MyCertificateIssuer" + Force = $true +} +Unblock-SmbClientAccessToServer @params +``` + +This command unblocks SMB client access to a server named `Server01` for the based on the client's +certificate. This command runs without prompting for confirmation as the **Force** parameter is set +to `$true`. + +## PARAMETERS + +### -AsJob + +Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to +complete. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -CimSession + +Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session +object, such as the output of a [New-CimSession](/powershell/module/cimcmdlets/new-cimsession) or +[Get-CimSession](/powershell/module/cimcmdlets/get-cimsession) cmdlet. The default is the +current session on the local computer. + +```yaml +Type: CimSession[] +Parameter Sets: (All) +Aliases: Session + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force + +Forces the command to run without asking for user confirmation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Identifier + +Specifies the identity of the client that is being granted access to the SMB server. This parameter +takes a string value that represents the identity of the client. The format of the string value +will depend on the **IdentifierType** parameter that you're using. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IdentifierType + +Specifies the type of identifier that you're using to identify a client. The valid values for the +**IdentifierType** parameter are: + +- SHA256 +- ISSUER + +If you're using the `SHA256` identifier type, you're specifying a hash value that uniquely +identifies the client. If you're using the `ISSUER` identifier type, you're specifying the issuer +of the client's certificate. + +```yaml +Type: IdentifierType +Parameter Sets: (All) +Aliases: +Accepted values: SHA256, ISSUER + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject + +Specifies the input object that's used in a pipeline command. + +```yaml +Type: CimInstance[] +Parameter Sets: InputObject +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -Name + +Specifies a fully-qualified DNS name or NetBIOS name that must match the certificate's subject name +or an entry in the certificate's subject alternative names. + +```yaml +Type: String +Parameter Sets: Query +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -ThrottleLimit + +Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If +this parameter is omitted or a value of `0` is entered, then Windows PowerShell calculates an +optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the +computer. + +The throttle limit applies only to the current cmdlet, not to the session or to the computer. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm + +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf + +Shows what would happen if the cmdlet runs. The cmdlet isn't run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters + +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, +-InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, +-WarningAction, and -WarningVariable. For more information, see +[about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters). + +## INPUTS + +### System.String[] + +### Microsoft.Management.Infrastructure.CimInstance[] + +## OUTPUTS + +### Microsoft.Management.Infrastructure.CimInstance[] + +## NOTES + +## RELATED LINKS + +[Block-SmbClientAccessToServer](Block-SmbClientAccessToServer.md) + +[Get-SmbClientAccessToServer](Get-SmbClientAccessToServer.md) + +[Grant-SmbClientAccessToServer](Grant-SmbClientAccessToServer.md) + +[Revoke-SmbClientAccessToServer](Revoke-SmbClientAccessToServer.md) From 1bea3697ca443a07a5cbb1b7c9f4eab5f41a22ea Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 12 Nov 2024 12:57:27 -0500 Subject: [PATCH 91/98] Clarify parameter usage --- .../smbshare/Get-SmbServerCertificateMapping.md | 10 ++++++++++ .../smbshare/New-SmbServerCertificateMapping.md | 10 ++++++++++ .../smbshare/Remove-SmbServerCertificateMapping.md | 10 ++++++++++ .../smbshare/Set-SmbServerCertificateMapping.md | 10 ++++++++++ 4 files changed, 40 insertions(+) diff --git a/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md index fe61b1bcbe..1ad378bbab 100644 --- a/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md @@ -28,6 +28,16 @@ Get-SmbServerCertificateMapping [[-Name] ] [[-Subject] ] The `Get-SmbServerCertificateMapping` cmdlet retrieves the certificates associated with the SMB server for SMB over QUIC. For more information, see [SMB over QUIC](https://aka.ms/smboverquic). +> [!NOTE] +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client +> certificate validation and access control checks. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is also set to `$true`, the server will perform client +> certificate validation but no access control checks. + ## EXAMPLES ### Example 1 - Retrieve the certificate mapped to two SMB over QUIC server names diff --git a/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md index b78432d2e1..46f93b0aaf 100644 --- a/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md @@ -28,6 +28,16 @@ New-SmbServerCertificateMapping [-Name] [-Thumbprint] [-StoreN The `New-SmbServerCertificateMapping` cmdlet associates a certificate to the SMB server for SMB over QUIC. For more information, see [SMB over QUIC](https://aka.ms/smboverquic). +> [!NOTE] +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client +> certificate validation and access control checks. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is also set to `$true`, the server will perform client +> certificate validation but no access control checks. + ## EXAMPLES ### Example 1 - Map a certificate located in the local machine's personal store diff --git a/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md index e0883ed395..442d590d75 100644 --- a/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md @@ -40,6 +40,16 @@ The `Remove-SmbServerCertificateMapping` cmdlet removes the certificates associa server for SMB over QUIC. For more information, review [SMB over QUIC](/windows-server/storage/file-server/smb-over-quic). +> [!NOTE] +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client +> certificate validation and access control checks. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is also set to `$true`, the server will perform client +> certificate validation but no access control checks. + ## EXAMPLES ### Example 1 - Remove a certificate mapping for SMB server edge endpoint diff --git a/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md index a30edda1ef..dae106b5ad 100644 --- a/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md @@ -38,6 +38,16 @@ Set-SmbServerCertificateMapping -InputObject [-Flags ] [- The `Set-SmbServerCertificateMapping` cmdlet modifies a certificate's association to the SMB server for SMB over QUIC. For more information, see [SMB over QUIC](https://aka.ms/smboverquic). +> [!NOTE] +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client +> certificate validation and access control checks. +> +> - If the **RequireClientAuthentication** parameter is set to `$true` and +> **SkipClientCertificateAccessCheck** is also set to `$true`, the server will perform client +> certificate validation but no access control checks. + ## EXAMPLES ### Example 1: Enable Named Pipes for the SMB over QUIC endpoint From bcab8e5e2d65893b430ed90aa9ef3c54dcc76759 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 12 Nov 2024 13:58:03 -0500 Subject: [PATCH 92/98] Minor edit --- .../smbshare/Get-SmbServerCertificateMapping.md | 2 +- .../smbshare/New-SmbServerCertificateMapping.md | 2 +- .../smbshare/Remove-SmbServerCertificateMapping.md | 2 +- .../smbshare/Set-SmbServerCertificateMapping.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md index bcffedce4c..7e62ecc227 100644 --- a/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md @@ -31,7 +31,7 @@ server for SMB over QUIC. For more information, see [SMB over QUIC](https://aka. > [!NOTE] > > - The **RequireClientAuthentication** and **SkipClientCertificateAccessCheck** parameters are only -> supported in Windows Server Datacenter: Azure Edition. +> supported in Windows Server 2022 Datacenter: Azure Edition. > > - If the **RequireClientAuthentication** parameter is set to `$true` and > **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client diff --git a/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md index 38482991c4..f578ca5589 100644 --- a/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md @@ -31,7 +31,7 @@ over QUIC. For more information, see [SMB over QUIC](https://aka.ms/smboverquic) > [!NOTE] > > - The **RequireClientAuthentication** and **SkipClientCertificateAccessCheck** parameters are only -> supported in Windows Server Datacenter: Azure Edition. +> supported in Windows Server 2022 Datacenter: Azure Edition. > > - If the **RequireClientAuthentication** parameter is set to `$true` and > **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client diff --git a/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md index 0ae4821c44..dcde4c057f 100644 --- a/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md @@ -43,7 +43,7 @@ server for SMB over QUIC. For more information, review > [!NOTE] > > - The **RequireClientAuthentication** and **SkipClientCertificateAccessCheck** parameters are only -> supported in Windows Server Datacenter: Azure Edition. +> supported in Windows Server 2022 Datacenter: Azure Edition. > > - If the **RequireClientAuthentication** parameter is set to `$true` and > **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client diff --git a/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md index aa1310d637..efd8837f01 100644 --- a/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md @@ -41,7 +41,7 @@ for SMB over QUIC. For more information, see [SMB over QUIC](https://aka.ms/smbo > [!NOTE] > > - The **RequireClientAuthentication** and **SkipClientCertificateAccessCheck** parameters are only -> supported in Windows Server Datacenter: Azure Edition. +> supported in Windows Server 2022 Datacenter: Azure Edition. > > - If the **RequireClientAuthentication** parameter is set to `$true` and > **SkipClientCertificateAccessCheck** is set to `$false`, the server will perform both client From 7f6930a5c332bfcbbd2c5006f4f6e8aeda49b266 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 12 Nov 2024 14:27:41 -0500 Subject: [PATCH 93/98] Minor edit --- .../smbshare/Get-SmbServerCertificateMapping.md | 4 ++-- .../smbshare/New-SmbServerCertificateMapping.md | 4 ++-- .../smbshare/Remove-SmbServerCertificateMapping.md | 4 ++-- .../smbshare/Set-SmbServerCertificateMapping.md | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md index 1ad378bbab..4f6124bea7 100644 --- a/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md @@ -187,8 +187,8 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not check whether the client has -access to the certificate it presents. This can be useful in scenarios where the server is acting +connects. When this parameter is set to `$true`, the server will not perform the access control +checks based on the client certificates. This can be useful in scenarios where the server is acting as a gateway or proxy, and does not need to perform full certificate validation. However, it can also increase the risk of security breaches. When this parameter is set to diff --git a/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md index 46f93b0aaf..55d0193f45 100644 --- a/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md @@ -192,8 +192,8 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not check whether the client has -access to the certificate it presents. This can be useful in scenarios where the server is acting +connects. When this parameter is set to `$true`, the server will not perform the access control +checks based on the client certificates. This can be useful in scenarios where the server is acting as a gateway or proxy, and does not need to perform full certificate validation. However, it can also increase the risk of security breaches. When this parameter is set to diff --git a/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md index 442d590d75..38b77bf35e 100644 --- a/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md @@ -252,8 +252,8 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not check whether the client has -access to the certificate it presents. This can be useful in scenarios where the server is acting +connects. When this parameter is set to `$true`, the server will not perform the access control +checks based on the client certificates. This can be useful in scenarios where the server is acting as a gateway or proxy, and does not need to perform full certificate validation. However, it can also increase the risk of security breaches. When this parameter is set to diff --git a/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md index dae106b5ad..fd9dc419c2 100644 --- a/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md @@ -197,8 +197,8 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not check whether the client has -access to the certificate it presents. This can be useful in scenarios where the server is acting +connects. When this parameter is set to `$true`, the server will not perform the access control +checks based on the client certificates. This can be useful in scenarios where the server is acting as a gateway or proxy, and does not need to perform full certificate validation. However, it can also increase the risk of security breaches. When this parameter is set to From a0d4a2f14f25015624d28757ddb161bd61e10769 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 12 Nov 2024 17:26:31 -0500 Subject: [PATCH 94/98] Applied PM/Dev feedback --- .../smbshare/Get-SmbServerCertificateMapping.md | 12 +++++++----- .../smbshare/New-SmbServerCertificateMapping.md | 12 +++++++----- .../smbshare/Remove-SmbServerCertificateMapping.md | 12 +++++++----- .../smbshare/Set-SmbServerCertificateMapping.md | 12 +++++++----- 4 files changed, 28 insertions(+), 20 deletions(-) diff --git a/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md index 4f6124bea7..cf7db1e2a0 100644 --- a/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Get-SmbServerCertificateMapping.md @@ -187,13 +187,15 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not perform the access control -checks based on the client certificates. This can be useful in scenarios where the server is acting -as a gateway or proxy, and does not need to perform full certificate validation. +connects. This parameter only applies when the server certificate mapping +**RequireClientAuthentication** value is `$true`. When this parameter is set to `$true`, the server +will not perform the access control checks based on the client certificates. This can be useful in +scenarios where the server is acting as a gateway or proxy and client certificate validation is +sufficient. However, it can also increase the risk of security breaches. When this parameter is set to -`$false`, the server will check whether the client has access to the certificate it presents before -allowing the client to connect. +`$false`, the server will perform the access control checks based on the client certificates in +addition to the client certificate validation before allowing the client to connect. ```yaml Type: Boolean[] diff --git a/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md index 55d0193f45..dc3698caac 100644 --- a/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/New-SmbServerCertificateMapping.md @@ -192,13 +192,15 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not perform the access control -checks based on the client certificates. This can be useful in scenarios where the server is acting -as a gateway or proxy, and does not need to perform full certificate validation. +connects. This parameter only applies when the server certificate mapping +**RequireClientAuthentication** value is `$true`. When this parameter is set to `$true`, the server +will not perform the access control checks based on the client certificates. This can be useful in +scenarios where the server is acting as a gateway or proxy and client certificate validation is +sufficient. However, it can also increase the risk of security breaches. When this parameter is set to -`$false`, the server will check whether the client has access to the certificate it presents before -allowing the client to connect. +`$false`, the server will perform the access control checks based on the client certificates in +addition to the client certificate validation before allowing the client to connect. ```yaml Type: Boolean diff --git a/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md index 38b77bf35e..bb26433f39 100644 --- a/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Remove-SmbServerCertificateMapping.md @@ -252,13 +252,15 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not perform the access control -checks based on the client certificates. This can be useful in scenarios where the server is acting -as a gateway or proxy, and does not need to perform full certificate validation. +connects. This parameter only applies when the server certificate mapping +**RequireClientAuthentication** value is `$true`. When this parameter is set to `$true`, the server +will not perform the access control checks based on the client certificates. This can be useful in +scenarios where the server is acting as a gateway or proxy and client certificate validation is +sufficient. However, it can also increase the risk of security breaches. When this parameter is set to -`$false`, the server will check whether the client has access to the certificate it presents before -allowing the client to connect. +`$false`, the server will perform the access control checks based on the client certificates in +addition to the client certificate validation before allowing the client to connect. ```yaml Type: Boolean[] diff --git a/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md b/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md index fd9dc419c2..341c81209f 100644 --- a/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md +++ b/docset/winserver2025-ps/smbshare/Set-SmbServerCertificateMapping.md @@ -197,13 +197,15 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not perform the access control -checks based on the client certificates. This can be useful in scenarios where the server is acting -as a gateway or proxy, and does not need to perform full certificate validation. +connects. This parameter only applies when the server certificate mapping +**RequireClientAuthentication** value is `$true`. When this parameter is set to `$true`, the server +will not perform the access control checks based on the client certificates. This can be useful in +scenarios where the server is acting as a gateway or proxy and client certificate validation is +sufficient. However, it can also increase the risk of security breaches. When this parameter is set to -`$false`, the server will check whether the client has access to the certificate it presents before -allowing the client to connect. +`$false`, the server will perform the access control checks based on the client certificates in +addition to the client certificate validation before allowing the client to connect. ```yaml Type: Boolean From 8427426cd89a464693661b70c5b0c621389f0447 Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Tue, 12 Nov 2024 17:28:56 -0500 Subject: [PATCH 95/98] Applied PM/Dev feedback --- .../smbshare/Get-SmbServerCertificateMapping.md | 12 +++++++----- .../smbshare/New-SmbServerCertificateMapping.md | 12 +++++++----- .../smbshare/Remove-SmbServerCertificateMapping.md | 12 +++++++----- .../smbshare/Set-SmbServerCertificateMapping.md | 12 +++++++----- 4 files changed, 28 insertions(+), 20 deletions(-) diff --git a/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md index 7e62ecc227..5a4e92e961 100644 --- a/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Get-SmbServerCertificateMapping.md @@ -190,13 +190,15 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not perform the access control -checks based on the client certificates. This can be useful in scenarios where the server is acting -as a gateway or proxy, and does not need to perform full certificate validation. +connects. This parameter only applies when the server certificate mapping +**RequireClientAuthentication** value is `$true`. When this parameter is set to `$true`, the server +will not perform the access control checks based on the client certificates. This can be useful in +scenarios where the server is acting as a gateway or proxy and client certificate validation is +sufficient. However, it can also increase the risk of security breaches. When this parameter is set to -`$false`, the server will check whether the client has access to the certificate it presents before -allowing the client to connect. +`$false`, the server will perform the access control checks based on the client certificates in +addition to the client certificate validation before allowing the client to connect. ```yaml Type: Boolean[] diff --git a/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md index f578ca5589..416f796ca8 100644 --- a/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/New-SmbServerCertificateMapping.md @@ -195,13 +195,15 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not perform the access control -checks based on the client certificates. This can be useful in scenarios where the server is acting -as a gateway or proxy, and does not need to perform full certificate validation. +connects. This parameter only applies when the server certificate mapping +**RequireClientAuthentication** value is `$true`. When this parameter is set to `$true`, the server +will not perform the access control checks based on the client certificates. This can be useful in +scenarios where the server is acting as a gateway or proxy and client certificate validation is +sufficient. However, it can also increase the risk of security breaches. When this parameter is set to -`$false`, the server will check whether the client has access to the certificate it presents before -allowing the client to connect. +`$false`, the server will perform the access control checks based on the client certificates in +addition to the client certificate validation before allowing the client to connect. ```yaml Type: Boolean diff --git a/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md index dcde4c057f..5d864fba82 100644 --- a/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Remove-SmbServerCertificateMapping.md @@ -255,13 +255,15 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not perform the access control -checks based on the client certificates. This can be useful in scenarios where the server is acting -as a gateway or proxy, and does not need to perform full certificate validation. +connects. This parameter only applies when the server certificate mapping +**RequireClientAuthentication** value is `$true`. When this parameter is set to `$true`, the server +will not perform the access control checks based on the client certificates. This can be useful in +scenarios where the server is acting as a gateway or proxy and client certificate validation is +sufficient. However, it can also increase the risk of security breaches. When this parameter is set to -`$false`, the server will check whether the client has access to the certificate it presents before -allowing the client to connect. +`$false`, the server will perform the access control checks based on the client certificates in +addition to the client certificate validation before allowing the client to connect. ```yaml Type: Boolean[] diff --git a/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md b/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md index efd8837f01..a51c643d09 100644 --- a/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md +++ b/docset/winserver2022-ps/smbshare/Set-SmbServerCertificateMapping.md @@ -200,13 +200,15 @@ Accept wildcard characters: False ### -SkipClientCertificateAccessCheck Specifies whether the server should skip the check for client certificate access when a client -connects. When this parameter is set to `$true`, the server will not perform the access control -checks based on the client certificates. This can be useful in scenarios where the server is acting -as a gateway or proxy, and does not need to perform full certificate validation. +connects. This parameter only applies when the server certificate mapping +**RequireClientAuthentication** value is `$true`. When this parameter is set to `$true`, the server +will not perform the access control checks based on the client certificates. This can be useful in +scenarios where the server is acting as a gateway or proxy and client certificate validation is +sufficient. However, it can also increase the risk of security breaches. When this parameter is set to -`$false`, the server will check whether the client has access to the certificate it presents before -allowing the client to connect. +`$false`, the server will perform the access control checks based on the client certificates in +addition to the client certificate validation before allowing the client to connect. ```yaml Type: Boolean From 7b20fc84d723a690294aa5d3e736442c433da2ba Mon Sep 17 00:00:00 2001 From: Xelu86 <103963494+Xelu86@users.noreply.github.com> Date: Thu, 14 Nov 2024 19:53:00 -0500 Subject: [PATCH 96/98] Added missing parameter --- .../smbshare/Get-SmbServerConfiguration.md | 15 +++-- .../smbshare/Reset-SmbServerConfiguration.md | 37 ++++++++--- .../smbshare/Set-SmbServerConfiguration.md | 61 ++++++++++++------- 3 files changed, 77 insertions(+), 36 deletions(-) diff --git a/docset/winserver2022-ps/smbshare/Get-SmbServerConfiguration.md b/docset/winserver2022-ps/smbshare/Get-SmbServerConfiguration.md index b624d9e474..e114010dce 100644 --- a/docset/winserver2022-ps/smbshare/Get-SmbServerConfiguration.md +++ b/docset/winserver2022-ps/smbshare/Get-SmbServerConfiguration.md @@ -34,14 +34,16 @@ Get-SmbServerConfiguration ``` ```output -AnnounceComment : +AnnounceComment : AnnounceServer : False AsynchronousCredits : 512 +AuditClientCertificateAccess : False AuditSmb1Access : False AutoDisconnectTimeout : 15 AutoShareServer : True AutoShareWorkstation : True CachedOpenLimit : 10 +DisableCompression : False DisableSmbEncryptionOnSecureConnection : True DurableHandleV2TimeoutInSeconds : 180 EnableAuthenticateUserSharing : False @@ -53,8 +55,10 @@ EnableOplocks : True EnableSecuritySignature : False EnableSMB1Protocol : False EnableSMB2Protocol : True +EnableSMBQUIC : True EnableStrictNameChecking : True EncryptData : False +EncryptionCiphers : AES_128_GCM, AES_128_CCM, AES_256_GCM, AES_256_CCM IrpStackSize : 15 KeepAliveTime : 2 MaxChannelPerSession : 32 @@ -62,12 +66,14 @@ MaxMpxCount : 50 MaxSessionPerConnection : 16384 MaxThreadsPerQueue : 20 MaxWorkItems : 1 -NullSessionPipes : -NullSessionShares : +NullSessionPipes : +NullSessionShares : OplockBreakWait : 35 PendingClientTimeoutInSeconds : 120 RejectUnencryptedAccess : True +RequestCompression : False RequireSecuritySignature : False +RestrictNamedpipeAccessViaQuic : True ServerHidden : True Smb2CreditsMax : 8192 Smb2CreditsMin : 512 @@ -77,9 +83,6 @@ ValidateAliasNotCircular : True ValidateShareScope : True ValidateShareScopeNotAliased : True ValidateTargetName : True -RestrictNamedpipeAccessViaQuic : True -EnableSMBQUIC : True -EncryptionCiphers : AES_128_GCM, AES_128_CCM, AES_256_GCM, AES_256_CCM ``` This command retrieves the SMB server configuration. diff --git a/docset/winserver2022-ps/smbshare/Reset-SmbServerConfiguration.md b/docset/winserver2022-ps/smbshare/Reset-SmbServerConfiguration.md index 9eda3676a4..27e3456890 100644 --- a/docset/winserver2022-ps/smbshare/Reset-SmbServerConfiguration.md +++ b/docset/winserver2022-ps/smbshare/Reset-SmbServerConfiguration.md @@ -17,15 +17,15 @@ Resets the Server Message Block (SMB) server configuration parameters to their d ``` Reset-SmbServerConfiguration [-All] [-AnnounceComment] [-AnnounceServer] [-AsynchronousCredits] - [-AuditSmb1Access] [-AutoShareServer] [-AutoShareWorkstation] [-CachedOpenLimit] - [-DisableCompression] [-DisableSmbEncryptionOnSecureConnection] [-DurableHandleV2TimeoutInSeconds] - [-EnableDownlevelTimewarp] [-EnableLeasing] [-EnableMultiChannel] [-EnableOplocks] - [-EnableSMB2Protocol] [-EnableSMBQUIC] [-EnableStrictNameChecking] [-EncryptData] - [-EncryptionCiphers] [-IrpStackSize] [-KeepAliveTime] [-MaxChannelPerSession] [-MaxMpxCount] - [-MaxSessionPerConnection] [-MaxThreadsPerQueue] [-MaxWorkItems] [-NullSessionShares] - [-OplockBreakWait] [-PendingClientTimeoutInSeconds] [-RejectUnencryptedAccess] - [-RequestCompression] [-RestrictNamedpipeAccessViaQuic] [-ServerHidden] [-Smb2CreditsMax] - [-Smb2CreditsMin] [-SmbServerNameHardeningLevel] [-TreatHostAsStableStorage] + [-AuditClientCertificateAccess] [-AuditSmb1Access] [-AutoShareServer] [-AutoShareWorkstation] + [-CachedOpenLimit] [-DisableCompression] [-DisableSmbEncryptionOnSecureConnection] + [-DurableHandleV2TimeoutInSeconds] [-EnableDownlevelTimewarp] [-EnableLeasing] + [-EnableMultiChannel] [-EnableOplocks] [-EnableSMB2Protocol] [-EnableSMBQUIC] + [-EnableStrictNameChecking] [-EncryptData] [-EncryptionCiphers] [-IrpStackSize] [-KeepAliveTime] + [-MaxChannelPerSession] [-MaxMpxCount] [-MaxSessionPerConnection] [-MaxThreadsPerQueue] + [-MaxWorkItems] [-NullSessionShares] [-OplockBreakWait] [-PendingClientTimeoutInSeconds] + [-RejectUnencryptedAccess] [-RequestCompression] [-RestrictNamedpipeAccessViaQuic] [-ServerHidden] + [-Smb2CreditsMax] [-Smb2CreditsMin] [-SmbServerNameHardeningLevel] [-TreatHostAsStableStorage] [-ValidateAliasNotCircular] [-ValidateShareScope] [-ValidateShareScopeNotAliased] [-ValidateTargetName] [-Force] [-CimSession ] [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] [] @@ -144,6 +144,25 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -AuditClientCertificateAccess + +Resets the SMB over QUIC client access control audit events to its default value. + +> [!NOTE] +> Devices running Windows 11 version 22H2 and earlier may not have access to this parameter. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -AuditSmb1Access Resets the auditing of SMB version 1 protocol behavior to its default value. diff --git a/docset/winserver2022-ps/smbshare/Set-SmbServerConfiguration.md b/docset/winserver2022-ps/smbshare/Set-SmbServerConfiguration.md index b97240eb0b..7806d604a7 100644 --- a/docset/winserver2022-ps/smbshare/Set-SmbServerConfiguration.md +++ b/docset/winserver2022-ps/smbshare/Set-SmbServerConfiguration.md @@ -2,7 +2,7 @@ description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell. external help file: SmbServerConfiguration.cdxml-help.xml Module Name: SmbShare -ms.date: 10/20/2022 +ms.date: 02/22/2024 online version: /powershell/module/smbshare/set-smbserverconfiguration?view=windowsserver2022-ps&wt.mc_id=ps-gethelp schema: 2.0.0 title: Set-SmbServerConfiguration @@ -17,26 +17,26 @@ Sets the Server Message Block (SMB) server configuration. ``` Set-SmbServerConfiguration [-AnnounceComment ] [-AnnounceServer ] - [-AsynchronousCredits ] [-AuditSmb1Access ] [-AutoDisconnectTimeout ] - [-AutoShareServer ] [-AutoShareWorkstation ] [-CachedOpenLimit ] - [-DisableCompression ] [-DisableSmbEncryptionOnSecureConnection ] - [-DurableHandleV2TimeoutInSeconds ] [-EnableAuthenticateUserSharing ] - [-EnableDownlevelTimewarp ] [-EnableForcedLogoff ] [-EnableLeasing ] - [-EnableMultiChannel ] [-EnableOplocks ] [-EnableSecuritySignature ] - [-EnableSMB1Protocol ] [-EnableSMB2Protocol ] [-EnableSMBQUIC ] - [-EnableStrictNameChecking ] [-EncryptData ] [-EncryptionCiphers ] - [-IrpStackSize ] [-KeepAliveTime ] [-MaxChannelPerSession ] - [-MaxMpxCount ] [-MaxSessionPerConnection ] [-MaxThreadsPerQueue ] - [-MaxWorkItems ] [-NullSessionPipes ] [-NullSessionShares ] - [-OplockBreakWait ] [-PendingClientTimeoutInSeconds ] - [-RejectUnencryptedAccess ] [-RequestCompression ] - [-RequireSecuritySignature ] [-RestrictNamedpipeAccessViaQuic ] - [-ServerHidden ] [-Smb2CreditsMax ] [-Smb2CreditsMin ] - [-SmbServerNameHardeningLevel ] [-TreatHostAsStableStorage ] - [-ValidateAliasNotCircular ] [-ValidateShareScope ] - [-ValidateShareScopeNotAliased ] [-ValidateTargetName ] [-Force] - [-CimSession ] [-ThrottleLimit ] [-AsJob] [-WhatIf] [-Confirm] - [] + [-AsynchronousCredits ] [-AuditClientCertificateAccess ] + [-AuditSmb1Access ] [-AutoDisconnectTimeout ] [-AutoShareServer ] + [-AutoShareWorkstation ] [-CachedOpenLimit ] [-DisableCompression ] + [-DisableSmbEncryptionOnSecureConnection ] [-DurableHandleV2TimeoutInSeconds ] + [-EnableAuthenticateUserSharing ] [-EnableDownlevelTimewarp ] + [-EnableForcedLogoff ] [-EnableLeasing ] [-EnableMultiChannel ] + [-EnableOplocks ] [-EnableSecuritySignature ] [-EnableSMB1Protocol ] + [-EnableSMB2Protocol ] [-EnableSMBQUIC ] [-EnableStrictNameChecking ] + [-EncryptData ] [-EncryptionCiphers ] [-IrpStackSize ] + [-KeepAliveTime ] [-MaxChannelPerSession ] [-MaxMpxCount ] + [-MaxSessionPerConnection ] [-MaxThreadsPerQueue ] [-MaxWorkItems ] + [-NullSessionPipes ] [-NullSessionShares ] [-OplockBreakWait ] + [-PendingClientTimeoutInSeconds ] [-RejectUnencryptedAccess ] + [-RequestCompression ] [-RequireSecuritySignature ] + [-RestrictNamedpipeAccessViaQuic ] [-ServerHidden ] [-Smb2CreditsMax ] + [-Smb2CreditsMin ] [-SmbServerNameHardeningLevel ] + [-TreatHostAsStableStorage ] [-ValidateAliasNotCircular ] + [-ValidateShareScope ] [-ValidateShareScopeNotAliased ] + [-ValidateTargetName ] [-Force] [-CimSession ] [-ThrottleLimit ] + [-AsJob] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -184,6 +184,25 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -AuditClientCertificateAccess + +Enables SMB over QUIC client access control audit events. There are three possible events: access +allowed, access denied, and error. The access allowed and access denied events list properties of +the client certificate chain and any allow and deny access control entries that apply to the +client certificates. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -AuditSmb1Access Enables auditing of SMB version 1 protocol in Windows Event Log. From 1a25a7bd338abb424e4959a46477b7e264aff935 Mon Sep 17 00:00:00 2001 From: albert Date: Fri, 22 Nov 2024 12:11:09 -0800 Subject: [PATCH 97/98] Update links --- .../adfs/Get-AdfsRelyingPartyTrust.md | 10 +++++++++- docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md | 2 +- docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md | 2 +- docset/winserver2012r2-ps/hpc/Set-HpcNode.md | 4 ++-- docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md | 2 +- docset/winserver2012r2-ps/hpc/Set-HpcPool.md | 6 +++--- docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md | 2 +- docset/winserver2012r2-ps/hpc/Set-HpcTask.md | 6 +++--- docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md | 6 +++--- docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md | 4 ++-- docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md | 2 +- docset/winserver2012r2-ps/hpc/Start-HpcNode.md | 4 ++-- docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcJob.md | 8 ++++---- docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcTask.md | 6 +++--- docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md | 4 ++-- .../hpc/Validate-HpcIScsiStorageArray.md | 8 ++++---- .../winserver2016-ps/bestpractices/Invoke-BpaModel.md | 1 - 19 files changed, 44 insertions(+), 37 deletions(-) diff --git a/docset/winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md b/docset/winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md index 8738e4d6aa..75de0fa316 100644 --- a/docset/winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md +++ b/docset/winserver2012r2-ps/adfs/Get-AdfsRelyingPartyTrust.md @@ -42,7 +42,15 @@ PS C:\> Get-AdfsRelyingPartyTrust -Name "FabrikamApp" This command gets the property settings for the relying party trust named FabrikamApp. -### Example 2: Get property settings for an updated relying party trust +### Example 2: Get property settings for a relying party trust by using an identifier +``` +PS C:\> Get-AdfsRelyingPartyTrust -Identifier "https://app.fabrikam.com" + +``` + +This command gets the property settings for a relying party trust that has the identifier https://app.fabrikam.com. + +### Example 3: Get property settings for an updated relying party trust ``` PS C:\> Get-AdfsRelyingPartyTrust | Where-Object{ $_.LastUpdateTime -le (get-date).subtract((new-timespan -hours 24))} ``` diff --git a/docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md b/docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md index 42e2be1d3e..cad340bedd 100644 --- a/docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md +++ b/docset/winserver2012r2-ps/hpc/Get-HpcJobCredential.md @@ -68,4 +68,4 @@ This cmdlet was introduced in HPC Pack 2008 R2 with Service Pack 2 (SP2). It is [Remove-HpcJobCredential](/powershell/module/hpcpack2016/remove-hpcjobcredential?view=hpc16-ps) -[Set-HpcJobCredential](/powershell/module/hpcpack2019/set-hpcjobcredential?view=hpc19-ps) +[Set-HpcJobCredential](/powershell/module/hpcpack2016/set-hpcjobcredential?view=hpc16-ps) diff --git a/docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md b/docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md index ebd44728af..2b451ecb29 100644 --- a/docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md +++ b/docset/winserver2012r2-ps/hpc/New-HpcSoftCard.md @@ -85,4 +85,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Get-HpcJobCredential](./Get-HpcJobCredential.md) -[Set-HpcJobCredential](/powershell/module/hpcpack2019/set-hpcjobcredential?view=hpc19-ps) +[Set-HpcJobCredential](/powershell/module/hpcpack2016/set-hpcjobcredential?view=hpc16-ps) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcNode.md b/docset/winserver2012r2-ps/hpc/Set-HpcNode.md index d7c54ab754..493696be6a 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcNode.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcNode.md @@ -340,11 +340,11 @@ You must be a cluster administrator to run this cmdlet successfully. ## RELATED LINKS -[Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) +[Get-HpcNode](/powershell/module/hpcpack2016/get-hpcnode?view=hpc16-ps) [Remove-HpcNode](/powershell/module/hpcpack2016/remove-hpcnode?view=hpc16-ps) -[Restart-HpcNode](/powershell/module/hpcpack2019/restart-hpcnode?view=hpc19-ps) +[Restart-HpcNode](/powershell/module/hpcpack2016/restart-hpcnode?view=hpc16-ps) [Shutdown-HpcNode](./Shutdown-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md b/docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md index 3c48afd617..36a98452df 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcNodeState.md @@ -214,6 +214,6 @@ You must be a cluster administrator to run this cmdlet successfully. ## RELATED LINKS -[Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) +[Get-HpcNode](/powershell/module/hpcpack2016/get-hpcnode?view=hpc16-ps) [Set-HpcNode](./Set-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcPool.md b/docset/winserver2012r2-ps/hpc/Set-HpcPool.md index 2c1e86cbe0..35ce446d7e 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcPool.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcPool.md @@ -117,8 +117,8 @@ This cmdlet was introduced in HPC Pack 2008 R2 with Service Pack 2 (SP2). It is ## RELATED LINKS -[Add-HpcPool](/powershell/module/hpcpack2019/add-hpcpool?view=hpc19-ps) +[Add-HpcPool](/powershell/module/hpcpack2016/add-hpcpool?view=hpc16-ps) -[Get-HpcPool](/powershell/module/hpcpack2019/get-hpcpool?view=hpc19-ps) +[Get-HpcPool](/powershell/module/hpcpack2016/get-hpcpool?view=hpc16-ps) -[Remove-HpcPool](/powershell/module/hpcpack2019/remove-hpcpool?view=hpc19-ps) +[Remove-HpcPool](/powershell/module/hpcpack2016/remove-hpcpool?view=hpc16-ps) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md b/docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md index fdee7b4603..71110791bf 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcSoaCredential.md @@ -134,6 +134,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Remove-HpcSoaCredential](/powershell/module/hpcpack2016/remove-hpcsoacredential?view=hpc16-ps) -[Set-HpcJobCredential](/powershell/module/hpcpack2019/set-hpcjobcredential?view=hpc19-ps) +[Set-HpcJobCredential](/powershell/module/hpcpack2016/set-hpcjobcredential?view=hpc16-ps) [Set-HpcTestCredential](./Set-HpcTestCredential.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcTask.md b/docset/winserver2012r2-ps/hpc/Set-HpcTask.md index 32207f4308..4d58cca1b7 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcTask.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcTask.md @@ -663,10 +663,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-HpcTask](/powershell/module/hpcpack2019/add-hpctask?view=hpc19-ps) +[Add-HpcTask](/powershell/module/hpcpack2016/add-hpctask?view=hpc16-ps) -[Export-HpcTask](/powershell/module/hpcpack2019/export-hpctask?view=hpc19-ps) +[Export-HpcTask](/powershell/module/hpcpack2016/export-hpctask?view=hpc16-ps) -[Get-HpcTask](/powershell/module/hpcpack2019/get-hpctask?view=hpc19-ps) +[Get-HpcTask](/powershell/module/hpcpack2016/get-hpctask?view=hpc16-ps) [Stop-HpcTask](./Stop-HpcTask.md) diff --git a/docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md b/docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md index ba73d7ffb7..1e414d29a3 100644 --- a/docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md +++ b/docset/winserver2012r2-ps/hpc/Set-HpcTestCredential.md @@ -144,10 +144,10 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Invoke-HpcTest](/powershell/module/hpcpack2019/invoke-hpctest?view=hpc19-ps) +[Invoke-HpcTest](/powershell/module/hpcpack2016/invoke-hpctest?view=hpc16-ps) -[Remove-HpcTestCredential](/powershell/module/hpcpack2019/remove-hpctestcredential?view=hpc19-ps) +[Remove-HpcTestCredential](/powershell/module/hpcpack2016/remove-hpctestcredential?view=hpc16-ps) -[Set-HpcJobCredential](/powershell/module/hpcpack2019/set-hpcjobcredential?view=hpc19-ps) +[Set-HpcJobCredential](/powershell/module/hpcpack2016/set-hpcjobcredential?view=hpc16-ps) [Set-HpcSoaCredential](./Set-HpcSoaCredential.md) diff --git a/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md b/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md index 7d124d422f..1388c718a6 100644 --- a/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md +++ b/docset/winserver2012r2-ps/hpc/Shutdown-HpcNode.md @@ -165,11 +165,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) +[Get-HpcNode](/powershell/module/hpcpack2016/get-hpcnode?view=hpc16-ps) [Remove-HpcNode](/powershell/module/hpcpack2016/remove-hpcnode?view=hpc16-ps) -[Restart-HpcNode](/powershell/module/hpcpack2019/restart-hpcnode?view=hpc19-ps) +[Restart-HpcNode](/powershell/module/hpcpack2016/restart-hpcnode?view=hpc16-ps) [Set-HpcNode](./Set-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md b/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md index ac7298f3b1..0720f33e4e 100644 --- a/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md +++ b/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md @@ -137,7 +137,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Remove-HpcAzureNode](/powershell/module/hpcpack2019/remove-hpcazurenode?view=hpc19-ps) +[Remove-HpcAzureNode](/powershell/module/hpcpack2019/remove-hpcazurenode?view=hpc16-ps) [Start-HpcNodeSet](./Start-HpcNodeSet.md) diff --git a/docset/winserver2012r2-ps/hpc/Start-HpcNode.md b/docset/winserver2012r2-ps/hpc/Start-HpcNode.md index 333515f5c6..292913cce6 100644 --- a/docset/winserver2012r2-ps/hpc/Start-HpcNode.md +++ b/docset/winserver2012r2-ps/hpc/Start-HpcNode.md @@ -117,11 +117,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Get-HpcNode](/powershell/module/hpcpack2019/get-hpcnode?view=hpc19-ps) +[Get-HpcNode](/powershell/module/hpcpack2016/get-hpcnode?view=hpc16-ps) [Remove-HpcNode](/powershell/module/hpcpack2016/remove-hpcnode?view=hpc16-ps) -[Restart-HpcNode](/powershell/module/hpcpack2019/restart-hpcnode?view=hpc19-ps) +[Restart-HpcNode](/powershell/module/hpcpack2016/restart-hpcnode?view=hpc16-ps) [Set-HpcNode](./Set-HpcNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md b/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md index 019a99edba..a9ec139858 100644 --- a/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md +++ b/docset/winserver2012r2-ps/hpc/Start-HpcNodeSet.md @@ -111,7 +111,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-HpcNodeSet](/powershell/module/hpcpack2019/add-hpcnodeset?view=hpc19-ps) +[Add-HpcNodeSet](/powershell/module/hpcpack2016/add-hpcnodeset?view=hpc16-ps) [Remove-HpcNodeSet](/powershell/module/hpcpack2016/remove-hpcnodeset?view=hpc16-ps) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md b/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md index b0da30268b..0a49dc21b5 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcJob.md @@ -248,12 +248,12 @@ All other tasks are queued, including those that failed. ## RELATED LINKS -[Export-HpcJob](/powershell/module/hpcpack2019/export-hpcjob?view=hpc19-ps) +[Export-HpcJob](/powershell/module/hpcpack2016/export-hpcjob?view=hpc16-ps) -[Get-HpcJob](/powershell/module/hpcpack2019/get-hpcjob?view=hpc19-ps) +[Get-HpcJob](/powershell/module/hpcpack2016/get-hpcjob?view=hpc16-ps) -[New-HpcJob](/powershell/module/hpcpack2019/new-hpcjob?view=hpc19-ps) +[New-HpcJob](/powershell/module/hpcpack2016/new-hpcjob?view=hpc16-ps) -[Set-HpcJob](/powershell/module/hpcpack2019/set-hpcjob?view=hpc19-ps) +[Set-HpcJob](/powershell/module/hpcpack2016/set-hpcjob?view=hpc16-ps) [Submit-HpcJob](./Submit-HpcJob.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md b/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md index 6d5587e5da..4057ab08a6 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcNodeSet.md @@ -143,7 +143,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-HpcNodeSet](/powershell/module/hpcpack2019/add-hpciscsistoragearray?view=hpc19-ps) +[Add-HpcNodeSet](/powershell/module/hpcpack2016/add-hpciscsistoragearray?view=hpc16-ps) [Remove-HpcNodeSet](/powershell/module/hpcpack2016/remove-hpcnodeset?view=hpc16-ps) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md b/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md index 10d0101262..bdca199231 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcTask.md @@ -257,11 +257,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Add-HpcTask](/powershell/module/hpcpack2019/add-hpctask?view=hpc19-ps) +[Add-HpcTask](/powershell/module/hpcpack2016/add-hpctask?view=hpc16-ps) -[Export-HpcTask](/powershell/module/hpcpack2019/export-hpctask?view=hpc19-ps) +[Export-HpcTask](/powershell/module/hpcpack2016/export-hpctask?view=hpc16-ps) -[Get-HpcTask](/powershell/module/hpcpack2019/get-hpctask?view=hpc19-ps) +[Get-HpcTask](/powershell/module/hpcpack2016/get-hpctask?view=hpc16-ps) [Set-HpcTask](./Set-HpcTask.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md b/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md index 3a4ad5f042..dab03b7c8c 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcTestResult.md @@ -158,6 +158,6 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable [Export-HpcTestResult](/powershell/module/hpcpack2016/export-hpctestresult?view=hpc16-ps) -[Get-HpcTestResult](/powershell/module/hpcpack2019/get-hpctestresult?view=hpc19-ps) +[Get-HpcTestResult](/powershell/module/hpcpack2016/get-hpctestresult?view=hpc16-ps) -[Invoke-HpcTest](/powershell/module/hpcpack2019/invoke-hpctest?view=hpc19-ps) +[Invoke-HpcTest](/powershell/module/hpcpack2016/invoke-hpctest?view=hpc16-ps) diff --git a/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md b/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md index 7364f7653c..dab5cd8515 100644 --- a/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md +++ b/docset/winserver2012r2-ps/hpc/Validate-HpcIScsiStorageArray.md @@ -112,10 +112,10 @@ The message for this event provides more information about the failure. ## RELATED LINKS -[Add-HpcIScsiStorageArray](/powershell/module/hpcpack2019/add-hpciscsistoragearray?view=hpc19-ps) +[Add-HpcIScsiStorageArray](/powershell/module/hpcpack2016/add-hpciscsistoragearray?view=hpc16-ps) -[Get-HpcIScsiStorageArray](/powershell/module/hpcpack2019/get-hpciscsistoragearray?view=hpc19-ps) +[Get-HpcIScsiStorageArray](/powershell/module/hpcpack2016/get-hpciscsistoragearray?view=hpc16-ps) -[Remove-HpcIScsiStorageArray](/powershell/module/hpcpack2019/remove-hpciscsistoragearray?view=hpc19-ps) +[Remove-HpcIScsiStorageArray](/powershell/module/hpcpack2016/remove-hpciscsistoragearray?view=hpc16-ps) -[Set-HpcIScsiStorageArray](/powershell/module/hpcpack2019/set-hpciscsistoragearray?view=hpc19-ps) +[Set-HpcIScsiStorageArray](/powershell/module/hpcpack2016/set-hpciscsistoragearray?view=hpc16-ps) diff --git a/docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md b/docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md index c2037b67c4..4a77c4aef0 100644 --- a/docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md +++ b/docset/winserver2016-ps/bestpractices/Invoke-BpaModel.md @@ -36,7 +36,6 @@ If a model is specified in the cmdlet after the BPA scan has been performed, the This cmdlet cannot be canceled after it has been started. Single-node XML is not supported by the BPA model schema. -For more information about what is supported by the BPA model schema, see the [Microsoft Baseline Configuration Analyzer Model Authoring Guide](https://www.microsoft.com/download?id=16475) on the [Microsoft Download Center](https://www.microsoft.com/download?id=16475). ## EXAMPLES From 0fc1f4898f990c7e3d388c3f0f8482830d799131 Mon Sep 17 00:00:00 2001 From: albert Date: Fri, 22 Nov 2024 12:12:57 -0800 Subject: [PATCH 98/98] Update links --- docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md | 2 +- docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md | 2 +- docset/winserver2012r2-ps/hpc/Submit-HpcJob.md | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md b/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md index 0720f33e4e..c57a95dc86 100644 --- a/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md +++ b/docset/winserver2012r2-ps/hpc/Start-HpcAzureNode.md @@ -137,7 +137,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Remove-HpcAzureNode](/powershell/module/hpcpack2019/remove-hpcazurenode?view=hpc16-ps) +[Remove-HpcAzureNode](/powershell/module/hpcpack2016/remove-hpcazurenode?view=hpc16-ps) [Start-HpcNodeSet](./Start-HpcNodeSet.md) diff --git a/docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md b/docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md index a65c49b14b..3a58d98efa 100644 --- a/docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md +++ b/docset/winserver2012r2-ps/hpc/Stop-HpcAzureNode.md @@ -171,7 +171,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Remove-HpcAzureNode](/powershell/module/hpcpack2019/remove-hpcazurenode?view=hpc19-ps) +[Remove-HpcAzureNode](/powershell/module/hpcpack2016/remove-hpcazurenode?view=hpc16-ps) [Start-HpcAzureNode](./Start-HpcAzureNode.md) diff --git a/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md b/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md index 95d0d98bc5..71453f09be 100644 --- a/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md +++ b/docset/winserver2012r2-ps/hpc/Submit-HpcJob.md @@ -126,12 +126,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## RELATED LINKS -[Export-HpcJob](/powershell/module/hpcpack2019/export-hpcjob?view=hpc19-ps) +[Export-HpcJob](/powershell/module/hpcpack2016/export-hpcjob?view=hpc16-ps) -[Get-HpcJob](/powershell/module/hpcpack2019/get-hpcjob?view=hpc19-ps) +[Get-HpcJob](/powershell/module/hpcpack2016/get-hpcjob?view=hpc16-ps) -[New-HpcJob](/powershell/module/hpcpack2019/new-hpcjob?view=hpc19-ps) +[New-HpcJob](/powershell/module/hpcpack2016/new-hpcjob?view=hpc16-ps) -[Set-HpcJob](/powershell/module/hpcpack2019/set-hpcjob?view=hpc19-ps) +[Set-HpcJob](/powershell/module/hpcpack2016/set-hpcjob?view=hpc16-ps) [Stop-HpcJob](./Stop-HpcJob.md)