Okta JWT验证程序无法验证assertClaims的组

时间:2019-09-27 18:14:29

标签: reactjs access-token okta

我有一个SPA,它正在使用隐式流来获取access_token。在后端API上,access_token验证工作正常,但是,当我在assertClaims中包含groups.includes时,出现401错误。我已经从Okta开发者控制台将该用户添加到了这个新组中。 enter image description here

我的代码段:

 oktaJwtVerifier.verifyAccessToken(accessToken)
    .then((jwt) => {
      req.jwt = jwt;
      next();
    })
    .catch((err) => {
      res.status(401).send(err.message);
    });

如果assertClaims包含组,则不起作用:

const oktaJwtVerifier = new OktaJwtVerifier({
      clientId: 'some_SPA_clientId',
      issuer: 'https://dev-123456.okta.com/oauth2/default',
      assertClaims: {
        'groups.includes': ['TestAnotherGroup'],
        aud: 'api://default',
        cid: 'some_SPA_clientId'
      },
      testing: true
    });

如果我在assertClaims中删除groups.includes,它可以正常工作,并且可以使用同一用户访问API。

使用此方法:

assertClaims: {
    aud: 'api://default',
    cid: 'some_SPA_clientId'
  }

仅当用户属于某个组时,如何才能允许访问API。

0 个答案:

没有答案