Delen via


New-AzureRmPolicyDefinition

Hiermee maakt u een beleidsdefinitie.

Waarschuwing

De AzureRM PowerShell-module is vanaf 29 februari 2024 officieel afgeschaft. Gebruikers wordt aangeraden om van AzureRM naar de Az PowerShell-module te migreren om ondersteuning en updates te garanderen.

Hoewel de AzureRM-module nog steeds kan functioneren, wordt deze niet meer onderhouden of ondersteund, waardoor het gebruik naar eigen goeddunken en risico van de gebruiker blijft bestaan. Raadpleeg onze migratiebronnen voor hulp bij de overgang naar de Az-module.

Syntax

New-AzureRmPolicyDefinition
   -Name <String>
   [-DisplayName <String>]
   [-Description <String>]
   -Policy <String>
   [-Metadata <String>]
   [-Parameter <String>]
   [-Mode <PolicyDefinitionMode>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
New-AzureRmPolicyDefinition
   -Name <String>
   [-DisplayName <String>]
   [-Description <String>]
   -Policy <String>
   [-Metadata <String>]
   [-Parameter <String>]
   [-Mode <PolicyDefinitionMode>]
   -ManagementGroupName <String>
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
New-AzureRmPolicyDefinition
   -Name <String>
   [-DisplayName <String>]
   [-Description <String>]
   -Policy <String>
   [-Metadata <String>]
   [-Parameter <String>]
   [-Mode <PolicyDefinitionMode>]
   -SubscriptionId <Guid>
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]

Description

Met de cmdlet New-AzureRmPolicyDefinition maakt u een beleidsdefinitie die een beleidsregel bevat in de JSON-indeling (JavaScript Object Notation).

Voorbeelden

Voorbeeld 1: Een beleidsdefinitie maken met behulp van een beleidsbestand

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

PS C:\> New-AzureRmPolicyDefinition -Name 'LocationDefinition' -Policy C:\LocationPolicy.json

Met deze opdracht maakt u een beleidsdefinitie met de naam LocationDefinition die de beleidsregel bevat die is opgegeven in C:\LocationPolicy.json. Voorbeeldinhoud voor het LocationPolicy.json bestand wordt hierboven weergegeven.

Voorbeeld 2: Een geparameteriseerde beleidsdefinitie maken met behulp van inlineparameters

{
   "if": {
      "field": "location",
      "notIn": "[parameters('listOfAllowedLocations')]"
   },
   "then": {
      "effect": "audit"
   }
}

PS C:\> New-AzureRmPolicyDefinition -Name 'LocationDefinition' -Policy C:\LocationPolicy.json -Parameter '{ "listOfAllowedLocations": { "type": "array" } }'

Met deze opdracht maakt u een beleidsdefinitie met de naam LocationDefinition die de beleidsregel bevat die is opgegeven in C:\LocationPolicy.json. De parameterdefinitie voor de beleidsregel wordt inline gegeven.

Voorbeeld 3: Een beleidsdefinitie inline maken in een beheergroep

PS C:\> New-AzureRmPolicyDefinition -Name 'VMPolicyDefinition' -ManagementGroupName Dept42 -DisplayName 'Virtual Machine policy definition' -Policy '{"if":{"source":"action","equals":"Microsoft.Compute/virtualMachines/write"},"then":{"effect":"deny"}}'

Met deze opdracht maakt u een beleidsdefinitie met de naam VMPolicyDefinition in beheergroep Dept42. Met de opdracht geeft u het beleid op als een tekenreeks in een geldige JSON-indeling.

Voorbeeld 4: Een beleidsdefinitie inline maken met metagegevens

PS C:\> New-AzureRmPolicyDefinition -Name 'VMPolicyDefinition' -Metadata '{"Category":"Virtual Machine"}' -Policy '{"if":{"source":"action","equals":"Microsoft.Compute/virtualMachines/write"},"then":{"effect":"deny"}}'


Name               : VMPolicyDefinition
ResourceId         : /subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/policyDefinitions/VMPolicyDefinition
ResourceName       : VMPolicyDefinition
ResourceType       : Microsoft.Authorization/policyDefinitions
SubscriptionId     : 11111111-1111-1111-1111-111111111111
Properties         : @{displayName=VMPolicyDefinition; policyType=Custom; mode=All; metadata=; policyRule=}
PolicyDefinitionId : /subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/policyDefinitions/VMPolicyDefinition

Met deze opdracht maakt u een beleidsdefinitie met de naam VMPolicyDefinition met metagegevens die aangeven dat de categorie 'Virtuele machine' is. Met de opdracht geeft u het beleid op als een tekenreeks in een geldige JSON-indeling.

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
standaardwaarde:None
Vereist: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:AzureRmContext, AzureCredential
Position:Named
standaardwaarde:None
Vereist:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Hiermee geeft u een beschrijving voor de beleidsdefinitie.

Type:String
Position:Named
standaardwaarde:None
Vereist:False
Accept pipeline input:True
Accept wildcard characters:False

-DisplayName

Hiermee geeft u een weergavenaam voor de beleidsdefinitie.

Type:String
Position:Named
standaardwaarde:None
Vereist:False
Accept pipeline input:True
Accept wildcard characters:False

-InformationAction

Hiermee geeft u op hoe deze cmdlet reageert op een informatie-gebeurtenis. De aanvaardbare waarden voor deze parameter zijn:

  • Verdergaan
  • Negeren
  • Informeren
  • SilentlyContinue
  • Stoppen
  • Onderbreken
Type:ActionPreference
Aliases:infa
Position:Named
standaardwaarde:None
Vereist:False
Accept pipeline input:False
Accept wildcard characters:False

-InformationVariable

Hiermee geeft u een informatievariabele op.

Type:String
Aliases:iv
Position:Named
standaardwaarde:None
Vereist:False
Accept pipeline input:False
Accept wildcard characters:False

-ManagementGroupName

De naam van de beheergroep van de nieuwe beleidsdefinitie.

Type:String
Position:Named
standaardwaarde:None
Vereist:True
Accept pipeline input:True
Accept wildcard characters:False

-Metadata

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

Type:String
Position:Named
standaardwaarde:None
Vereist:False
Accept pipeline input:True
Accept wildcard characters:False

-Mode

De modus van de beleidsdefinitie

Type:Nullable<T>[PolicyDefinitionMode]
Position:Named
standaardwaarde:None
Vereist:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Hiermee geeft u een naam voor de beleidsdefinitie.

Type:String
Position:Named
standaardwaarde:None
Vereist:True
Accept pipeline input:True
Accept wildcard characters:False

-Parameter

De declaratie van parameters voor beleidsdefinitie. Dit kan een pad zijn naar een bestandsnaam met de declaratie parameters of de declaratie van parameters als tekenreeks.

Type:String
Position:Named
standaardwaarde:None
Vereist:False
Accept pipeline input:True
Accept wildcard characters:False

-Policy

Hiermee geeft u een beleidsregel voor de beleidsdefinitie. U kunt het pad opgeven van een .json-bestand of een tekenreeks die het beleid in JSON-indeling bevat.

Type:String
Position:Named
standaardwaarde:None
Vereist:True
Accept pipeline input:True
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
standaardwaarde:None
Vereist:False
Accept pipeline input:False
Accept wildcard characters:False

-SubscriptionId

De abonnements-id van de nieuwe beleidsdefinitie.

Type:Nullable<T>[Guid]
Position:Named
standaardwaarde:None
Vereist:True
Accept pipeline input:True
Accept wildcard characters:False