Как мне получить разные URL-адреса для каждой среды (local / dev / test / prod), используя регистрации приложений Azure Oauth

#java #azure #oauth #azure-active-directory

#java #azure #oauth #azure-active-directory

Вопрос:

У меня есть веб-приложение Java Spring Boot, над развертыванием которого я работаю и использую Azure AD (Office365) в качестве пользовательского репозитория для Oauth. Приложение не будет развернуто в Azure. У меня есть приложение, работающее локально, для «URL домашней страницы» установлено значениеhttp://localhost:8080 . Он проходит проверку подлинности должным образом, и у меня нет проблем. Мой вопрос заключается в том, как мне сохранить настройки локального хостинга при регистрации приложения и добавить URL-адреса тестов или prod вместе с этим URL-адресом локального хостинга для локальной разработки при регистрации приложения Azure?

Я уже использовал материал Oauth от Google, и у него есть возможность использовать несколько URL-адресов для каждого приложения, решая эту проблему. Я понимаю, что можно выполнить регистрацию приложения для каждой среды, но это кажется чрезмерным. Я чего-то не вижу или я неправильно просматриваю эту конфигурацию? Просматривая документы, в них упоминается только один URL для этого.

Ответ №1:

Вы добавляете URL-адреса обратного вызова для каждой среды в разделе URL-адреса ответа. Это позволяет возвращать токены аутентификации по этим URL-адресам.

Затем в вашем приложении настройте redirect_uri параметр в качестве URL обратного вызова текущей среды.

URL домашней страницы AFAIK отображается на некоторых страницах, таких как портал «Мои приложения» (myapps.microsoft.com ), и имеет смысл, что если они хотят откуда-то ссылаться на ваше приложение, для этого разрешен только один URL. Если вы используете одну регистрацию, то это должен быть ваш рабочий URL. Вы также можете использовать отдельные регистрации для разных сред.

Комментарии:

1. Это работает, поскольку я установил обратный вызов для каждой среды. Протестированный localhost против узла 127.0.0.1 в URL. Мне не нужно было напрямую беспокоиться о redirect_uri в моем приложении, поскольку Spring Boot с Oauth2, похоже, по умолчанию соответствует текущей среде. Спасибо!