Если он работает на локальном хосте, но не как опубликованное приложение, вполне вероятно, что у вас есть ссылка на локальный хост где-то в настройках вашего web.config / app или при регистрации вашего приложения. Как вы упомянули, вы должны убедиться, что URL-адреса вашего ответа в вашем коде и в вашей регистрации указывают на URL опубликованного вами приложения, а не на localhost. Убедитесь, что идентификатор клиента в вашем приложении совпадает с идентификатором приложения в Azure, и убедитесь, что идентификатор клиента в вашем коде совпадает с идентификатором клиента, в котором развернуто приложение.
Также убедитесь, что вы выполняете правильный процесс публикации приложения в Azure, и что Azure AD не создает новое приложение для вашего экземпляра. https://docs.microsoft.com/en-us/visualstudio/deployment/quickstart-deploy-to-azure?view=vs-2017
Если все эти настройки верны, попробуйте включить ведение журнала веб-сервера в разделе «Функции платформы»> «Журналы диагностики» и проверить информацию в журналах.
РЕДАКТИРОВАТЬ: Я перечитал, и мне неясно, происходит ли ваша несанкционированная ошибка при публикации или при входе в систему. Если это происходит при входе в систему, убедитесь, что ваш пользователь добавлен в клиент AAD и получил разрешение на приложение.