Set-AzPolicyAssignment

Hiermee wijzigt u een beleidstoewijzing.

Syntax

Set-AzPolicyAssignment
   -Name <String>
   [-Scope <String>]
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   [-AssignIdentity]
   [-Location <String>]
   [-EnforcementMode <PolicyAssignmentEnforcementMode>]
   [-IdentityType <ManagedIdentityType>]
   [-IdentityId <String>]
   [-NonComplianceMessage <PsNonComplianceMessage[]>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzPolicyAssignment
   -Name <String>
   [-Scope <String>]
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   -PolicyParameterObject <Hashtable>
   [-AssignIdentity]
   [-Location <String>]
   [-EnforcementMode <PolicyAssignmentEnforcementMode>]
   [-IdentityType <ManagedIdentityType>]
   [-IdentityId <String>]
   [-NonComplianceMessage <PsNonComplianceMessage[]>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzPolicyAssignment
   -Name <String>
   [-Scope <String>]
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   -PolicyParameter <String>
   [-AssignIdentity]
   [-Location <String>]
   [-EnforcementMode <PolicyAssignmentEnforcementMode>]
   [-IdentityType <ManagedIdentityType>]
   [-IdentityId <String>]
   [-NonComplianceMessage <PsNonComplianceMessage[]>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzPolicyAssignment
   [-NotScope <String[]>]
   -Id <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   [-AssignIdentity]
   [-Location <String>]
   [-EnforcementMode <PolicyAssignmentEnforcementMode>]
   [-IdentityType <ManagedIdentityType>]
   [-IdentityId <String>]
   [-NonComplianceMessage <PsNonComplianceMessage[]>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzPolicyAssignment
   [-NotScope <String[]>]
   -Id <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   -PolicyParameterObject <Hashtable>
   [-AssignIdentity]
   [-Location <String>]
   [-EnforcementMode <PolicyAssignmentEnforcementMode>]
   [-IdentityType <ManagedIdentityType>]
   [-IdentityId <String>]
   [-NonComplianceMessage <PsNonComplianceMessage[]>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzPolicyAssignment
   [-NotScope <String[]>]
   -Id <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   -PolicyParameter <String>
   [-AssignIdentity]
   [-Location <String>]
   [-EnforcementMode <PolicyAssignmentEnforcementMode>]
   [-IdentityType <ManagedIdentityType>]
   [-IdentityId <String>]
   [-NonComplianceMessage <PsNonComplianceMessage[]>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzPolicyAssignment
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   [-AssignIdentity]
   [-Location <String>]
   [-EnforcementMode <PolicyAssignmentEnforcementMode>]
   [-IdentityType <ManagedIdentityType>]
   [-IdentityId <String>]
   -InputObject <PsPolicyAssignment>
   [-NonComplianceMessage <PsNonComplianceMessage[]>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

De cmdlet Set-AzPolicyAssignment wijzigt een beleidstoewijzing. Geef een toewijzing op id of op naam en bereik op.

Voorbeelden

Voorbeeld 1: De weergavenaam bijwerken

$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -DisplayName 'Do not allow VM creation'

Met de eerste opdracht wordt een resourcegroep met de naam ResourceGroup11 ophaalt met behulp van de cmdlet Get-AzResourceGroup. Met de opdracht wordt dat object opgeslagen in de variabele $ResourceGroup. Met de tweede opdracht wordt de beleidstoewijzing met de naam PolicyAssignment opgehaald met behulp van de cmdlet Get-AzPolicyAssignment. Met de opdracht wordt dat object opgeslagen in de variabele $PolicyAssignment. Met de laatste opdracht wordt de weergavenaam voor de beleidstoewijzing bijgewerkt op de resourcegroep die is geïdentificeerd door de eigenschap ResourceId van $ResourceGroup.

Voorbeeld 2: Een door het systeem toegewezen beheerde identiteit toevoegen aan de beleidstoewijzing

$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -IdentityType 'SystemAssigned' -Location 'westus'

Met de eerste opdracht wordt de beleidstoewijzing PolicyAssignment opgehaald uit het huidige abonnement met behulp van de cmdlet Get-AzPolicyAssignment. Met de opdracht wordt dat object opgeslagen in de variabele $PolicyAssignment. Met de laatste opdracht wordt een door het systeem toegewezen beheerde identiteit toegewezen aan de beleidstoewijzing.

Voorbeeld 3: Een door de gebruiker toegewezen beheerde identiteit toevoegen aan de beleidstoewijzing

$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
$UserAssignedIdentity = Get-AzUserAssignedIdentity -ResourceGroupName 'ResourceGroup1' -Name 'UserAssignedIdentity1'
 Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -IdentityType 'UserAssigned' -Location 'westus' -IdentityId $UserAssignedIdentity.Id

Met de eerste opdracht wordt de beleidstoewijzing PolicyAssignment opgehaald uit het huidige abonnement met behulp van de cmdlet Get-AzPolicyAssignment. Met de opdracht wordt dat object opgeslagen in de variabele $PolicyAssignment. Met de tweede opdracht wordt de door de gebruiker toegewezen beheerde identiteit met de naam UserAssignedIdentity1 opgehaald met behulp van de cmdlet Get-AzUserAssignedIdentity en wordt deze opgeslagen in de variabele $UserAssignedIdentity. Met de laatste opdracht wordt de door de gebruiker toegewezen beheerde identiteit toegewezen aan de id-eigenschap van $UserAssignedIdentity aan de beleidstoewijzing.

Voorbeeld 4: Parameters voor beleidstoewijzing bijwerken met nieuw beleidsparameterobject

$Locations = Get-AzLocation | Where-Object {($_.displayname -like 'france*') -or ($_.displayname -like 'uk*')}
$AllowedLocations = @{'listOfAllowedLocations'=($Locations.location)}
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -PolicyParameterObject $AllowedLocations

Met de eerste en tweede opdracht maakt u een object met alle Azure-regio's waarvan de namen beginnen met 'frankrijk' of 'uk'. Met de tweede opdracht wordt dat object opgeslagen in de $AllowedLocations variabele. Met de derde opdracht wordt de beleidstoewijzing met de naam PolicyAssignment opgehaald. De opdracht slaat dat object op in de $PolicyAssignment variabele. Met de laatste opdracht worden de parameterwaarden bijgewerkt op de beleidstoewijzing met de naam PolicyAssignment.

Voorbeeld 5: Parameters voor beleidstoewijzing bijwerken met beleidsparameterbestand

Maak een bestand met de naam AllowedLocations.json in de lokale werkmap met de volgende inhoud.

{
    "listOfAllowedLocations":  {
      "value": [
        "uksouth",
        "ukwest",
        "francecentral",
        "francesouth"
      ]
    }
}

Set-AzPolicyAssignment -Name 'PolicyAssignment' -PolicyParameter .\AllowedLocations.json

Met de opdracht wordt de beleidstoewijzing met de naam PolicyAssignment bijgewerkt met behulp van het beleidsparameterbestand AllowedLocations.json uit de lokale werkmap.

Voorbeeld 6: Een enforcementMode bijwerken

$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -EnforcementMode Default

Met de eerste opdracht wordt een resourcegroep met de naam ResourceGroup11 ophaalt met behulp van de cmdlet Get-AzResourceGroup. Met de opdracht wordt dat object opgeslagen in de variabele $ResourceGroup. Met de tweede opdracht wordt de beleidstoewijzing met de naam PolicyAssignment opgehaald met behulp van de cmdlet Get-AzPolicyAssignment. Met de opdracht wordt dat object opgeslagen in de variabele $PolicyAssignment. Met de laatste opdracht wordt de eigenschap enforcementMode bijgewerkt voor de beleidstoewijzing op de resourcegroep die is geïdentificeerd door de eigenschap ResourceId van $ResourceGroup.

Voorbeeld 7: Niet-nalevingsberichten bijwerken

$PolicyAssignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicy'
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -NonComplianceMessage @{Message="All resources must follow resource naming guidelines."}

Met de eerste opdracht wordt de beleidstoewijzing VirtualMachinePolicy opgehaald met behulp van de cmdlet Get-AzPolicyAssignment en wordt deze opgeslagen in de variabele $PolicyAssignment. Met de laatste opdracht worden de niet-nalevingsberichten op de beleidstoewijzing bijgewerkt met een nieuw bericht dat wordt weergegeven als een resource wordt geweigerd door het beleid.

Parameters

-ApiVersion

Hiermee geeft u de versie van de resourceprovider-API die moet worden gebruikt. Als u geen versie opgeeft, gebruikt deze cmdlet de meest recente beschikbare versie.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AssignIdentity

Genereer en wijs een door het systeem toegewezen beheerde identiteit toe voor deze beleidstoewijzing. De identiteit wordt gebruikt bij het uitvoeren van implementaties voor 'deployIfNotExists' en 'modify'-beleid. Locatie is vereist bij het toewijzen van een identiteit.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

De referenties, het account, de tenant en het abonnement dat wordt gebruikt voor communicatie met Azure

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

De beschrijving voor beleidstoewijzing

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DisplayName

Hiermee geeft u een nieuwe weergavenaam op voor de beleidstoewijzing.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EnforcementMode

De afdwingingsmodus voor beleidstoewijzing. Geldige waarden zijn momenteel Standaard, DoNotEnforce.

Type:Nullable<T>[PolicyAssignmentEnforcementMode]
Accepted values:Default, DoNotEnforce
Position:Named
Default value:Default
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Id

Hiermee geeft u de volledig gekwalificeerde resource-id op voor de beleidstoewijzing die door deze cmdlet wordt gewijzigd.

Type:String
Aliases:ResourceId
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-IdentityId

Hiermee geeft u de id op van de door de gebruiker toegewezen beheerde identiteit die moet worden toegewezen aan deze beleidstoewijzing. Deze waarde is vereist als de waarde UserAssigned wordt doorgegeven aan de parameter -IdentityType.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IdentityType

Hiermee geeft u het type beheerde identiteit dat moet worden toegewezen aan deze beleidstoewijzing. Als de waarde SystemAssigned is opgegeven, wordt er een door het systeem toegewezen beheerde identiteit gegenereerd en toegewezen aan deze beleidstoewijzing. Als de waarde UserAssigned is opgegeven, wordt de door de gebruiker toegewezen identiteit via de id aan de parameter -IdentityId toegewezen aan deze beleidstoewijzing. De identiteit wordt gebruikt bij het uitvoeren van implementaties voor 'deployIfNotExists' en 'modify'-beleid. Locatie is vereist bij het toewijzen van een identiteit. Machtigingen moeten worden verleend aan de identiteit met behulp van New-AzRoleAssignment nadat de door het systeem toegewezen identiteit is gemaakt. De parameter IdentityType krijgt voorrang als zowel de Parameter AssignIdentity als de parameter IdentityType worden gebruikt.

Type:Nullable<T>[ManagedIdentityType]
Accepted values:SystemAssigned, UserAssigned, None
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Het beleidstoewijzingsobject om de uitvoer van een andere cmdlet bij te werken.

Type:PsPolicyAssignment
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Location

De locatie van de resource-id van de beleidstoewijzing. Dit is vereist wanneer de -IdentityType-waarde wordt opgegeven.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Metadata

De bijgewerkte metagegevens voor de beleidstoewijzing. Dit kan een pad zijn naar een bestandsnaam met de metagegevens of de metagegevens als een tekenreeks.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Hiermee geeft u de naam op van de beleidstoewijzing die door deze cmdlet wordt gewijzigd.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NonComplianceMessage

De niet-nalevingsberichten die beschrijven waarom een resource niet compatibel is met het beleid.

Type:PsNonComplianceMessage[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-NotScope

De beleidstoewijzing is geen bereik.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PolicyParameter

Het nieuwe bestandspad of de tekenreeks voor beleidsparameters voor de beleidstoewijzing.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PolicyParameterObject

Het nieuwe beleidsparametersobject voor de beleidstoewijzing.

Type:Hashtable
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Pre

Hiermee wordt aangegeven dat deze cmdlet api-versies van de voorlopige versie beschouwt wanneer deze automatisch bepaalt welke versie moet worden gebruikt.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Scope

Hiermee geeft u het bereik op waarop het beleid wordt toegepast.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Invoerwaarden

String

String[]

Nullable<T>[[Microsoft.Azure.Commands.ResourceManager.Cmdlets.Entities.Policy.PolicyAssignmentEnforcementMode, Microsoft.Azure.PowerShell.Cmdlets.ResourceManager, Version=3.5.0.0, Culture=neutral, PublicKeyToken=null]]

PsPolicyAssignment

PsNonComplianceMessage[]

Uitvoerwaarden

PsPolicyAssignment