【发布时间】:2021-03-23 18:14:53
【问题描述】:
情况如下:我在公司的 azure Active Directory 中有一个帐户,有多个订阅。我正在为客户端构建一个 ASP.NET Framework 应用程序。此应用程序将托管在他们自己的天蓝色环境中,因此为了进行设置,他们将我的电子邮件地址添加到他们的天蓝色活动目录中。现在,在 azure 门户中,我可以使用“更改活动目录”按钮来查看我公司或客户的资源。
我在客户端的 azure 环境中设置了一个 keyvault,并使用 these instructions 将 keyvault 作为连接服务添加到我的应用程序中。我的应用程序在本地 IIS 中本地运行,因此我将应用程序池设置为使用我的用户帐户,以便它可以访问我的 azure 订阅。
这里的问题是,当我尝试运行应用程序时仍然出现错误。 ysod 说 azure 在尝试访问密钥库时会给出 401 响应。我看到它正在尝试使用与我公司的天蓝色活动目录关联的 guid(我不知道这个 guid 的名称是什么)。显然,我无法使用我公司的 azure 活动目录从客户的 azure 环境访问资源。 作为获得更多信息的尝试,我构建了一个小型控制台应用程序并使用相同的过程将 keyvault 添加为连接的服务,因为互联网上说控制台应用程序提供了比 ASP.NET 应用程序更多的细节。但是,当我运行我的控制台应用程序时,我根本没有收到任何错误,而且我可以正常访问我的客户端的密钥库。
这让我相信我的用户帐户或 IIS 中有一些设置需要更改才能使其正常工作,但我找不到它是什么。
如何让在 IIS 中本地运行的 ASP.NET Framework 应用程序在客户端的 Azure 环境中访问密钥库作为连接服务?
【问题讨论】: