Flutter + Java Spring Boot + OAuth2 – как настроитьJAVA

Программисты JAVA общаются здесь
Anonymous
Flutter + Java Spring Boot + OAuth2 – как настроить

Сообщение Anonymous »

Я пытаюсь настроить новый проект, используя Flutter + Java Spring Boot + OAuth2.
(Я новичок во всех трех из них, но я делаю это, чтобы научиться, поэтому хочу использовать конкретно эти технологии, и я не хочу использовать стороннего поставщика аутентификации, такого как FireBase (не хочу, чтобы его в конечном итоге заблокировали)).
У меня много вопросов, поскольку Я не могу найти четкую документацию, но если кто-нибудь может указать на пример или руководство для этого сценария, это поможет.
Я здесь:
SpringBoot:
  • Java Spring Boot, с Spring-boot-starter-oauth2-client, веб-интерфейсом и т. д.
  • Код: Выделить всё

    @EnableWebSecurity
    для настройки SecurityFilterChain — для '/login' не требуется аутентификация
  • Код: Выделить всё

    LoginController
    сопоставление '/login'
  • Настройте учетную запись в консоли Google и добавьте ключи в файлы application.property для clientid и т. д.
Кажется, это работает – я вижу, что вход в систему в порядке (хотя я не могу понять, что произошло или что делать дальше).
Вот здесь это становится проблематично. Я не уверен, как Flutter должен подключаться к моему серверу для аутентификации, а также как получить токен и передать его на мой сервер.
Чего я не понимаю:
  • Как следует флаттерить доступ к Spring Boot? У меня был некоторый флаттер-код, который вызывает «oauth2/authorization/google», и я могу вернуть 200, но ответ, похоже, является веб-страницей Google.
  • Должен ли/должен ли идти вызов OAuth через мой сервер? Или Flutter напрямую обращается к Google?
  • Существует ли пакет flutter, который рекомендуется для решения этой проблемы, или, поскольку я не использую провайдера, мне нужно напрямую использовать http.get< /code> ?
  • Я полагаю, мне нужно получить токен, сохранить его во FlutterSecureStorage, а затем установить его в заголовке для любого вызова сервера?
    Должен ли я во время флаттера проверять каждый вызов, чтобы узнать, истек ли срок доступа?
Бонусный вопрос: приложение Flutter (Android/iOS/Web) для доступа к моему серверу, предположительно, мне нужно отключить CORS (@CrossOrigin) на стороне Java? Однако меня беспокоит безопасность.
Будем очень благодарны за любые указания!

Подробнее здесь: https://stackoverflow.com/questions/790 ... w-to-setup

Вернуться в «JAVA»