Android 安全和 RESTFUL 服务器 Google Auth (Firebase)
Android security and RESTFUL server with Google Auth (Firebase)
我有一个 Android 应用程序,登录使用 google 帐户使用 Firebase。当我启动 Android 应用程序时,Firebase return 是一个包含用户信息的令牌。我将该令牌发送到我的服务器进行验证。在令牌中有一个日期和一个到期日期(1 小时)。
客户端 -> Android
服务器 -> RESTFUL PHP
从这里我不知道什么是安全的或最安全的沟通方式:
1st - 在从客户端到服务器的每个 https 请求中发送 Firebase 令牌,直到它过期。 (对于每个请求,我必须在 URL 中收集 Google 提供的 public 密钥来解码令牌)
2nd - 当我的服务器收到 Firebase 令牌时,它必须 return 客户端必须在每个 https 请求中向服务器发送一个新令牌(由服务器生成),直到它过期。
哪种方法好?我错了,还有其他更好的方法吗?
正确的选项是第二个
虽然您必须为每个请求查询 Google 来解码令牌,但真正的原因是服务器生成的令牌可能包含与应用程序相关的其他数据:权限、配置文件、或者我们感兴趣的任何东西。
在PHP jwt 服务器上生成令牌
composer 需要 firebase / php-jwt
我有一个 Android 应用程序,登录使用 google 帐户使用 Firebase。当我启动 Android 应用程序时,Firebase return 是一个包含用户信息的令牌。我将该令牌发送到我的服务器进行验证。在令牌中有一个日期和一个到期日期(1 小时)。
客户端 -> Android 服务器 -> RESTFUL PHP
从这里我不知道什么是安全的或最安全的沟通方式:
1st - 在从客户端到服务器的每个 https 请求中发送 Firebase 令牌,直到它过期。 (对于每个请求,我必须在 URL 中收集 Google 提供的 public 密钥来解码令牌)
2nd - 当我的服务器收到 Firebase 令牌时,它必须 return 客户端必须在每个 https 请求中向服务器发送一个新令牌(由服务器生成),直到它过期。
哪种方法好?我错了,还有其他更好的方法吗?
正确的选项是第二个
虽然您必须为每个请求查询 Google 来解码令牌,但真正的原因是服务器生成的令牌可能包含与应用程序相关的其他数据:权限、配置文件、或者我们感兴趣的任何东西。
在PHP jwt 服务器上生成令牌
composer 需要 firebase / php-jwt