Definitie structuur van Azure Policy initiatiefAzure Policy initiative definition structure

Met initiatieven kunt u verschillende gerelateerde beleids definities groeperen om toewijzingen en beheer te vereenvoudigen omdat u met een groep werkt als één item.Initiatives enable you to group several related policy definitions to simplify assignments and management because you work with a group as a single item. U kunt bijvoorbeeld gerelateerde coderings beleidsregels in één initiatief groeperen.For example, you can group related tagging policy definitions into a single initiative. In plaats van elk beleid afzonderlijk toe te wijzen, past u het initiatief toe.Rather than assigning each policy individually, you apply the initiative.

U gebruikt JSON om een beleids initiatief definitie te maken.You use JSON to create a policy initiative definition. De beleids initiatief definitie bevat elementen voor:The policy initiative definition contains elements for:

In het volgende voor beeld ziet u hoe u een initiatief maakt voor het afhandelen van twee Tags: costCenter en productName .The following example illustrates how to create an initiative for handling two tags: costCenter and productName. Er worden twee ingebouwde beleids regels gebruikt om de standaard label waarde toe te passen.It uses two built-in policies to apply the default tag value.

{
    "properties": {
        "displayName": "Billing Tags Policy",
        "policyType": "Custom",
        "description": "Specify cost Center tag and product name tag",
        "metadata": {
            "version": "1.0.0",
            "category": "Tags"
        },
        "parameters": {
            "costCenterValue": {
                "type": "String",
                "metadata": {
                    "description": "required value for Cost Center tag"
                },
                "defaultValue": "DefaultCostCenter"
            },
            "productNameValue": {
                "type": "String",
                "metadata": {
                    "description": "required value for product Name tag"
                },
                "defaultValue": "DefaultProduct"
            }
        },
        "policyDefinitions": [{
                "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62",
                "parameters": {
                    "tagName": {
                        "value": "costCenter"
                    },
                    "tagValue": {
                        "value": "[parameters('costCenterValue')]"
                    }
                }
            },
            {
                "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/2a0e14a6-b0a6-4fab-991a-187a4f81c498",
                "parameters": {
                    "tagName": {
                        "value": "costCenter"
                    },
                    "tagValue": {
                        "value": "[parameters('costCenterValue')]"
                    }
                }
            },
            {
                "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62",
                "parameters": {
                    "tagName": {
                        "value": "productName"
                    },
                    "tagValue": {
                        "value": "[parameters('productNameValue')]"
                    }
                }
            },
            {
                "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/2a0e14a6-b0a6-4fab-991a-187a4f81c498",
                "parameters": {
                    "tagName": {
                        "value": "productName"
                    },
                    "tagValue": {
                        "value": "[parameters('productNameValue')]"
                    }
                }
            }
        ]
    }
}

Azure Policy ingebouwde toepassingen en patronen bevinden zich op voor beelden van Azure Policy.Azure Policy built-ins and patterns are at Azure Policy samples.

MetagegevensMetadata

De optionele metadata eigenschap bevat informatie over de beleids initiatief definitie.The optional metadata property stores information about the policy initiative definition. Klanten kunnen alle eigenschappen en waarden definiëren die van toepassing zijn op hun organisatie in metadata .Customers can define any properties and values useful to their organization in metadata. Er zijn echter enkele algemene eigenschappen die worden gebruikt door Azure Policy en in ingebouwde modules.However, there are some common properties used by Azure Policy and in built-ins.

Algemene eigenschappen van meta gegevensCommon metadata properties

  • version (teken reeks): houdt informatie bij over de versie van de inhoud van een beleids initiatief definitie.version (string): Tracks details about the version of the contents of a policy initiative definition.

  • category (teken reeks): bepaalt onder welke categorie in Azure Portal de beleids definitie wordt weer gegeven.category (string): Determines under which category in Azure portal the policy definition is displayed.

    Notitie

    Voor een regelgevings nalevings initiatief moet de naleving van de category regelgevingworden vastgesteld.For a Regulatory Compliance initiative, the category must be Regulatory Compliance.

  • preview (Booleaans): de vlag True of False voor als de beleids initiatief definitie _Preview_is.preview (boolean): True or false flag for if the policy initiative definition is preview.

  • deprecated (Booleaans): de vlag True of False voor als de beleids initiatief definitie is gemarkeerd als afgeschaft.deprecated (boolean): True or false flag for if the policy initiative definition has been marked as deprecated.

Notitie

De Azure Policy-service gebruikt version , preview en deprecated Eigenschappen om het niveau van de wijziging in een ingebouwde beleids definitie of-initiatief en-status over te brengen.The Azure Policy service uses version, preview, and deprecated properties to convey level of change to a built-in policy definition or initiative and state. De indeling van version is: {Major}.{Minor}.{Patch} .The format of version is: {Major}.{Minor}.{Patch}. Specifieke statussen, zoals afgeschaft of Preview, worden toegevoegd aan de version eigenschap of een andere eigenschap als een Booleaanse waarde.Specific states, such as deprecated or preview, are appended to the version property or in another property as a boolean. Zie ingebouwde versie beheervoor meer informatie over de manier waarop Azure Policy ingebouwde versies.For more information about the way Azure Policy versions built-ins, see Built-in versioning.

ParametersParameters

Met para meters kunt u het beleids beheer vereenvoudigen door het aantal beleids definities te verminderen.Parameters help simplify your policy management by reducing the number of policy definitions. U kunt para meters zien zoals de velden in een formulier – name , address ,, city , state .Think of parameters like the fields on a form – name, address, city, state. Deze para meters blijven altijd hetzelfde, maar hun waarden worden gewijzigd op basis van de persoon die het formulier invult.These parameters always stay the same, however their values change based on the individual filling out the form. Para meters werken op dezelfde manier als bij het bouwen van beleids initiatieven.Parameters work the same way when building policy initiatives. Door para meters op te nemen in een beleids initiatief definitie, kunt u die para meter opnieuw gebruiken in het opgenomen beleid.By including parameters in a policy initiative definition, you can reuse that parameter in the included policies.

Notitie

Zodra een initiatief is toegewezen, kunnen Initative niveau parameters niet worden gewijzigd.Once an initiative is assigned, initative level parameters can't be altered. Daarom is het aanbeveling om een DefaultValue in te stellen bij het definiëren van de para meter.Due to this, the recommendation is to set a defaultValue when defining the parameter.

Parameter eigenschappenParameter properties

Een para meter heeft de volgende eigenschappen die worden gebruikt in de beleids initiatief definitie:A parameter has the following properties that are used in the policy initiative definition:

  • name: De naam van de para meter.name: The name of your parameter. Wordt gebruikt door de parameters implementatie functie binnen de beleids regel.Used by the parameters deployment function within the policy rule. Zie een parameter waarde gebruikenvoor meer informatie.For more information, see using a parameter value.
  • type: Bepaalt of de para meter een teken reeks, een matrix, een object, een Booleaanse waarde, een geheel getal, een floatof een datum/tijdis.type: Determines if the parameter is a string, array, object, boolean, integer, float, or datetime.
  • metadata: Definieert subeigenschappen die voornamelijk worden gebruikt door de Azure Portal om gebruikers vriendelijke informatie weer te geven:metadata: Defines subproperties primarily used by the Azure portal to display user-friendly information:
    • description: De uitleg van het gebruik van de para meter voor.description: The explanation of what the parameter is used for. Kan worden gebruikt om voor beelden te bieden van acceptabele waarden.Can be used to provide examples of acceptable values.
    • displayName: De beschrijvende naam die wordt weer gegeven in de portal voor de para meter.displayName: The friendly name shown in the portal for the parameter.
    • strongType: (Optioneel) gebruikt bij het toewijzen van de beleids definitie via de portal.strongType: (Optional) Used when assigning the policy definition through the portal. Biedt een context bewuste lijst.Provides a context aware list. Zie strongTypevoor meer informatie.For more information, see strongType.
  • defaultValue: (Optioneel) Hiermee stelt u de waarde van de para meter in een toewijzing in als er geen waarde is opgegeven.defaultValue: (Optional) Sets the value of the parameter in an assignment if no value is given.
  • allowedValues: (Optioneel) biedt een matrix van waarden die door de para meter worden geaccepteerd tijdens de toewijzing.allowedValues: (Optional) Provides an array of values that the parameter accepts during assignment.

U kunt bijvoorbeeld een beleids initiatief definitie definiëren om de locatie van resources in de verschillende opgenomen beleids definities te beperken.As an example, you could define a policy initiative definition to limit the locations of resources in the various included policy definitions. Een para meter voor die beleids initiatief definitie kan worden allowedLocations.A parameter for that policy initiative definition could be allowedLocations. De para meter is vervolgens beschikbaar voor elke opgenomen beleids definitie en gedefinieerd tijdens de toewijzing van het beleid.The parameter is then available to each included policy definition and defined during assignment of the policy initiative.

"parameters": {
    "init_allowedLocations": {
        "type": "array",
        "metadata": {
            "description": "The list of allowed locations for resources.",
            "displayName": "Allowed locations",
            "strongType": "location"
        },
        "defaultValue": [ "westus2" ],
        "allowedValues": [
            "eastus2",
            "westus2",
            "westus"
        ]
    }
}

Een parameter waarde door geven aan een beleids definitiePassing a parameter value to a policy definition

U declareert u aan de initiatief parameters die u doorgeeft aan de opgenomen beleids definities in de policyDefinitions -matrix van de initiatief definitie.You declare which initiative parameters you pass to which included policy definitions in the policyDefinitions array of the initiative definition. De parameter naam kan hetzelfde zijn, waarbij verschillende namen worden gebruikt in de initiatieven dan in de beleids definities de Lees baarheid van code vereenvoudigt.While the parameter name can be the same, using different names in the initiatives than in the policy definitions simplifies code readability.

Zo kan de para meter init_allowedLocations initiatief die eerder is gedefinieerd, worden door gegeven aan verschillende opgenomen beleids definities en de bijbehorende para meters, sql_locations en vm_locations, zoals:For example, the init_allowedLocations initiative parameter defined previously can be passed to several included policy definitions and their parameters, sql_locations and vm_locations, like this:

"policyDefinitions": [
    {
        "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/0ec8fc28-d5b7-4603-8fec-39044f00a92b",
        "policyDefinitionReferenceId": "allowedLocationsSQL",
        "parameters": {
            "sql_locations": {
                "value": "[parameters('init_allowedLocations')]"
            }
        }
    },
    {
        "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/aa09bd0f-aa5f-4343-b6ab-a33a6a6304f3",
        "policyDefinitionReferenceId": "allowedLocationsVMs",
        "parameters": {
            "vm_locations": {
                "value": "[parameters('init_allowedLocations')]"
            }
        }
    }
]

Dit voor beeld verwijst naar de init_allowedLocations para meter die is gedemonstreerd in parameter eigenschappen.This sample references the init_allowedLocations parameter that was demonstrated in parameter properties.

strongTypestrongType

Binnen de metadata eigenschap kunt u strongType gebruiken om een multi-select lijst met opties in de Azure Portal op te geven.Within the metadata property, you can use strongType to provide a multi-select list of options within the Azure portal. strongType kan een ondersteund resource type of een toegestane waarde zijn.strongType can be a supported resource type or an allowed value. Als u wilt bepalen of een resource type geldig is voor strongType, gebruikt u Get-AzResourceProvider.To determine if a resource type is valid for strongType, use Get-AzResourceProvider.

Sommige resource typen die niet worden geretourneerd door Get-AzResourceProvider worden ondersteund.Some resource types not returned by Get-AzResourceProvider are supported. Deze resource typen zijn:Those resource types are:

  • Microsoft.RecoveryServices/vaults/backupPolicies

De toegestane waarden voor de niet-bron typen voor strongType zijn:The non-resource type allowed values for strongType are:

  • location
  • resourceTypes
  • storageSkus
  • vmSKUs
  • existingResourceGroups

BeleidsdefinitiesPolicy definitions

Het policyDefinitions gedeelte van de initiatief definitie is een matrix waarvan bestaande beleids definities in het initiatief zijn opgenomen.The policyDefinitions portion of the initiative definition is an array of which existing policy definitions are included in the initiative. Zoals vermeld in het door geven van een parameter waarde naar een beleids definitie, is deze eigenschap waar Initiative-para meters worden door gegeven aan de beleids definitie.As mentioned in Passing a parameter value to a policy definition, this property is where initiative parameters are passed to the policy definition.

Eigenschappen van beleids definitiePolicy definition properties

Elk matrix element dat een beleids definitie vertegenwoordigt, heeft de volgende eigenschappen:Each array element that represents a policy definition has the following properties:

  • policyDefinitionId (teken reeks): de ID van de aangepaste of ingebouwde beleids definitie die moet worden opgenomen.policyDefinitionId (string): The ID of the custom or built-in policy definition to include.
  • policyDefinitionReferenceId (teken reeks): een korte naam voor de opgenomen beleids definitie.policyDefinitionReferenceId (string): A short name for the included policy definition.
  • parameters: (Optioneel) de naam/waarde-paren voor het door geven van een initiatief parameter naar de opgenomen beleids definitie als een eigenschap in die beleids definitie.parameters: (Optional) The name/value pairs for passing an initiative parameter to the included policy definition as a property in that policy definition. Zie para metersvoor meer informatie.For more information, see Parameters.
  • groupNames (matrix met teken reeksen): (optioneel) de groep waarvan de beleids definitie lid is.groupNames (array of strings): (Optional) The group the policy definition is a member of. Zie beleids groepenvoor meer informatie.For more information, see Policy groups.

Hier volgt een voor beeld van policyDefinitions met twee opgenomen beleids definities die elk zijn door gegeven aan dezelfde initiatief parameter:Here is an example of policyDefinitions that has two included policy definitions that are each passed the same initiative parameter:

"policyDefinitions": [
    {
        "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/0ec8fc28-d5b7-4603-8fec-39044f00a92b",
        "policyDefinitionReferenceId": "allowedLocationsSQL",
        "parameters": {
            "sql_locations": {
                "value": "[parameters('init_allowedLocations')]"
            }
        }
    },
    {
        "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/aa09bd0f-aa5f-4343-b6ab-a33a6a6304f3",
        "policyDefinitionReferenceId": "allowedLocationsVMs",
        "parameters": {
            "vm_locations": {
                "value": "[parameters('init_allowedLocations')]"
            }
        }
    }
]

Beleids definitie groepenPolicy definition groups

Beleids definities in een initiatief definitie kunnen worden gegroepeerd en gecategoriseerd.Policy definitions in an initiative definition can be grouped and categorized. De functie compliance Conformion (preview) van Azure Policy gebruikt deze eigenschap om definities te groeperen in besturings elementen en nalevings domeinen.Azure Policy's Regulatory Compliance (preview) feature uses this property to group definitions into controls and compliance domains. Deze informatie wordt gedefinieerd in de policyDefinitionGroups matrix eigenschap.This information is defined in the policyDefinitionGroups array property. Meer informatie over de groepering vindt u in een policyMetadata -object dat door micro soft is gemaakt.Additional grouping details may be found in a policyMetadata object created by Microsoft. Zie meta gegevens objectenvoor meer informatie.For information, see metadata objects.

Para meters voor beleids definitie groepenPolicy definition groups parameters

Elk matrix element in policyDefinitionGroups moet de volgende eigenschappen hebben:Each array element in policyDefinitionGroups must have both of the following properties:

  • name (teken reeks) [ vereist ] : de korte naam voor de groep.name (string) [required]: The short name for the group. In naleving van regelgeving, het besturings element.In Regulatory Compliance, the control. De waarde van deze eigenschap wordt gebruikt door groupNames in policyDefinitions .The value of this property is used by groupNames in policyDefinitions.

  • category (teken reeks): de hiërarchie waartoe de groep behoort.category (string): The hierarchy the group belongs to. In naleving van regelgeving, het nalevings domein van het besturings element.In Regulatory Compliance, the compliance domain of the control.

  • displayName (teken reeks): de beschrijvende naam voor de groep of het besturings element.displayName (string): The friendly name for the group or control. Gebruikt door de portal.Used by the portal.

  • description (teken reeks): een beschrijving van wat betreft de groep of het besturings element .description (string): A description of what the group or control covers.

  • additionalMetadataId (teken reeks): de locatie van het policyMetadata -object met aanvullende details over het besturings element en het nalevings domein.additionalMetadataId (string): The location of the policyMetadata object that has additional details about the control and compliance domain.

    Notitie

    Klanten kunnen verwijzen naar een bestaand policyMetadata -object.Customers may point to an existing policyMetadata object. Deze objecten zijn echter alleen -lezen en worden alleen gemaakt door micro soft.However, these objects are read-only and only created by Microsoft.

Een voor beeld van de policyDefinitionGroups eigenschap van de definitie van het ingebouwde NIST-initiatief ziet er als volgt uit:An example of the policyDefinitionGroups property from the NIST built-in initiative definition looks like this:

"policyDefinitionGroups": [
    {
        "name": "NIST_SP_800-53_R4_AC-1",
        "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/NIST_SP_800-53_R4_AC-1"
    }
]

MetagegevensobjectenMetadata objects

Door micro soft gemaakte invoeg toepassingen met reglementaire naleving hebben extra informatie over elk besturings element.Regulatory Compliance built-ins created by Microsoft have additional information about each control. Deze informatie is:This information is:

  • Wordt weer gegeven in de Azure Portal op het overzicht van een besturings element op een regelgevings nalevings initiatief.Displayed in the Azure portal on the overview of a control on a Regulatory Compliance initiative.
  • Beschikbaar via REST API.Available via REST API. Bekijk de Microsoft.PolicyInsights resource provider en de policyMetadata-bewerkings groep.See the Microsoft.PolicyInsights resource provider and the policyMetadata operation group.
  • Beschikbaar via Azure CLI.Available via Azure CLI. Zie de opdracht AZ Policy meta data .See the az policy metadata command.

Belangrijk

Meta gegevens objecten voor naleving van de regelgeving zijn alleen-lezen en kunnen niet door klanten worden gemaakt.Metadata objects for Regulatory Compliance are read-only and can't be created by customers.

De meta gegevens voor een beleids groepering hebben de volgende informatie in het properties knoop punt:The metadata for a policy grouping has the following information in the properties node:

  • metadataId: De besturings element-id waarop de groepering betrekking heeft.metadataId: The Control ID the grouping relates to.
  • category (vereist): het nalevings domein waartoe het besturings element behoort.category (required): The compliance domain the control belongs to.
  • title (vereist): de beschrijvende naam van de besturings element-id.title (required): The friendly name of the Control ID.
  • owner (vereist): identificeert wie verantwoordelijk is voor het besturings element in Azure: klant, micro soft, gedeeld.owner (required): Identifies who has responsibility for the control in Azure: Customer, Microsoft, Shared.
  • description: Aanvullende informatie over het besturings element.description: Additional information about the control.
  • requirements: Details over de verantwoordelijkheid van de implementatie van het besturings element.requirements: Details about responsibility of the implementation of the control.
  • additionalContentUrl: Een koppeling naar meer informatie over het besturings element.additionalContentUrl: A link to more information about the control. Deze eigenschap is doorgaans een koppeling naar de documentatie sectie waarin dit besturings element wordt behandeld in de nalevings standaard.This property is typically a link to the section of documentation that covers this control in the compliance standard.

Hieronder ziet u een voor beeld van het object policyMetadata .Below is an example of the policyMetadata object. Dit voor beeld van meta gegevens behoort tot het NIST SP 800-53 R4 AC-1- besturings element.This example metadata belongs to the NIST SP 800-53 R4 AC-1 control.

{
  "properties": {
    "metadataId": "NIST SP 800-53 R4 AC-1",
    "category": "Access Control",
    "title": "Access Control Policy and Procedures",
    "owner": "Shared",
    "description": "**The organization:**    \na. Develops, documents, and disseminates to [Assignment: organization-defined personnel or roles]:  \n1. An access control policy that addresses purpose, scope, roles, responsibilities, management commitment, coordination among organizational entities, and compliance; and  \n2. Procedures to facilitate the implementation of the access control policy and associated access controls; and  \n  
\nb. Reviews and updates the current:  \n1. Access control policy [Assignment: organization-defined frequency]; and  \n2. Access control procedures [Assignment: organization-defined frequency].",
    "requirements": "**a.**  The customer is responsible for developing, documenting, and disseminating access control policies and procedures. The customer access control policies and procedures address access to all customer-deployed resources and customer system access (e.g., access to customer-deployed virtual machines, access to customer-built applications).  \n**b.**  The customer is responsible for reviewing and updating access control policies and procedures in accordance with FedRAMP requirements.",
    "additionalContentUrl": "https://nvd.nist.gov/800-53/Rev4/control/AC-1"
  },
  "id": "/providers/Microsoft.PolicyInsights/policyMetadata/NIST_SP_800-53_R4_AC-1",
  "name": "NIST_SP_800-53_R4_AC-1",
  "type": "Microsoft.PolicyInsights/policyMetadata"
}

Volgende stappenNext steps