无法通过Nestjs使用护照外表策略读取Outlook个人资料

时间:2019-07-05 11:23:09

标签: passport.js nestjs

在范围为scope: ['openid', 'profile', 'offline_access']的范围内使用护照外表策略时始终会出现以下错误

在嵌套中间件中,

consumer.apply(authenticate('outlook', {
      session: false,
      accessType: 'offline',
      scope: ['openid', 'profile', 'offline_access'],
      callbackURL: `${callbackUrl}/auth/outlook/login/callback`,
    })).forRoutes(
      { path: '/auth/outlook/login', method: RequestMethod.GET },
      { path: '/auth/outlook/login/callback', method: RequestMethod.GET },
    )
  }
  

{“错误”:{“代码”:“ InvalidMsaTicket”,“消息”:“错误代码:   'PP_E_RPS_CERT_NOT_FOUND'。讯息:'内部错误:   spRPSTicket-> ProcessToken失败。通话失败   CRPSDataCryptImpl :: UnpackData:内部错误:无法解密数据。   :无法获取会话密钥。 RecipientId = 293577。 spCache-> GetCacheItem   返回错误。:证书名称:(空)。滑雪:   45237f1479435b9c4def8b7a1b36edb0105e0546 ...'“,” innerError“:{” requestId“:” 4ea03cf1-79f8-421f-a0eb-d5bc6560da6a“,” date“:” 2019-07-05T08:44:20“}}}

我在天蓝色的应用程序注册配置中错过了任何东西吗?

1 个答案:

答案 0 :(得分:0)

您是否在主要功能中设置passport.use(new OutlookStrategy({}))并提供了clientID和clientSecret?