当前位置: 首页 > 知识库问答 >
问题:

使用VueJS SPA和Vuex的Passport-azure-ad与OAuth 2.0授权代码流(带有PKCE

凌展
2023-03-14

我一直在研究适合我需要的最佳模式。下面是我目前正在运行的内容。https://docs.microsoft.com/en-us/azure/active-directory/develop/sample-v2-code

    null
    null
    null

在阅读了PKE之后,它有点不同我相信MSAL 2.0-https://docs.microsoft.com/en-us/Azure/active-directory/develope/scenario-spa-overview

MSAL2.0对用户进行身份验证并获得一个令牌,然后将该令牌发送到API并不时刷新。这似乎是一个不同于passport的策略,它似乎更干净一些,而且我似乎可以在没有中间件服务器(express)的情况下实现它,只需要使用VueJS和Vuex。

  • 使用VueJS、vuex和Axios可能更容易实现
  • 可能不需要实现快速服务器(中间件服务器)
    null

共有1个答案

荀学文
2023-03-14

我不确定您想要完成什么,但如果您只想登录(验证)您的用户,您可以限制自己获得一个id令牌。如果您想要访问受保护的资源(像MS Graph这样的API,或者您自己使用express或其他东西),您将需要获得一个访问令牌。Azure AD B2C令牌始终是JWT,因此可以使用支持库(如MSAL、passport-azure-ad等)对其进行解码。

也就是说,MSAL主要用于客户端应用程序。passport-azure-ad主要由服务器(API)应用程序使用。如果您想构建自己的API,您将需要express和passport-azure-ad或类似的东西。

 类似资料:
  • 我们必须在我的客户项目中集成OAuth2.0授权代码授予。目前,该应用程序使用本地登录页面。我们需要删除该页面,并将未登录的用户重定向到AS登录页面,。在AS end成功登录后,我们将被重定向到配置的。此时,我的客户端应用程序将如何知道用户已在AS登录?如何在客户端维护会话?另外,我需要用和访问令牌交换auth代码,并将其用于后续的服务器API调用。那么如何实现这一点并将令牌作为标头发送呢? 应用

  • 我想更好地理解隐式授权流和授权代码授权流之间的区别,因为我不确定我目前的理解是否正确。 隐式授权流主要由前端应用程序用于验证用户身份吗? 隐式授权流是否只需要一个client_id、用户名和密码来进行身份验证,换句话说,永远不会发送client_secret? 授权码只是一个短期令牌吗? 将授权码交换为访问令牌后,客户端可以访问用户帐户多长时间?具体地说,如果客户端是一个长时间运行的脚本,那么用户

  • 我能够获得此访问令牌,但是,当我试图获得刷新令牌时,我得到一个错误。 在这一刻,我正在测试这个使用邮递员。 我正在做以下工作: null null null null null

  • Q 1>这里我应该使用哪种策略? 2>什么时候我们应该使用一种策略而不是另一种策略?

  • 我的问题是:为什么这是流动?我想是出于安全原因,但我想不通。为什么实现是这样的,而不是在第一次调用(“/authorize”)之后立即获得访问令牌? 我们为什么需要这个代码?

  • 我正在使用Spotipy python库与Spotify web api进行交互。我已经研究过API和文档,但我没有看到一个清晰的示例来显示该库如何支持授权代码流(https://developer . Spotify . com/we b-API/Authorization-guide/# Authorization-code-flow)。