如何模拟服务的用户令牌服务调用

我的应用程序结构是Web应用程序调用一个WebAPI(让我们称之为apiA),并调用另一个API(让我们称之为apiB)。 现在,Web应用程序通过AAD JWT令牌对呼叫进行身份validation。 所以,这个标记将为apiA创build。 但我想api调用apiB作为login用户,并不想使用客户端的秘密等

所以,简而言之,就是要模拟用户,并从为apiA创build的令牌获取apiB的标记,或者可能有一个令牌,这对apiA和apiB都有好处。 所以,我不必得到一个新的令牌。

有没有办法做到这一点?

您可以尝试使用OAuth 2.0 On-Behalf-Of-flow来委派用户身份并向第二层Web API进行身份validation。 请参考文件 :

对于服务器应用程序需要调用Web API的场景,使用示例很有帮助。 假设用户已经在本地应用程序上进行了身份validation,并且此本机应用程序需要调用Web API。 Azure AD发出一个JWT访问令牌来调用Web API。 如果Web API需要调用另一个下游Web API,则可以使用代表stream来委派用户的身份并向第二层Web API进行身份validation。

在这里输入图像说明

请点击此处 ,了解更多有关在代表stream程中使用委托用户身份进行服务呼叫的详细信息。