Параметры аутентификации веб-приложения ARM Template не работают - PullRequest
0 голосов
/ 29 января 2019

Я работаю над настройкой параметров аутентификации на своем сайте для использования поставщика AAD.Большая часть шаблона соблюдается.Однако unauthenticatedClientAction и allowedAudiences назначаются неправильно.Я наблюдаю «разрешить анонимно» и не назначать «разрешенные аудитории».

Вот мой шаблонный сегмент для этих настроек.Он вложен в ресурсы в шаблоне моего веб-сайта.

root> Microsoft.Web / Site> Resources

{
    "type": "config",
    "name": "web",
    "apiVersion": "2016-08-01",
    "location": "[parameters('app-location')]",
    "dependsOn": [
        "[resourceId('Microsoft.Web/sites', variables('web-site-name'))]"
    ],
    "properties": {
        "siteAuthEnabled": true,
        "siteAuthSettings": {
            "enabled": true,
            "unauthenticatedClientAction": "RedirectToLoginPage",
            "tokenStoreEnabled": true,
            "defaultProvider": "AzureActiveDirectory",
            "clientId": "[parameters('web-aad-client-id')]",
            "issuer": "[concat('https://sts.windows.net/', parameters('web-aad-tenant'))]",
            "allowedAudiences": [
                "[concat('https://', variables('web-site-name'), '.azurewebsites.net')]"
            ]
        }
    }
}
  • Проверка шаблона
  • Развертывание не приводит к выводуошибки

Проблемы:

  1. unauthenticatedClientAction назначено разрешить анонимно не RedirectToLoginPage
  2. allowedAudiences не назначено ни одному сайту

Что может быть причиной этих проблем?Что я мог пропустить?

1 Ответ

0 голосов
/ 06 февраля 2019

Я получил ответ после работы с хорошими людьми из службы поддержки Azure.

Этот подресурс больше не является допустимым решением, хотя конечная точка может все еще распознавать некоторые из его полей, но это устарело.

Новое решение заключается в добавлении объекта siteAuthSettings в основные свойства «Microsoft.Web / site», и siteAuthEnabled больше не требуется, поскольку siteAuthSettings.enable дублирует эту функцию.

Обновлен шаблон ARM (для краткости удалены другие настройки)

{
    "name": "[variables('app-service-name')]",
    "type": "Microsoft.Web/sites",
    "location": "[parameters('app-location')]",
    "apiVersion": "2016-08-01",
    "dependsOn": [
        "[variables('app-plan-name')]"
    ],
    "properties": {
        //... other app service settings
        "siteAuthSettings": {
            "enabled": true,
            "unauthenticatedClientAction": "RedirectToLoginPage",
            "tokenStoreEnabled": true,
            "defaultProvider": "AzureActiveDirectory",
            "clientId": "[parameters('web-aad-client-id')]",
            "issuer": "[concat('https://sts.windows.net/', parameters('web-aad-tenant'))]",
            "allowedAudiences": [
                "[concat('https://', variables('web-site-name'), '.azurewebsites.net')]"
            ]
        }
    }
}
...