Sdílet prostřednictvím


New-AzureRmPolicyAssignment

Vytvoří přiřazení zásady.

Upozorňující

Modul AzureRM PowerShell byl od 29. února 2024 oficiálně zastaralý. Uživatelům se doporučuje migrovat z AzureRM do modulu Az PowerShell, aby se zajistila nepřetržitá podpora a aktualizace.

I když může modul AzureRM stále fungovat, už se neudržuje ani nepodporuje, přičemž jakékoli další použití se bude umisťovat podle vlastního uvážení a rizika uživatele. Pokyny k přechodu na modul Az najdete v našich zdrojích informací o migraci.

Syntaxe

New-AzureRmPolicyAssignment
   -Name <String>
   -Scope <String>
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-PolicyDefinition <PSObject>]
   [-PolicySetDefinition <PSObject>]
   [-Metadata <String>]
   [-Sku <Hashtable>]
   [-AssignIdentity]
   [-Location <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
New-AzureRmPolicyAssignment
   -Name <String>
   -Scope <String>
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   -PolicyDefinition <PSObject>
   [-PolicySetDefinition <PSObject>]
   -PolicyParameterObject <Hashtable>
   [-Metadata <String>]
   [-Sku <Hashtable>]
   [-AssignIdentity]
   [-Location <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
New-AzureRmPolicyAssignment
   -Name <String>
   -Scope <String>
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   -PolicyDefinition <PSObject>
   [-PolicySetDefinition <PSObject>]
   -PolicyParameter <String>
   [-Metadata <String>]
   [-Sku <Hashtable>]
   [-AssignIdentity]
   [-Location <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
New-AzureRmPolicyAssignment
   -Name <String>
   -Scope <String>
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-PolicyDefinition <PSObject>]
   -PolicySetDefinition <PSObject>
   -PolicyParameterObject <Hashtable>
   [-Metadata <String>]
   [-Sku <Hashtable>]
   [-AssignIdentity]
   [-Location <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
New-AzureRmPolicyAssignment
   -Name <String>
   -Scope <String>
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-PolicyDefinition <PSObject>]
   -PolicySetDefinition <PSObject>
   -PolicyParameter <String>
   [-Metadata <String>]
   [-Sku <Hashtable>]
   [-AssignIdentity]
   [-Location <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]

Description

Rutina New-AzureRmPolicyAssignment vytvoří přiřazení zásad. Zadejte zásadu a obor.

Příklady

Příklad 1: Přiřazení zásad na úrovni skupiny prostředků

PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $Policy = Get-AzureRmPolicyDefinition -Name 'VirtualMachinePolicy'
PS C:\> New-AzureRmPolicyAssignment -Name 'VirtualMachinePolicyAssignment' -PolicyDefinition $Policy -Scope $ResourceGroup.ResourceId

První příkaz získá skupinu prostředků s názvem ResourceGroup11 pomocí rutiny Get-AzureRMResourceGroup a uloží ji do proměnné $ResourceGroup. Druhý příkaz získá definici zásady s názvem VirtualMachinePolicy pomocí rutiny Get-AzureRmPolicyDefinition a uloží ji do proměnné $Policy. Poslední příkaz přiřadí zásadu v $Policy na úrovni skupiny prostředků identifikované vlastností ResourceId $ResourceGroup.

Příklad 2: Přiřazení zásad na úrovni skupiny prostředků s objektem parametru zásad

PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $Policy = Get-AzureRmPolicyDefinition -BuiltIn | Where-Object {$_.Properties.DisplayName -eq 'Allowed locations'}
PS C:\> $Locations = Get-AzureRmLocation | where displayname -like '*east*'
PS C:\> $AllowedLocations = @{'listOfAllowedLocations'=($Locations.location)}
PS C:\> New-AzureRmPolicyAssignment -Name 'RestrictLocationPolicyAssignment' -PolicyDefinition $Policy -Scope $ResourceGroup.ResourceId -PolicyParameterObject $AllowedLocations

První příkaz získá skupinu prostředků s názvem ResourceGroup11 pomocí rutiny Get-AzureRMResourceGroup. Příkaz uloží tento objekt do proměnné $ResourceGroup. Druhý příkaz získá integrovanou definici zásad pro povolená umístění pomocí rutiny Get-AzureRmPolicyDefinition. Příkaz uloží tento objekt do proměnné $Policy. Třetí a čtvrtý příkaz vytvoří objekt obsahující všechny oblasti Azure s názvem east. Příkazy ukládají tento objekt do proměnné $AllowedLocations. Poslední příkaz přiřadí zásadu v $Policy na úrovni skupiny prostředků pomocí objektu parametru zásad v $AllowedLocations. Vlastnost ResourceId $ResourceGroup identifikuje skupinu prostředků.

Příklad 3: Přiřazení zásad na úrovni skupiny prostředků se souborem parametrů zásad

Vytvořte soubor s názvem AllowedLocations.json v místním pracovním adresáři s následujícím obsahem.

{
    "listOfAllowedLocations":  {
      "value": [
        "westus",
        "westeurope",
        "japanwest"
      ]
    }
}

PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $Policy = Get-AzureRmPolicyDefinition -BuiltIn | Where-Object {$_.Properties.DisplayName -eq 'Allowed locations'}
PS C:\> New-AzureRmPolicyAssignment -Name 'RestrictLocationPolicyAssignment' -PolicyDefinition $Policy -Scope $ResourceGroup.ResourceId -PolicyParameter .\AllowedLocations.json

První příkaz získá skupinu prostředků s názvem ResourceGroup11 pomocí rutiny Get-AzureRMResourceGroup a uloží ji do proměnné $ResourceGroup. Druhý příkaz získá integrovanou definici zásad pro povolená umístění pomocí rutiny Get-AzureRmPolicyDefinition a uloží ji do proměnné $Policy. Poslední příkaz přiřadí zásadu v $Policy ve skupině prostředků identifikované vlastností ResourceId $ResourceGroup pomocí souboru parametrů zásad AllowedLocations.json z místního pracovního adresáře.

Příklad 4: Přiřazení zásad se spravovanou identitou

PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $Policy = Get-AzureRmPolicyDefinition -Name 'VirtualMachinePolicy'
PS C:\> New-AzureRmPolicyAssignment -Name 'VirtualMachinePolicyAssignment' -PolicyDefinition $Policy -Scope $ResourceGroup.ResourceId -Location 'eastus' -AssignIdentity

První příkaz získá skupinu prostředků s názvem ResourceGroup11 pomocí rutiny Get-AzureRMResourceGroup a uloží ji do proměnné $ResourceGroup. Druhý příkaz získá definici zásady s názvem VirtualMachinePolicy pomocí rutiny Get-AzureRmPolicyDefinition a uloží ji do proměnné $Policy. Poslední příkaz přiřadí zásadu ve $Policy ke skupině prostředků. Spravovaná identita se automaticky vytvoří a přiřadí k přiřazení zásad.

Parametry

-ApiVersion

Určuje verzi rozhraní API poskytovatele prostředků, která se má použít. Pokud nezadáte verzi, použije tato rutina nejnovější dostupnou verzi.

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-AssignIdentity

Vygenerujte a přiřaďte identitu Microsoft Entra pro toto přiřazení zásad. Identita se použije při spouštění nasazení pro zásady deployIfNotExists. Při přiřazování identity se vyžaduje umístění.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-DefaultProfile

Přihlašovací údaje, účet, tenant a předplatné používané ke komunikaci s Azure

Typ:IAzureContextContainer
Aliasy:AzureRmContext, AzureCredential
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Description

Popis přiřazení zásad

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-DisplayName

Určuje zobrazovaný název přiřazení zásady.

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-InformationAction

Určuje, jak tato rutina reaguje na informační událost. Tento parametr přijímá tyto hodnoty:

  • Pokračovat
  • Ignorovat
  • Dotazem
  • SilentlyContinue
  • Zastavit
  • Suspend
Typ:ActionPreference
Aliasy:infa
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-InformationVariable

Určuje informační proměnnou.

Typ:String
Aliasy:iv
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Location

Umístění identity prostředku přiřazení zásady. To se vyžaduje při použití přepínače -AssignIdentity.

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Metadata

Metadata pro nové přiřazení zásad. Může to být cesta k názvu souboru, který obsahuje metadata, nebo metadata jako řetězec.

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Name

Určuje název přiřazení zásady.

Typ:String
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-NotScope

Obory nejsou určené pro přiřazení zásad.

Typ:String[]
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-PolicyDefinition

Určuje zásadu, jako PsPolicyDefinition objekt, který obsahuje pravidlo zásady.

Typ:PSObject
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-PolicyParameter

Cesta k souboru parametrů zásad nebo řetězec parametru zásad.

Typ:String
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-PolicyParameterObject

Objekt parametru zásad.

Typ:Hashtable
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-PolicySetDefinition

Objekt definice sady zásad.

Typ:PSObject
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Pre

Označuje, že tato rutina bere v úvahu předběžné verze rozhraní API, když automaticky určí, kterou verzi použít.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Scope

Určuje obor, pro který se má zásada přiřadit. Pokud chcete například přiřadit zásadu ke skupině prostředků, zadejte následující: /subscriptions/název skupiny prostředků ID/resourcegroups/předplatného.

Typ:String
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Sku

Tabulka hash, která představuje vlastnosti skladové položky. Ve výchozím nastavení se skladová položka Free s hodnotami: @{Name = 'A0'; Tier = 'Free'}. Chcete-li použít skladovou položku Standard, použijte hodnoty: @{Name = 'A1'; Tier = 'Standard'}.

Typ:Hashtable
Aliasy:SkuObject
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False