Set-CMBaseline

更改配置基线的设置。

语法

Set-CMBaseline
   [-AddBaseline <String[]>]
   [-AddCategory <String[]>]
   [-AddOptionalConfigurationItem <String[]>]
   [-AddOSConfigurationItem <String[]>]
   [-AddProhibitedConfigurationItem <String[]>]
   [-AddRequiredConfigurationItem <String[]>]
   [-AddSoftwareUpdate <String[]>]
   [-AllowComanagedClients <Boolean>]
   [-ClearBaseline]
   [-ClearOptionalConfigurationItem]
   [-ClearOSConfigurationItem]
   [-ClearProhibitedConfigurationItem]
   [-ClearRequiredConfigurationItem]
   [-ClearSoftwareUpdate]
   [-Description <String>]
   [-DesiredConfigurationDigestPath <String>]
   -Id <Int32>
   [-NewName <String>]
   [-PassThru]
   [-RemoveBaseline <String[]>]
   [-RemoveCategory <String[]>]
   [-RemoveOptionalConfigurationItem <String[]>]
   [-RemoveOSConfigurationItem <String[]>]
   [-RemoveProhibitedConfigurationItem <String[]>]
   [-RemoveRequiredConfigurationItem <String[]>]
   [-RemoveSoftwareUpdate <String[]>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-CMBaseline
   [-AddBaseline <String[]>]
   [-AddCategory <String[]>]
   [-AddOptionalConfigurationItem <String[]>]
   [-AddOSConfigurationItem <String[]>]
   [-AddProhibitedConfigurationItem <String[]>]
   [-AddRequiredConfigurationItem <String[]>]
   [-AddSoftwareUpdate <String[]>]
   [-AllowComanagedClients <Boolean>]
   [-ClearBaseline]
   [-ClearOptionalConfigurationItem]
   [-ClearOSConfigurationItem]
   [-ClearProhibitedConfigurationItem]
   [-ClearRequiredConfigurationItem]
   [-ClearSoftwareUpdate]
   [-Description <String>]
   [-DesiredConfigurationDigestPath <String>]
   -Name <String>
   [-NewName <String>]
   [-PassThru]
   [-RemoveBaseline <String[]>]
   [-RemoveCategory <String[]>]
   [-RemoveOptionalConfigurationItem <String[]>]
   [-RemoveOSConfigurationItem <String[]>]
   [-RemoveProhibitedConfigurationItem <String[]>]
   [-RemoveRequiredConfigurationItem <String[]>]
   [-RemoveSoftwareUpdate <String[]>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-CMBaseline
   [-AddBaseline <String[]>]
   [-AddCategory <String[]>]
   [-AddOptionalConfigurationItem <String[]>]
   [-AddOSConfigurationItem <String[]>]
   [-AddProhibitedConfigurationItem <String[]>]
   [-AddRequiredConfigurationItem <String[]>]
   [-AddSoftwareUpdate <String[]>]
   [-AllowComanagedClients <Boolean>]
   [-ClearBaseline]
   [-ClearOptionalConfigurationItem]
   [-ClearOSConfigurationItem]
   [-ClearProhibitedConfigurationItem]
   [-ClearRequiredConfigurationItem]
   [-ClearSoftwareUpdate]
   [-Description <String>]
   [-DesiredConfigurationDigestPath <String>]
   -InputObject <IResultObject>
   [-NewName <String>]
   [-PassThru]
   [-RemoveBaseline <String[]>]
   [-RemoveCategory <String[]>]
   [-RemoveOptionalConfigurationItem <String[]>]
   [-RemoveOSConfigurationItem <String[]>]
   [-RemoveProhibitedConfigurationItem <String[]>]
   [-RemoveRequiredConfigurationItem <String[]>]
   [-RemoveSoftwareUpdate <String[]>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

使用此 cmdlet 在 Configuration Manager 中更改配置基线的设置。 配置基线可以包括以下类型的配置数据:

  • 配置项目
  • 其他配置基线
  • 软件更新

Configuration Manager 客户端会根据此基线评估其符合性。 如果所有指定项都合规,则基线本身将评估为合规。 还可以包括可选项,这些项仅在设备上存在相关应用程序或设置时才进行评估。

有关详细信息,请参阅 在 Configuration Manager 中创建配置基线

注意

从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>。 有关详细信息,请参阅 入门

示例

示例 1:配置配置基线

此示例首先使用 Get-CMConfigurationItem cmdlet 获取一系列配置项目, () 的 API。

然后,它将 cmdlet 参数 展开parameters 变量中。 不需要对参数进行 splat,它只是便于读取如此长的命令行的参数。

最后一个命令使用新名称和说明配置 PSTestBaseLine 基线,删除类别,并添加CI。

$objPSTestWinAppCI = Get-CMConfigurationItem -Name PSTestWinAppCI
$objPSTestWinAppCI2 = Get-CMConfigurationItem -Name PSTestWinAppCI2
$objPSTestWinOSCI = Get-CMConfigurationItem -Name PSTestWinOSCI
$objPSTestWinAppCI3 = Get-CMConfigurationItem -Name PSTestWinAppCI3
$objPSTestWinAppCI4 = Get-CMConfigurationItem -Name PSTestWinAppCI4
$objPSTestMDCI = Get-CMConfigurationItem -Name PSTestMDCI
$objPSTestMacCI = Get-CMConfigurationItem -Name PSTestMacCI

$parameters = @{
  Name = "PSTestBaseLine"
  NewName = "PSTestBaseLineNew"
  Description = "DCM Testing New"
  RemoveCategory = ("IT Infrastructure")
  AddRequiredConfigurationItems = ($objPSTestWinAppCI4.CI_ID,$objPSTestMDCI.CI_ID)
  AddProhibitedConfigurationItems = ($objPSTestWinAppCI.CI_ID)
  AddOSConfigurationItems = ($objPSTestWinOSCI.CI_ID,$objPSTestMacCI.CI_ID)
  AddOptionalConfigurationItems = ($objPSTestWinAppCI2.CI_ID,$objPSTestWinAppCI3.CI_ID)
}

Set-CMBaseline @parameters

示例 2:添加自定义类别

此示例首先使用 New-CMCategory cmdlet 创建自定义基线类别 Accounting。 然后,它会配置 会计基线 以添加新类别。

$category = New-CMCategory -CategoryType BaselineCategories -Name "Accounting"
Set-CMBaseline -Name "Accounting baseline" -AddCategory $category.LocalizedCategoryInstanceName

参数

-AddBaseline

指定要作为配置数据添加到目标基线的基线 ID 数组。 此值是基线 的 CI_ID 属性,例如 16777516

类型:String[]
别名:AddBaselines
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AddCategory

指定要添加到配置基线的配置类别名称数组。 这些类别改进了搜索和筛选。 默认情况下,站点包括以下配置基线类别:

  • 客户端
  • IT 基础结构
  • 业务线
  • 服务器

若要使用另一个类别,请先使用 New-CMCategory cmdlet 和 -CategoryType BaselineCategories 参数添加它。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AddOptionalConfigurationItem

指定要使用 可选 用途添加的配置项 ID 的数组。 如果设备上存在相关应用程序,则 Configuration Manager 客户端仅评估可选项。

此值是配置项目的 CI_ID 属性,例如 16777514

类型:String[]
别名:AddOptionalConfigurationItems
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AddOSConfigurationItem

指定要添加的 OS 类型的配置项目 ID 的数组。 此值是配置项目的 CI_ID 属性,例如 16777514

类型:String[]
别名:AddOSConfigurationItems
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AddProhibitedConfigurationItem

指定要添加的具有 禁止 用途的配置项目 ID 数组。 此值是配置项目的 CI_ID 属性,例如 16777514

类型:String[]
别名:AddProhibitedConfigurationItems
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AddRequiredConfigurationItem

指定要添加的具有 所需 用途的配置项 ID 的数组。 此值是配置项目的 CI_ID 属性,例如 16777514

类型:String[]
别名:AddRequiredConfigurationItems
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AddSoftwareUpdate

指定要添加的软件更新 ID 的数组。

类型:String[]
别名:AddSoftwareUpdates
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AllowComanagedClients

将此参数设置为 以 $true 始终应用此基线,即使对于共同管理的客户端也是如此。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ClearBaseline

添加此参数以从目标基线中删除所有作为评估条件的基线。 若要删除单个基线,请使用 RemoveBaseline 参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ClearOptionalConfigurationItem

添加此参数以从目标基线中删除所有 可选 配置项目作为评估条件。 若要删除单个可选 CIS,请使用 RemoveOptionalConfigurationItem 参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ClearOSConfigurationItem

添加此参数以从目标基线中删除所有 OS 配置项目作为评估条件。 若要删除单个 OS CIS,请使用 RemoveOSConfigurationItem 参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ClearProhibitedConfigurationItem

添加此参数以从目标基线中删除所有 禁止 的配置项目作为评估条件。 若要删除单个禁止的 CIS,请使用 RemoveProhibitedConfigurationItem 参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ClearRequiredConfigurationItem

添加此参数以从目标基线中删除所有 必需的 配置项作为评估条件。 若要删除单个所需的CI,请使用 RemoveRequiredConfigurationItem 参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ClearSoftwareUpdate

添加此参数以从目标基线中删除所有软件更新作为评估条件。 若要删除单个软件更新,请使用 RemoveSoftwareUpdate 参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-Description

指定配置基线的可选说明以帮助识别它。

类型:String
别名:LocalizedDescription
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DesiredConfigurationDigestPath

指定存储为 XML 摘要的配置数据的路径。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisableWildcardHandling

此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ForceWildcardHandling

此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Id

指定要配置的配置基线CI_ID。 例如,16777516

类型:Int32
别名:CIId, CI_ID
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-InputObject

指定要配置的配置基线对象。 若要获取此对象,请使用 Get-CMBaseline cmdlet。

类型:IResultObject
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Name

指定要配置的配置基线的名称。

类型:String
别名:LocalizedDisplayName
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-NewName

为配置基线指定新名称。 使用此参数重命名目标基线。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PassThru

添加此参数可返回一个对象,该对象表示正在使用的项。 默认情况下,此 cmdlet 可能不会生成任何输出。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RemoveBaseline

指定要从目标基线中删除的基线 ID 数组作为配置数据。 此值是基线 的 CI_ID 属性,例如 16777516。 若要从此基线中删除所有基线作为配置数据,请使用 ClearBaseline 参数。

类型:String[]
别名:RemoveBaselines
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RemoveCategory

指定要从配置基线中删除的配置类别名称数组。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RemoveOptionalConfigurationItem

指定要从目标基线中删除的 可选 CI ID 数组作为配置数据。 此值是配置项目的 CI_ID 属性,例如 16777514。 若要从此基线中删除所有可选配置项目,请使用 ClearOptionalConfigurationItem 参数。

类型:String[]
别名:RemoveOptionalConfigurationItems
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RemoveOSConfigurationItem

指定要从目标基线中删除的 OS CI ID 数组作为配置数据。 此值是配置项目的 CI_ID 属性,例如 16777514。 若要从此基线中删除所有 OS 配置项目,请使用 ClearOSConfigurationItem 参数。

类型:String[]
别名:RemoveOSConfigurationItems
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RemoveProhibitedConfigurationItem

指定要从目标基线中删除的 禁止 的 CI ID 数组作为配置数据。 此值是配置项目的 CI_ID 属性,例如 16777514。 若要从此基线中删除所有禁止的配置项目,请使用 ClearProhibitedConfigurationItem 参数。

类型:String[]
别名:RemoveProhibitedConfigurationItems
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RemoveRequiredConfigurationItem

指定要从目标基线中删除的 所需 CI ID 的数组作为配置数据。 此值是配置项目的 CI_ID 属性,例如 16777514。 若要从此基线中删除所有必需的配置项目,请使用 ClearRequiredConfigurationItem 参数。

类型:String[]
别名:RemoveRequiredConfigurationItems
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RemoveSoftwareUpdate

指定要从目标基线中删除的软件更新 ID 数组作为配置数据。 若要从此基线中删除所有软件更新,请使用 ClearSoftwareUpdate 参数。

类型:String[]
别名:RemoveSoftwareUpdates
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示在 cmdlet 运行时发生的情况。 cmdlet 不会运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

输出

System.Object