Freigeben über


New-CMRequirementRuleRegistryKeyPermissionValue

Erstellen Sie eine Anforderungsregel zum Überprüfen der Registrierungsschlüsselberechtigungen.

Syntax

New-CMRequirementRuleRegistryKeyPermissionValue
   -ControlEntry <RegistryAccessControlEntry[]>
   [-Exclusive <Boolean>]
   [-InputObject] <IResultObject>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Beschreibung

Verwenden Sie dieses Cmdlet, um eine Anforderungsregel für einen Anwendungsbereitstellungstyp zu erstellen, der Registrierungsschlüsselberechtigungen überprüft. Hierfür ist eine benutzerdefinierte globale Bedingung des Datentyps Registrierungsschlüssel erforderlich.

Tipp

Wenn Sie diese Anforderungsregel manuell in der Configuration Manager-Konsole erstellen, wählen Sie zum Vergleich die folgenden Optionen aus:

  • Kategorie: Benutzerdefiniert
  • Bedingung: Wählen Sie eine benutzerdefinierte globale Bedingung des Datentyps Registrierungsschlüssel aus.
  • Regeltyp: Wert
  • Eigenschaft: Berechtigungen

Nachdem Sie dieses Cmdlet verwendet haben, verwenden Sie eines der Add- oder Set-Cmdlets für Bereitstellungstypen. Übergeben Sie dieses Anforderungsregelobjekt entweder an die Parameter AddRequirement oder RemoveRequirement .

Weitere Informationen finden Sie unter Anforderungen für den Bereitstellungstyp und Erstellen globaler Bedingungen.

Hinweis

Führen Sie Configuration Manager-Cmdlets auf dem Configuration Manager-Standortlaufwerk aus, z. B PS XYZ:\>. . Weitere Informationen finden Sie unter Erste Schritte.

Beispiele

Beispiel 1: Hinzufügen einer Anforderungsregel für Registrierungsschlüsselberechtigungen

In diesem Beispiel wird zunächst das Cmdlet Get-CMGlobalCondition verwendet, um eine benutzerdefinierte globale Bedingung abzurufen. Anschließend wird das Cmdlet New-CMRegistryAccessControlEntry verwendet, um zwei Zugriffssteuerungseinträge für bestimmte Benutzer zu erstellen. Als Nächstes wird das Anforderungsregelobjekt erstellt, um zu überprüfen, ob der Registrierungsschlüssel über die in den Zugriffssteuerungseinträgen angegebenen Berechtigungen verfügt. Schließlich wird dieses Regelobjekt an das Cmdlet Set-CMScriptDeploymentType übergeben, um die Anforderung hinzuzufügen.

$myGC = Get-CMGlobalCondition -Name "LOB app registry key"

$userName = "contoso\jqpublic"
$ce = New-CMRegistryAccessControlEntry -GroupOrUserName $userName -AccessOption Allow -Permission Read,Write

$userName2 = "contoso\jdoe"
$ce2 = New-CMRegistryAccessControlEntry -GroupOrUserName $userName2 -AccessOption Allow -Permission Read

$myRule = $myGC | New-CMRequirementRuleRegistryKeyPermissionValue -Exclusive $false -ControlEntry $ce,$ce2

Set-CMScriptDeploymentType -ApplicationName "Central app" -DeploymentTypeName "Install" -AddRequirement $myRule

Parameter

-ControlEntry

Geben Sie ein Array von Zugriffssteuerungseingabeobjekten an. Ein Zugriffssteuerungseintrag definiert bestimmte Berechtigungen für einen bestimmten Benutzer oder eine bestimmte Gruppe. Verwenden Sie zum Abrufen dieses Objekts das Cmdlet New-CMRegistryAccessControlEntry .

Typ:RegistryAccessControlEntry[]
Aliase:ControlEntries, RegistryAccessControlEntry, RegistryAccessControlEntries
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DisableWildcardHandling

Dieser Parameter behandelt Wildcardzeichen als Literalzeichenwerte. Sie können es nicht mit ForceWildcardHandling kombinieren.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Exclusive

Wenn dieser Parameter ist $true, damit die Regel konform ist, muss er genau mit dem angegebenen ACE übereinstimmen. Alle anderen Berechtigungen für den Registrierungsschlüssel führen dazu, dass die Regel fehlschlägt.

Wenn auf $falsefestgelegt ist, muss der angegebene ACE vorhanden sein, damit die Regel konform ist, und es können auch andere Berechtigungen vorhanden sein.

Typ:Boolean
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ForceWildcardHandling

Dieser Parameter verarbeitet Wildcardzeichen und kann zu unerwartetem Verhalten führen (nicht empfohlen). Sie können es nicht mit DisableWildcardHandling kombinieren.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-InputObject

Geben Sie ein benutzerdefiniertes globales Bedingungsobjekt an, das als Grundlage für diese Anforderungsregel verwendet werden soll. Verwenden Sie zum Abrufen dieses Objekts das Cmdlet Get-CMGlobalCondition .

Verwenden Sie den folgenden PowerShell-Befehl, um die Liste der verfügbaren globalen Bedingungen des Registrierungsschlüssels am Standort anzuzeigen:

Get-CMGlobalCondition | Where-Object DataType -eq "RegistryKey" | Select-Object LocalizedDisplayName

Typ:IResultObject
Aliase:GlobalCondition
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

Eingaben

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

Ausgaben

System.Object