我有三个应用参与 Azure AD OBO 流
- Angular FrontEnd 在 AzureAD 中注册为 Web 应用程序。为此注册启用了访问令牌和 ID 令牌复选框。
- 使用 ASP.NET Core 开发的 WebAPI1。它在 AzureAD 中注册为启用了 ID 令牌的 Web 应用程序,并且清单中的“已知客户端应用程序”字段指向 Angular FrontEnd ClientId。还为此 Web API1 设置了客户端密码
- NAV OData WebServices 注册为 Web 应用程序。它在 AzureAD 中注册为启用了 ID 令牌的 Web 应用程序。
权限:
WebAPI1 和 NAV OData 服务都使用 Azure 门户中的公开 API 选项公开为 API。
Angular FrontEnd 有权访问 Web API1
WebAPI1 有权访问 NAV OData 服务。
收到的令牌 1 来自 AzureAD,然后用于访问 Web API1。现在,当 Web API1 尝试与 NAV OData 服务交互时,将使用另一个令牌 2。在 WebAPI1 和 NAV OData 服务之间通信的最后阶段,我收到一个错误:
NAV 错误:用户 ID 和密码无效。请使用状态码重试:401 Unauthorized。
在整个设置中,我需要了解以下内容:
包括 NAV OData 服务在内的所有应用的注册是否正确。
我应该将 NAV OData 服务注册为基于 SAML 的应用程序吗?
参考链接:
任何人都可以帮助我提供他们的指导来解决这个问题。