Azure AD B2C(NodeJS):具有有效令牌的请求发生未经授权的401错误

时间:2019-02-26 04:36:22

标签: node.js azure azure-active-directory azure-ad-b2c

我正在使用Azure AD B2C对我的NodeJS API进行身份验证。但是,我不断收到Azure AD B2C的401未经授权错误。当我将Notification添加到我的AAD身份验证选项时,我没有收到401未经授权的错误,我的API正常工作。但是,一旦删除了ignoreExpiration,就会收到401未经授权的错误。

我什至生成了一个新令牌,通过使用https://jwt.io/解码令牌来验证它是有效的(并且没有过期)。我什至确保它具有正确的范围。

该API目前正在我的计算机上运行,​​因为我正在使用POSTMAN对其进行测试。有人可以帮忙吗?这是我的AAD选项的样子:

ignoreExpiration: true

1 个答案:

答案 0 :(得分:1)

我尝试了以下选项,对我有用。

var options = {
    identityMetadata: "https://login.microsoftonline.com/" + tenantID + "/v2.0/.well-known/openid-configuration/",
    clientID: clientID,
    policyName: policyName,
    isB2C: true,
    validateIssuer: true,
    loggingLevel: 'info',
    passReqToCallback: false
};

您也可以通过观众。 下面提到了我用于测试的存储库-

https://github.com/Azure-Samples/active-directory-b2c-javascript-nodejs-webapi/blob/master/index.js

注意:-我使用的是AD B2C用户流,而不是自定义策略。

能否请您试试看是否有效。

希望有帮助。