我有一个使用asp.net core编写的Web API。该API将用于与AAD注册的几个其他服务通信,这些服务都可以使用不同的技术实现,如使用asp.net core编写的MVC应用程序或使用Vue.JS编写的单页应用程序。后者会导致问题,因为SPA不会由应用程序Web服务器运行,而是类似于nginx或apache,因此无法使用客户端密钥。
我已为我的应用程序添加了API权限。
我该如何实现呢?我目前正在从客户端应用程序向API发送使用Authorization:Bearer access_token
标头的访问令牌,但由于客户端应用程序和API不是AAD中的同一应用程序,因此会出现问题。
这就是我尝试实现的流程:
所有请求的应用程序都需要登录到AAD,并在从API请求数据时发送JWT令牌,然后应验证令牌并将所请求的资源返回给客户端应用程序。