我目前有两个应用服务
- Web App(Asp.net核心2 w /前端反应)
- Web Api(Asp.net core 2)
醇>
注意:两者都配置了不同的Azure活动目录应用程序ID。
- 用户登录Web App并为其自己的appId / ClientId / ClientSecret检索令牌,该令牌存储在tokencache中。
- 来自WebApp,用户想要与WebAPI交谈,但需要获得令牌,因为它也受到AAD的保护,但它是不同的应用ID /客户端ID /客户端密码。
醇>
问题:
当我尝试为web api执行AcquireTokenSilentAsync()时,我得到一个错误,即令牌不在缓存中?
似乎依赖于您是否使用AAD v2.0或v1.0将确定Web应用程序和Web API是否可以具有不同的应用程序ID。所以我似乎必须使用AAD v1.0。使用Asp.net核心2,我不清楚OpenIdConnect正在使用或配置使用的内容。
问题:
- 我不清楚为什么获取令牌无声异步无法正常工作并失败。这只是在缓存中查找令牌吗?否则它会失败?
- 是否可以从Web应用程序配置令牌以获得访问web api资源的权限。我注意到在azure门户网站中,您可以选择像microsoft graph这样的资源,但我不知道如何关联自定义API。在我的情况下,我想让它在我的本地机器上运行,然后再将它全部移动到azure。
- 如果网络应用令牌没有访问网络API的权限,我是否需要与用户进行其他登录身份验证,即使您都在同一个租户中?
醇>
任何建议表示赞赏,
德里克