Azure AD应用程序中的knownClientApplications不起作用

时间:2019-08-21 07:51:54

标签: azure-active-directory msal

我在同意我的API时遇到问题。我的租户(客户端,API)中有2个应用程序。客户端应用程序是SPA并启用了隐式流,并且它调用了API,因此我将客户端应用程序的ID添加到了API应用程序中的knownClientApplications中。对于这两个应用程序,都启用了多租户。

但是,当我尝试从其他租户登录SPA时,仅要求获得客户应用程序同意,并得到一个错误,提示我我的API应用程序没有服务主体。

为了使它也隐式地同意API应用程序,应该配置什么?

我使用MSAL.js库和Azure AD 2.0。范围:https://mytenantname.onmicrosoft.com/myservicename/user_impersonation

1 个答案:

答案 0 :(得分:0)

要使SPA应用程序迅速同意并与您的API同意相结合,您的范围应为 Task act = Task.Run(async () => await App.DataService.UpdateItemAsync(CP, ToServer, "Contact_Party/EditContact_Party/" + CP.Id)); await act.ContinueWith(async (antecedent) => { foreach (var sam in specialty) { if (CP.Id > 0) { sam.Cntct_SEQ = CP.Id; } else { sam.Tmp_Cntct_SEQ = CP.Cntct_SEQ; } if (sam.Id == 0) { if (sam.Cntct_Spec_SEQ == 0) await App.DataService.CreateItemAsync(sam, ToServer, "Contact_Specialty/AddContact_Specialty"); else { await App.DataService.UpdateItemAsync(sam, ToServer, "Contact_Specialty/EditContact_Specialty/" + sam.Id); } } else { await App.DataService.UpdateItemAsync(sam, ToServer, "Contact_Specialty/EditContact_Specialty/" + sam.Id); } } }, TaskContinuationOptions.None);

您可以阅读有关./default scope here的信息。

如果您需要一个样本来阐明这个概念,我建议this one