Я знаю, что могу получить ключ хоста и trigger_url функции Azure в шаблоне ARM с помощью метода listKeys / listSecrets.Но мне нужен системный ключ, я развертываю подписку на сетку событий, и ей нужен URL-адрес конечной точки функции Azure, который содержит системный ключ:
"resources": [
{
"type": "Microsoft.Storage/StorageAccounts/providers/eventSubscriptions",
"name": "[concat(concat(parameters('publisherName'), '/Microsoft.EventGrid/'), parameters('name'))]",
"apiVersion": "2018-01-01",
"properties": {
"destination": {
"endpointType": "[parameters('endpointType')]",
"properties": {
"endpointUrl": "[parameters('endpointUrl')]"
}
},
"filter": {
"subjectBeginsWith": "[parameters('subjectBeginsWith')]",
"subjectEndsWith": "[parameters('subjectEndsWith')]",
"subjectIsCaseSensitive": "[parameters('subjectIsCaseSensitive')]",
"includedEventTypes": "[parameters('includedEventTypes')]"
},
"labels": "[parameters('labels')]"
}
}
]
, где endpointUrl имеет вид:
https://<function-app-name>.azurewebsites.net/admin/extensions/EventGridExtensionConfig?functionName=<function-name>&code=XZvGU0ROPxxxxxxxxxxxxxxxxxxxxxxxxxxxxaaieD89gPQ==
Параметр с именем 'code' является системным ключом, который можно получить, выполнив GET для
http://<function-app-name>.azurewebsites.net/admin/host/systemkeys/eventgridextensionconfig_extension?code=<master_key>
Есть ли способ получить этот системный ключ (или весь конечный пункт) в шаблоне ARMне прибегая к сценариям bash, которые внедряют его или другие внешние системы?
В документации сказано: «Однако нельзя использовать операции со списками, для которых требуются значения в теле запроса».Поэтому я не думаю, что смогу выполнить операцию «список».