我在Agular2项目中使用ADAL库来针对Azure AD对用户进行身份验证,一旦用户通过身份验证调用WebAPI以使用REST调用获取某些信息。所有这些都适用于AngularJS-AzureAD-WebAPI场景。
关注MS文章创建示例项目https://blogs.msdn.microsoft.com/premier_developer/2017/04/26/using-adal-with-angular2
WebAPI从Angular2项目接收调用但请求具有匿名授权令牌。在进一步研究之后,意识到JWT缺少appid值以及aud属性保存了GUID,即应用程序ID。
工作电话JWT :( AngularJS到WebAPI)
appid :在Azure中注册的本机应用程序的GUID aud :someone.onmicrosoft.com/CortanaWebAPI
不工作致电JWT :( Angular2 to webAPI)
appid :此商家没有条目
aud :Azure中注册的本机应用程序的GUID
adal配置
const endpoints = {
“https://localhost:44383/”: “http://someone.onmicrosoft.com/CortanaWebAPI”
};
public get getAdalConfig(): any {
return {
tenant: ‘someone.onmicrosoft.com’,
clientId: ‘9d9cd8dd-087a-4e87-b3f9-6e7ded2b5e82’,
redirectUri: window.location.origin + ‘/’,
postLogoutRedirectUri: window.location.origin + ‘/’,
endpoints: endpoints
};
}

不确定为什么会发生这种情况,感谢任何帮助。