[英]Azure AD B2C (NodeJS): Unauthorized 401 error for a request with a valid token
我正在使用Azure AD B2C对我的NodeJS API进行身份验证。 但是,我不断收到Azure AD B2C的401未经授权错误。 当我对我的AAD身份验证选项添加ignoreExpiration: true
,我没有收到401未经授权错误,并且我的API正常运行。 但是,一旦删除了ignoreExpiration,就会出现“ 401未经授权”错误。
我什至生成了一个新令牌,通过使用https://jwt.io/解码令牌来验证它是否有效(且未过期)。 我什至确保它具有正确的范围。
我正在使用POSTMAN测试该API时,该API现已在我的计算机上运行。 有人可以帮忙吗? 我的AAD选项如下所示:
var aad_auth_options = { identityMetadata: process.env.AADMetadataEndpoint, clientID: process.env.ClientId, audience: process.env.AADAudience, isB2C: true, validateIssuer: false, loggingLevel: 'info', passReqToCallback: false, policyName: process.env.PolicyName, // ignoreExpiration: true, //When uncommented, the authentication works as expected! loggingNoPII: false }
我尝试了以下选项,它对我有用。
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用户流,而不是自定义策略。
能否请您试试看是否可行。
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.