我们的客户希望我们实现一个受信任的子系统设计,这意味着他们拥有自己的 Azure AD(客户端 AD)来授权用户使用前端。并要求我们使用自己的 Azure AD (Dev AD) 来授权前端到后端。我们管理来自客户端 AD 的授权流程(使用 angular-msal 库)并且没有问题。我们得到一个访问令牌并授权到前端。但是然后我需要使用client_secret和application_id从(Dev AD)请求另一个访问令牌而无需用户交互(客户端凭据流). 能够调用安全 API(我们的后端)。这就是我的后端人员建议的方式。所以在那之后,他们可以在后端验证第二个 access_token 并将安全数据提供回客户端。我的问题是:这是使用client_secret和application_id从 Angular 应用程序获取访问令牌的正确且安全的方式吗?至少当我尝试时,我遇到了 CORS 问题。一位客户还添加了以下我不明白的描述。如果它有助于理解问题:
使用 MSAL 库时,可以在请求令牌时将身份提供程序 (Azure AD) 作为参数提供