oauth-2.0 来自移动的应用程序NativeScript Vue的身份验证

8fsztsew  于 2022-10-31  发布在  其他
关注(0)|答案(1)|浏览(190)

我正在用NativeScript & Vue(Ts)开发一个移动的应用程序,我在质疑自己!
我必须为移动的应用开发登录页面和登录过程,我真的不知道哪个选择更好。我需要在“我的应用”和“我的网站”之间进行沟通,这两者的目的完全相同。另外,我希望我的用户在第一次登录应用后保持登录状态。

  • 我开始考虑通过开发一个REST API(API平台+ Symfony + JWT令牌)给予访问我网站上的数据。
  • 现在,我想到使用OAuth2进行交换(获取令牌、获取刷新令牌等)。
  • 现在我想知道我是否应该发送一个HTTPS POST请求并自己生成令牌?

以前有人这么做过吗?
你有什么建议吗?
另外,在我的情况下,哪种流程更好:隐式授权还是密码授权?
谢谢你!

chhkpiq4

chhkpiq41#

我强烈推荐Firebase身份验证。在Nativescript中有对Firebase身份验证的核心支持,可以在这里找到:https://docs.nativescript.org/plugins/firebase-auth.html#authentication
设置非常简单:

import { firebase } from '@nativescript/firebase-core'
import '@nativescript/firebase-auth' // only needs to be imported 1x

const auth = firebase().auth()

登录示例:

firebase.firebase
.login({ type: firebase.firebase.LoginType.GOOGLE })
.then(() => {
    this.loadUser();
});

从那里,我将使用Firebase权限来处理用户权限,这有点超出了本问题的范围,但我个人使用自定义声明来处理不同的权限级别(https://firebase.google.com/docs/auth/admin/custom-claims)。

相关问题