Terraform 0.11

azurerm_policy_assignment




terraform

azurerm_policy_assignment

निर्दिष्ट स्कोप में निर्दिष्ट नीति परिभाषा को कॉन्फ़िगर किया गया।

उदाहरण उपयोग

resource "azurerm_policy_definition" "test" {
  name         = "my-policy-definition"
  policy_type  = "Custom"
  mode         = "All"
  display_name = "acctestpol-%d"
  policy_rule  = <<POLICY_RULE
    {
    "if": {
      "not": {
        "field": "location",
        "in": "[parameters('allowedLocations')]"
      }
    },
    "then": {
      "effect": "audit"
    }
  }
POLICY_RULE

  parameters = <<PARAMETERS
    {
    "allowedLocations": {
      "type": "Array",
      "metadata": {
        "description": "The list of allowed locations for resources.",
        "displayName": "Allowed locations",
        "strongType": "location"
      }
    }
  }
PARAMETERS
}

resource "azurerm_resource_group" "test" {
  name = "test-resources"
  location = "West Europe"
}

resource "azurerm_policy_assignment" "test" {
  name                 = "example-policy-assignment"
  scope                = "${azurerm_resource_group.test.id}"
  policy_definition_id = "${azurerm_policy_definition.test.id}"
  description          = "Policy Assignment created via an Acceptance Test"
  display_name         = "Acceptance Test Run %d"
  parameters = <<PARAMETERS
{
  "allowedLocations": {
    "value": [ "West Europe" ]
  }
}
PARAMETERS
}

तर्क संदर्भ

निम्नलिखित तर्क समर्थित हैं:

  • name - (आवश्यक) पॉलिसी असाइनमेंट का नाम। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

  • scope - (आवश्यक) वह स्कोप जिस पर पॉलिसी असाइनमेंट लागू किया जाना चाहिए। यह या तो सदस्यता हो सकती है (जैसे /subscriptions/00000000-0000-0000-000000000000 ) या एक संसाधन समूह (जैसे /subscriptions/00000000-0000-0000-000000000000/resourceGroups/myResourceGroup )। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

  • policy_definition_id - (आवश्यक) निर्दिष्ट स्कोप पर लागू की जाने वाली नीति परिभाषा की आईडी।

  • description - (वैकल्पिक) इस पॉलिसी असाइनमेंट के लिए उपयोग करने का विवरण। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

  • display_name - (वैकल्पिक) इस नीति असाइनमेंट के लिए उपयोग करने के लिए एक अनुकूल प्रदर्शन नाम। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

  • parameters - (वैकल्पिक) पॉलिसी की परिभाषा के लिए पैरामीटर। यह फ़ील्ड एक JSON ऑब्जेक्ट है जो पॉलिसी परिभाषा से पैरामीटर फ़ील्ड में मैप करता है। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

संदर्भ संदर्भित करता है

निम्नलिखित विशेषताएँ निर्यात की जाती हैं:

  • id - पॉलिसी असाइनमेंट आईडी।

आयात

पॉलिसी असाइनमेंट को policy name का उपयोग करके आयात किया जा सकता है, जैसे

terraform import azurerm_policy_assignment.assignment1  /subscriptions/00000000-0000-0000-000000000000/providers/Microsoft.Authorization/policyAssignments/assignment1