10

Есть ли простой способ интеграции Firebase Authentication с Spring Security (для службы REST)?Служба REST с использованием Spring Security и Firebase Authentication

Из того, что я прочитал, мне, вероятно, понадобится использовать токен JWT (полученный через Firebase), использовать его для аутентификации службы Spring и, наконец, проверить токен в службе через Firebase. Но я не могу найти (простую) документацию по использованию JWT с Spring Security.

Я также хотел бы предоставить конечную точку/auth/login, которая использует Basic Auth, а не JWT, чтобы я мог получить токен JWT через Firebase, используя учетные данные электронной почты и пароля. Но это означало бы включение Basic Auth на одной конечной точке службы и JWT Auth на всех остальных. Не уверен, что это возможно.

+0

Вы думаете использовать фильтр с предварительной проверкой? вы «доверяете» аутентификации, сделанной Firebase, а затем делегируете полномочия на весеннюю безопасность –

ответ

0

Короткий ответ: нет.

Долгий ответ: вы должны создать свой собственный JWT, независимо от Firebase. Когда вы получаете JWT от Firebase, проверьте его целостность. Затем создайте свои собственные, основываясь на данных в токене. Тогда вам нужно только адаптировать его к различным поставщикам OAuth. Таким образом, вы можете избежать круговых поездок в firebase по каждому запросу.

Для аутентификации пользователя по каждому запросу (без сохранения по времени) вы добавляете фильтр с наивысшим приоритетом. Из запроса http, который вы фильтруете, получите JWT и проверьте его целостность. Если все в порядке, установите аутентификацию в SecurityContextHolder.

Смежные вопросы