New-AzPolicyDefinition

Skapar eller uppdaterar en principdefinition.

Syntax

Name (Standard)

New-AzPolicyDefinition
    -Name <String>
    -Policy <String>
    [-DisplayName <String>]
    [-Description <String>]
    [-Metadata <String>]
    [-Parameter <String>]
    [-Mode <String>]
    [-Version <String>]
    [-ExternalEvaluationEnforcementSettingMissingTokenAction <String>]
    [-ExternalEvaluationEnforcementSettingResultLifespan <String>]
    [-ExternalEvaluationEnforcementSettingRoleDefinitionId <String[]>]
    [-EndpointSettingKind <String>]
    [-EndpointSettingDetail <String>]
    [-DefaultProfile <PSObject>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ManagementGroupName

New-AzPolicyDefinition
    -Name <String>
    -ManagementGroupName <String>
    -Policy <String>
    [-DisplayName <String>]
    [-Description <String>]
    [-Metadata <String>]
    [-Parameter <String>]
    [-Mode <String>]
    [-Version <String>]
    [-ExternalEvaluationEnforcementSettingMissingTokenAction <String>]
    [-ExternalEvaluationEnforcementSettingResultLifespan <String>]
    [-ExternalEvaluationEnforcementSettingRoleDefinitionId <String[]>]
    [-EndpointSettingKind <String>]
    [-EndpointSettingDetail <String>]
    [-DefaultProfile <PSObject>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

SubscriptionId

New-AzPolicyDefinition
    -Name <String>
    -SubscriptionId <String>
    -Policy <String>
    [-DisplayName <String>]
    [-Description <String>]
    [-Metadata <String>]
    [-Parameter <String>]
    [-Mode <String>]
    [-Version <String>]
    [-ExternalEvaluationEnforcementSettingMissingTokenAction <String>]
    [-ExternalEvaluationEnforcementSettingResultLifespan <String>]
    [-ExternalEvaluationEnforcementSettingRoleDefinitionId <String[]>]
    [-EndpointSettingKind <String>]
    [-EndpointSettingDetail <String>]
    [-DefaultProfile <PSObject>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Cmdleten New-AzPolicyDefinition skapar eller uppdaterar en principdefinition som innehåller ett JSON-format för principregeln.

Exempel

Exempel 1: Skapa en principdefinition med hjälp av en principfil

{
   "if": {
      "field": "location",
      "notIn": ["eastus", "westus", "centralus"]
   },
   "then": {
      "effect": "audit"
   }
}

New-AzPolicyDefinition -Name 'LocationDefinition' -Policy C:\LocationPolicy.json

Det här kommandot skapar en principdefinition med namnet LocationDefinition som innehåller den principregel som anges i C:\LocationPolicy.jspå. Exempelinnehåll för LocationPolicy.json-filen finns ovan. Tre filinnehållsformat stöds: 1. Endast principregel (exempel ovan). 2. Objekt för principegenskaper. Det här formatet visas i portalen när du redigerar en principdefinition och kan innehålla parametrar. 3. Fullständigt principobjekt. Det här formatet genereras av Azure Policy exportfunktionen och kan innehålla parametrar.

Obs! Värden som anges på kommandoraden (t.ex. parametrar, metadata) åsidosätter motsvarande värden som finns i filen.

Exempel 2: Skapa en parameteriserad principdefinition med infogade parametrar

{
   "if": {
      "field": "location",
      "notIn": "[parameters('listOfAllowedLocations')]"
   },
   "then": {
      "effect": "audit"
   }
}
New-AzPolicyDefinition -Name 'LocationDefinition' -Policy C:\LocationPolicy.json -Parameter '{ "listOfAllowedLocations": { "type": "array" } }'

Det här kommandot skapar en principdefinition med namnet LocationDefinition som innehåller den principregel som anges i C:\LocationPolicy.jspå. Parameterdefinitionen för principregeln anges infogad.

Exempel 3: Skapa en principdefinition infogad i en hanteringsgrupp

New-AzPolicyDefinition -Name 'VMPolicyDefinition' -ManagementGroupName Dept42 -DisplayName 'Virtual Machine policy definition' -Policy '{"if":{"field":"type","equals":"Microsoft.Compute/virtualMachines"},"then":{"effect":"deny"}}'

Det här kommandot skapar en principdefinition med namnet VMPolicyDefinition i hanteringsgruppen Dept42. Kommandot anger principen som en sträng i giltigt JSON-format.

Exempel 4: Skapa en principdefinition infogad med metadata

New-AzPolicyDefinition -Name 'VMPolicyDefinition' -Metadata '{"category":"Virtual Machine"}' -Policy '{"if":{"field":"type","equals":"Microsoft.Compute/virtualMachines"},"then":{"effect":"deny"}}' | Format-List

Det här kommandot skapar en principdefinition med namnet VMPolicyDefinition med metadata som anger att dess kategori är "Virtuell dator". Kommandot anger principen som en sträng i giltigt JSON-format.

Exempel 5: Skapa en principdefinition infogad med läge

New-AzPolicyDefinition -Name 'TagsPolicyDefinition' -Policy '{"if":{"value":"[less(length(field(''tags'')), 3)]","equals":true},"then":{"effect":"deny"}}' -Mode Indexed

Det här kommandot skapar en principdefinition med namnet TagsPolicyDefinition med läget "Indexerad" som anger att principen endast ska utvärderas för resurstyper som stöder taggar och platser.

Exempel 6: Skapa en principdefinition infogad med version

New-AzPolicyDefinition -Name 'VMPolicyDefinition' -Policy '{"if":{"field":"type","equals":"Microsoft.Compute/virtualMachines"},"then":{"effect":"deny"}}' -Version '2.0.0'

Det här kommandot skapar en principdefinition med namnet VMPolicyDefinition med inkrementerad version 2.0.0. Kommandot anger principen som en sträng i giltigt JSON-format.

Exempel 7: Skapa en principdefinition med tvingande inställningar för extern utvärdering

New-AzPolicyDefinition -Name 'InvokePolicy' -Policy '{"if":{"value":"[claims().isValid]","equals":false},"then":{"effect":"deny"}}' -EndpointSettingKind 'CoinFlip' -ExternalEvaluationEnforcementSettingRoleDefinitionId @( "/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c" )

Det här kommandot skapar en principdefinition med namnet InvokePolicy med inställningar för extern utvärderingsframtvingande för att anropa CoinFlip-slutpunkten, som kräver den angivna rolldefinitionen.

Parametrar

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:jfr

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-DefaultProfile

Parametern DefaultProfile fungerar inte. Använd parametern SubscriptionId när den är tillgänglig om du kör cmdleten mot en annan prenumeration.

Parameteregenskaper

Typ:PSObject
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:AzureRMContext, AzureCredential

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Description

Beskrivningen av principdefinitionen.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-DisplayName

Principdefinitionens visningsnamn.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-EndpointSettingDetail

Information om slutpunkten.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-EndpointSettingKind

Typ av slutpunkt.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-ExternalEvaluationEnforcementSettingMissingTokenAction

Vad du ska göra när du utvärderar en tvingande princip som kräver en extern utvärdering och token saknas. Möjliga värden är Granskning och Neka och språkuttryck stöds.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-ExternalEvaluationEnforcementSettingResultLifespan

Livslängden för slutpunktsanropsresultatet varefter det inte längre är giltigt.

Värdet förväntas följa iso 8601-varaktighetsformatet och språkuttryck stöds.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-ExternalEvaluationEnforcementSettingRoleDefinitionId

En matris med rolldefinitions-ID:t som tilldelningens MSI behöver för att anropa slutpunkten.

Parameteregenskaper

Typ:

String[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-ManagementGroupName

ID för hanteringsgruppen.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

ManagementGroupName
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Metadata

Metadata för principdefinition. Metadata är ett öppet slutobjekt och är vanligtvis en samling nyckelvärdepar.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Mode

Principdefinitionsläget. Några exempel är Alla, Indexerade, Microsoft.KeyVault.Data.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Name

Namnet på den principdefinition som ska skapas.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:PolicyDefinitionName

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Parameter

Parameterdefinitionerna för parametrar som används i principregeln. Nycklarna är parameternamnen.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Policy

Principregeln.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-SubscriptionId

ID för målprenumerationen.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

SubscriptionId
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Version

Principdefinitionsversionen i #.#.#-format.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:PolicyDefinitionVersion

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-WhatIf

Visar vad som skulle hända om kommandot körs. Cmdleten körs inte.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:Wi

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

CommonParameters

Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.

Indata

String

String

Utdata

IPolicyDefinition