带有REST后端Springboot的Flutter

时间:2019-10-17 18:39:46

标签: rest spring-boot flutter spring-security-oauth2

我正在开发具有 Spring Boot后端 Flutter移动应用程序。我想使用三种类型的登录方法(1)。用户名和密码(2)。 Facebook (3)。谷歌。

我有以下问题

1)如果我通过Firebase身份验证处理了移动应用中的身份验证部分(并将所有用户存储在Firebase上),我是否需要在我的 Spring Boot < / strong>?还是我只需要在Sprin Bboot一侧保留身份验证?

2)我想要所有身份验证系统(Facebook,Google和用户名和密码)的JWT令牌。该移动应用程序将针对其向Springboot应用程序发出的每个请求发送JWT令牌。

3)我正在寻找循序渐进的教程,该教程显示了如何在Springboot REST API中集成所有这些登录方法。我看了很多,但所有的东西都有一些不同的方法或依赖项。就像有些人在Maven中添加 Facebook 依赖关系,而有些人仅添加 Oauth2

提前谢谢

1 个答案:

答案 0 :(得分:1)

您可以通过在 Spring Boot 应用程序中定义自定义安全过滤器,使用 JWT 将 Spring Boot 后端与外部身份验证提供程序集成。此过滤器将读取 JWT 颁发者 (iss) 并定义它来自何处(Facebook 或 Google)。然后,根据提供者,使用相应的公钥来验证JWT中包含的签名(通常,您可以使用认证提供者提供的JWKS URI来获取密钥)。如果一切顺利,则身份验证成功。