繁体   English   中英

Azure Web Service到Azure Web Service身份验证请求

[英]Azure web service to Azure web service authenticated requests

我有一个基于Azure的.NET Core Web API应用程序,我想与基于Azure的MVC5应用程序进行通信。 MVC5应用程序要求其客户端在我们的Azure AD实例中具有凭据。 我们使用我们的SSO Azure AD凭据连接到此应用程序。

在.NET核心应用并不对Azure的身份验证; 它的消费者无法进行凭证传递。 但是...它托管在同一个Azure实例中,因此看起来我应该能够相对轻松地将来自Web api的身份验证请求发送到MVC应用。

但是,关于此的文档非常混乱。 谈论x.509证书(这似乎没有必要),OAuth 2.0授权和流程(我可能无法解决,我不知道)...但是有一些简单,相对“在没有建立某种复杂的脚手架和/或配置的情况下,使一项服务与另一项服务安全地进行对话的方式? 我有点希望有一种方法可以实例化HttpClientWebRequest ,调用某种方法以获取正确的Authorization标头(或cookie?),并以一种愉快的方式发送我的请求...但是,如果存在,它仍然存在使我难以捉摸。

对此,任何澄清都将有所帮助。

这种依赖。 首先,要明确一点,您是否正在尝试从API应用程序在MVC应用程序中调用操作? 这似乎有些奇怪(通常,MVC前端可能需要调用api)。 无论如何,它应该仍然相同。

问题:您是否希望api应用程序始终将MVC应用程序称为“自身”? 因此,您的api应用程序将具有被授权在您的MVC应用程序上调用操作的身份? 如果是这样,这正是OAuth客户端凭据流的用途:

https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-protocols-oauth-service-to-service

通过此流程,您可以创建代表您的API应用程序的Azure AD应用程序注册。 然后,在运行时,您的API应用程序将使用其客户端ID和客户端密钥来获取可用于调用MVC应用程序的令牌(通常作为授权令牌中的承载令牌传递)。 您可以通过应用程序注册的一部分来为其委派访问MVC应用程序的权限,但是您还可以管理要允许MVC应用程序访问的“客户端”。

希望这是有道理的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM