Как использовать несколько портов назначения в одном NSG SecurityRule в шаблоне ARM

Я хочу использовать единое правило безопасности в NSG вместо отдельного правила для каждого порта назначения.

Я использовал destinationPortRanges с несколькими портами в шаблоне ниже вместо destinationPortRange с одним портом.

{
    "name": "test-nsg-005",
    "type": "Microsoft.Network/networkSecurityGroups",
    "apiVersion": "2018-06-01",
    "location": "[variables('location')]",
    "properties": {
        "securityRules": [                {
                "name": "Allow ports",
                "properties": {
                    "priority": 1000,
                    "sourceAddressPrefix": "*",
                    "protocol": "TCP",
                    "destinationPortRanges": [
                        "22",
                        "443"                            
                    ],
                    "access": "Allow",
                    "direction": "Inbound",
                    "sourcePortRange": "*",
                    "destinationAddressPrefix": "*"
                }
            }]
    }
}  

Когда я пытаюсь запустить указанный выше шаблон с помощью Azure CLI, я не могу продолжить из-за следующей ошибки

Тест развертывания шаблона недействителен в соответствии с процедурой проверки. Идентификатор отслеживания: 0ee64525-9d2b-49cb-bac7-24baa73ac1d7. Подробнее см. Внутренние ошибки. Подробнее об использовании см. https://aka.ms/arm-deploy.

Обновлять:-

{"error":{"code":"InvalidTemplateDeployment","message":"The template deployment \'test\' is not valid according to the validation procedure. The tracking id is \'1e7527bc-6c7f-4aa9-8ed6-235402a229b7\'. See inner errors for details. Please see https://aka.ms/arm-deploy for usage details.","details":[{"code":"InvalidResourceName","message":"Resource name Allow ports is invalid. The name can be up to 80 characters long. It must begin with a word character, and it must end with a word character or with \'_\'. The name may contain word characters or \'.\', \'-\', \'_\'.","details":[]}]}}'
msrest.exceptions : The template deployment 'test' is not valid according to the validation procedure. The tracking id is '1e7527bc-6c7f-4aa9-8ed6-235402a229b7'. See inner errors for details. Please see https://aka.ms/arm-deploy for usage details.

Я получил указанную выше ошибку. После переименования имени правила безопасности проблема была решена.


person Galet    schedule 22.08.2018    source источник
comment
это правильный способ сделать это, во-первых, попробуйте использовать массив целых чисел, а не строк: [ 22, 443]   -  person 4c74356b41    schedule 22.08.2018
comment
@ 4c74356b41 Та же проблема после перехода от строк к целым числам.   -  person Galet    schedule 22.08.2018
comment
Нужно ли мне менять destinationAddressPrefix на destinationAddressPrefixes?   -  person Galet    schedule 22.08.2018
comment
нет, не хочешь. показать настоящую ошибку   -  person 4c74356b41    schedule 22.08.2018
comment
Теперь он работает с портами как с строковыми, так и с целыми числами. Возникла проблема с названием правила безопасности.   -  person Galet    schedule 22.08.2018


Ответы (1)


Ошибка возникла из-за неправильного имени правила безопасности.

person 4c74356b41    schedule 22.08.2018