Укажите заголовок запроса для Microsoft.Scheduler/jobCollections/jobs.

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

            {
           "name": "[concat('TraitementTableAzure-', parameters('HeliosEnvironnementName'), '-js')]",
           "type": "jobs",
           "apiVersion": "2016-03-01",
           "location": "[resourceGroup().location]",
           "properties": {
              "action": {
                 "request": {
                    "method": "Post",
                    "uri": "[concat('https://', parameters('AzureWebAppWebJobs'), '.scm.azurewebsites.net/api/triggeredwebjobs/', parameters('HeliosEnvironnementName'), '_TraitementTableAzure/run')]",
                    "headers": {
                       "authorization": "[concat('Basic ', reference('???').???)]"                        }
                 },
                 "type": "Http",
                 "retryPolicy": {
                    "retryType": "Fixed"
                 }
              },
              "startTime": "[parameters('SchedulesStartTime').SchedulerTraitementTableAzureStartTime]",
              "recurrence": {
                 "frequency": "Day",
                 "interval": 1
              },
              "state": "Enabled"
           },
           "dependsOn": [
              "[resourceId('Microsoft.Scheduler/jobCollections', variables('AzureSchedulerName'))]"
           ],
           "tags": {
              "displayName": "Cedule_TraitementTableAzure"
           }
        },

Я нашел информацию на портале Azure, но не в шаблоне ARM в свойствах веб-задания. Как можно сослаться на информацию о синей стрелке над моим шаблоном ARM? Clip Azure Blade


person Francis    schedule 17.05.2017    source источник


Ответы (1)


Как можно сослаться на информацию о синей стрелке над моим шаблоном ARM?

Если мы хотим получить publishingPassword, мы можем использовать ListPublishingCredentials API. в шаблоне ARM через функцию списка, list(concat('Microsoft.Web/sites/', parameters('websisteName') ,'/config/publishingcredentials'), '2016-08-01').properties.publishingPassword

В соответствии с вашим шаблоном кажется, что вы хотите вызвать REST API WebJob. Если это так, заголовок авторизации равен base64(publishusername:publishpassword).

base64(concat(list(concat('Microsoft.Web/sites/', parameters('websisteName'),'/config/publishingcredentials'), '2016-08-01').properties.publishingUserName,':',list(concat('Microsoft.Web/sites/', parameters('websisteName') ,'/config/publishingcredentials'), '2016-08-01').properties.publishingPassword))

Я пишу демо, чтобы проверить его на своей стороне, он работает правильно.

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "websisteName": {
      "type": "string"
    }
    },
    "resources": [],
    "outputs": {
      "base64Output": {
        "type": "string",
        "value": "[base64(concat(list(concat('Microsoft.Web/sites/', parameters('websisteName'),'/config/publishingcredentials'), '2016-08-01').properties.publishingUserName,':',list(concat('Microsoft.Web/sites/', parameters('websisteName') ,'/config/publishingcredentials'), '2016-08-01').properties.publishingPassword))]"
      }
    }
  }

введите здесь описание изображения

person Tom Sun - MSFT    schedule 18.05.2017
comment
Большое тебе спасибо! Ты сделал мой день :-) - person Francis; 18.05.2017