【问题标题】:How to authenticate multiple api using Nuxt and nuxt-auth module如何使用 Nuxt 和 nuxt-auth 模块验证多个 api
【发布时间】:2021-04-15 20:22:09
【问题描述】:

到目前为止,我有一个带有本地身份验证的应用程序(使用 nuxt-auth 的 nuxt js)(稍后我想添加 git 和 google auth)。

现在我需要添加身份验证来调用其他服务/API(如 google cloud rest API、支付系统、youtube API 等...)

问题是:用户只经过一次身份验证(在登录应用程序期间)。但是这些第 3 方 API 中的每一个都有自己的身份验证。

如何实现多重身份验证。 (我整天阅读文档和谷歌,但没有明确的答案)。

【问题讨论】:

  • 它带来了一些清晰度,但现在甚至是一个更大的问题:-)。我选择 nuxtjs 的原因之一(不要误会,我真的很喜欢这个框架)是身份验证模块。我确定我错过了一些东西,也许你可以澄清一下。大多数生产应用程序都需要对多个 API 进行身份验证——至少你有实际的登录和支付系统。为什么我只能使用一种身份验证 API(例如 git 或 google)。如果我需要集成支付,我会遇到困难并需要使用 OAuth 等商业解决方案?
  • 由于文本长度限制,我已经在自己的回答中回答了您的问题。
  • Kissu,非常感谢您提供如此详细的答案。
  • 如果您没有找到更好的答案,请接受我的。如果它弹出,你总是可以接受一个更好的!
  • 当然,如何接受答案。我是 StackOverflow 的新手。

标签: authentication jwt nuxt.js nuxt-auth


【解决方案1】:

截至今天,它似乎不可行(此模块需要人员):https://github.com/nuxt-community/auth-module/issues/889

因此,您需要自己手动插入 API。

回答你最新的问题~评论

Nuxt 的一些模块确实不错(但你可以完全不喜欢它,没问题 :D)。

首先你需要知道的是,这个项目(nuxt-auth)不是最大的,@pooya正在尽力而为,但他在做很多项目,所以他不能付出所有的爱给它。然后,您还需要了解它运行良好,但仍处于良好的 beta 状态,缺少许多功能、需要的文档和许多小东西,使其成为一个全面的、坚实的一流解决方案。

这并不意味着你不应该使用它,我只是说这个模块确实有一些限制。因此,它并没有以清晰 + 简单 + 灵活的方式支持大量 OAuth 解决方案。未来的更新中可能会引入一些重大更改。

该模块旨在使用 OAuth 解决方案来阻止其背后的网站内容(在我看来)。这意味着您通常会使用单一登录解决方案,然后就可以访问您的应用程序。我不认为这是一个可行的多 OAuth 解决方案(目前)。

有些服务甚至不需要使用这样的解决方案。例如,Stripe 不应该在前端处理,而是与后端进行通信以获取敏感变量,并通过 Stripe Elements 发送最少的信息。

也就是说,最常见的解决方案是 JWT 或 OAuth2,您完全可以拥有像 Okta、Auth0 或类似的后端服务或服务,通过允许简单登录到提供商(Github、Google 等... )。

总而言之,感谢nuxt-auth,您确实连接到了这个后端/服务,服务本身进行了提供者连接,您可以两全其美,同时仍然通过您的初始nuxt-auth 条目以安全的方式连接点登录。

或者您可以尝试在 Discord 上联系社区,看看是否有人知道如何操作。或者甚至尝试阅读源代码,看看它目前是否可行。

这是我的 2cts。

【讨论】:

  • 能否给我举个例子来说明如何实现插件API。
  • 如果你想在每个网站上实现它,你基本上可以开始搜索像twitter Oauth vuejs 这样的东西。您也可以查看0authFirebase。这完全取决于您要实现哪些工具、您对这些工具的了解、是否有任何后端等等。一个基本的 npm 包可能也足够了。而且...我不确定您的团队是否需要所有这些,所以也许可以考虑列出优先级以查看首先发生的事情(以及是否需要所有这些 Oauth)。
猜你喜欢
  • 1970-01-01
  • 2018-09-30
  • 2021-02-01
  • 2021-08-07
  • 2021-01-23
  • 2019-05-10
  • 2021-07-22
  • 2021-08-26
  • 2019-02-21
相关资源
最近更新 更多