Remove-CMObjectSecurityScope

从 Configuration Manager 对象中删除安全作用域。

语法

Remove-CMObjectSecurityScope
      [-Force]
      -InputObject <IResultObject[]>
      [-Scope] <IResultObject[]>
      [-DisableWildcardHandling]
      [-ForceWildcardHandling]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-CMObjectSecurityScope
      [-Force]
      -Id <String>
      -InputObject <IResultObject[]>
      [-DisableWildcardHandling]
      [-ForceWildcardHandling]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-CMObjectSecurityScope
      [-Force]
      -InputObject <IResultObject[]>
      [-Name] <String>
      [-DisableWildcardHandling]
      [-ForceWildcardHandling]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

说明

使用此 cmdlet 可从 Configuration Manager 对象中删除一个或多个安全作用域。

有关安全范围的详细信息,请参阅 Configuration Manager 中基于角色的管理基础知识

注意

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

示例

示例 1:从应用程序中删除安全范围

第一个命令获取名为 Scope1 的安全作用域,并将 对象存储在 $Scope 变量中。

第二个命令获取名称以“Central”开头的所有应用程序对象。 然后,它使用管道运算符将对象传递到 Remove-CMObjectSecurityScope

最后一个命令从每个应用程序对象中删除安全范围。 Force 参数指示在运行 cmdlet 之前不会提示你。

$Scope = Get-CMSecurityScope -Name "Scope1"
$apps = Get-CMApplication -Name "Central*"
$app | Remove-CMObjectSecurityScope -Scope $Scope -Force

示例 3:添加新的安全作用域,然后从应用程序对象中删除所有其他安全作用域

第一个命令获取 变量 TeamABCScope 中的安全作用域。 第二个命令获取 Edge Enterprise Stable 的应用对象。 第三个命令将新的 TeamABCScope 添加到应用。 最后一个命令从非 TeamABCScope 的应用获取范围,然后将其全部删除。

$ScopeName = "Team ABC"
$TeamABCScope = Get-CMSecurityScope | Where-Object {$_.CategoryName -eq $ScopeName}

$app = Get-CMApplication -Name "Edge Enterprise Stable"

Add-CMObjectSecurityScope -InputObject $app -Scope $TeamABCScope

$scopes = Get-CMObjectSecurityScope -InputObject $app | Where-Object {$_.CategoryName -ne $ScopeName}
foreach ( $ExtraScope in $scopes )
  {
  Remove-CMObjectSecurityScope -InputObject $app -Scope $ExtraScope -Force
  }

参数

-Confirm

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

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

-DisableWildcardHandling

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

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

-Force

强制运行命令而不要求用户确认。

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

-ForceWildcardHandling

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

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

-Id

指定与 Configuration Manager 对象关联的安全作用域的 ID。 此值是 CategoryID 属性,例如SMS00UNA默认范围。

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

-InputObject

指定与安全范围关联的 Configuration Manager 对象的数组。 若要获取此对象,请使用 对象类型的 Get cmdlet。 例如,应用对象的 Get-CMApplication

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

-Name

指定与 Configuration Manager 对象关联的安全作用域的名称。

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

-Scope

指定要删除的安全作用域对象的数组。 若要获取此对象,请使用 Get-CMSecurityScope cmdlet。

类型:IResultObject[]
别名:SecurityScope, SecuredCategory, Scopes, SecurityScopes, SecuredCategories
Position:0
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-WhatIf

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

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

输入

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject[]

输出

System.Object