Ниже блок кода должен соответствовать требованию шаблона *-*-asp
. я не провёл это через достаточное тестирование, но для тех, кто ищет применение правил именования с помощью политик, я надеюсь, что это поможет. Кроме того, было бы интересно узнать, есть ли лучшее решение, чем приведенное здесь.
Azure Политика Like / Match не поддерживает регулярные выражения, сложность приведенного ниже решения только подчеркивает необходимость в такой системе. Есть голос пользователя, я прошу вашего голоса, если вы видите актуальность функции регулярных выражений в Azure policy - ссылка здесь .
{
"if": {
"allOf": [
{
"field": "type",
"in": "[parameters('listOfResourceTypes')]"
},
{
"not": {
"allOf": [
{
"value": "[equals(length(split(parameters('namePattern'), '-')), length(split(field('name'), '-')))]",
"equals": true
},
{
"value": "[equals(toLower(last(split(parameters('namePattern'), '-'))), toLower(last(split(field('name'), '-'))))]",
"equals": true
}
]
}
}
]
},
"then": {
"effect": "[parameters('policyEffect')]"
}
}