Ошибка обратного вызова EasyAuth веб-приложения Azure

У меня есть приложение ASP.NET MVC, работающее как Azure Web App.

Я использую предварительную аутентификацию /EasyAuth, и для 5 слотов развертывания она работает нормально. У каждого из них есть собственная регистрация приложения Azure AD.

Но рабочий сайт (не слот развертывания, корень приложения) выдает ошибку при входе в /.auth/login/aad/callback дорожка: ошибка предварительного вызова

Я сравнил манифест приложения Azure AD с работающим, и единственное отличие заключается в именах, описании и URL-адресах - как и ожидалось.

Использование Kudu для просмотра ошибки, кажется, происходит из EasyAuthModule:

1 ответ

Решение

Итак, в основном это была проблема с используемой регистрацией приложений, которые были созданы из другого слота развертывания.

Даже если Authentication / Authroization для веб-приложения, настроенного как Express, была выбрана правильная регистрация приложения - оказалось, что клиентский секрет не был передан из регистрации приложения в веб-приложение (в моем случае он имел неправильный ключ):

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

Ключ не отображается до тех пор, пока вы не сохраните его, и отображается только один раз. Скопируйте его и вставьте в поле ввода Client Secret веб-приложения.

После сохранения всех блейдов можно вернуться к экспресс-аутентификации. настройки и ключ останется.

Поскольку я не могу комментировать, я добавлю свой случай в качестве ответа более подробно, чем я хотел бы в комментарии.

У меня были точно такие же сообщения об ошибках от Easyauth в приложении ASP.NET MVC, работающем как веб-приложение службы приложений Azure.

Первоначальное сообщение об ошибке было просто "Невозможно отобразить страницу, потому что произошла внутренняя ошибка сервера". А через FTP и / или Visual Studio Server Explorer и / или Cloud Explorer я мог проверить страницу реальной ошибки после установки подробных сообщений об ошибках из журналов службы приложений. Эти ошибки были такими же, как и в случае с MartinHN при использовании Kudu.

Таким образом, в более подробном описании ошибки преимущественно показанная ошибка 500,74 изначально указала мне неверное направление (MFA). Но запрос URL (.auth/login/aad/callback), в котором сообщение об ошибке указывало, что произошла внутренняя ошибка сервера, привел меня к этому вопросу SO.

В моем случае, хотя у меня уже была выбрана расширенная конфигурация в проверке подлинности Active Directory служб приложений. И секретный ключ клиента был не просто неправильным. Оказалось, что срок действия секрета клиента истек. Но для меня это было неочевидно, поскольку у меня нет доступа к AAD. Мне пришлось связаться с отдельной командой AD, чтобы проверить секреты.

Таким образом, просроченный секрет клиента (ключи) также может вызвать ту же ошибку.

Другие вопросы по тегам