小编Las*_*klu的帖子

提供范围“离线访问”时,msal-node 中没有刷新令牌

我希望你能帮助我:我目前开发了一个应用程序,需要访问用户日历(outlook-calendar)来查找免费会议时段(其他用户将能够看到并选择其中一个免费时段 - 类似于calendly) 。为此,我使用msal-node进行身份验证azureAD。但我的用例需要“每次”——所有用户都可以访问日历。这就是为什么我想获得一个refresh_token。文档msal-node说我应该offline_scope在执行 OAuth 过程时提供获取刷新令牌。我的问题是我收到了 access_token 和 id_token 等,但没有刷新令牌。Azure 响应进一步显示了成功的答案,但是当我查看返回的范围时,我找不到offline_scope. 您可以在此处查看返回的范围

我应该怎么办?

我使用 cofidentalClientApplication msal-node 实例:

  const oauth2Client = MicrosoftClient.Connection
  const authCodeUrlParameters = {
    scopes: ["offline_access", "user.read"],
    forceRefresh: true,
    redirectUri: "http://localhost:3000/outlookRedirect",
  }
  try {
    console.log("GDFHGJF")
    return oauth2Client.getAuthCodeUrl(authCodeUrlParameters)
  }
Run Code Online (Sandbox Code Playgroud)

从 Azure 收到代码后,我通过以下方式处理它:

  const oauth2Client = MicrosoftClient.Connection
  const tokenRequest = {
    code: code,
    scopes: ["user.read", "offline_access"],
    forceRefresh: true,
    redirectUri: "http://localhost:3000/outlookRedirect",
    //client_secret: process.env.MICROSOFTCLIENTSECRET,
  }
  const testus = await oauth2Client.acquireTokenByCode(tokenRequest)
  const …
Run Code Online (Sandbox Code Playgroud)

node.js oauth-2.0 azure-ad-msal msal.js

7
推荐指数
2
解决办法
5911
查看次数

标签 统计

azure-ad-msal ×1

msal.js ×1

node.js ×1

oauth-2.0 ×1