访问Azure Key Vault机密可以在服务器盒上使用,但不能在本地使用吗?

时间:2019-01-23 17:20:37

标签: visual-studio-2012 azure-keyvault

Azure即时在资源组中有一个密钥保管库。

我们在美国(ME)有一个用户,在另一个国家(FU)有一个用户。

两者的使用有很多共同点,即:

使用相同版本的VS 2017。 运行完全相同的代码。 我们的VS用户帐户是相同的(Azure AD实例中的用户)。

我们正在使用托管身份

如果我在美国运行代码(在VS中以FU身份登录),则可以读取密码并在屏幕上显示。

如果FU(以FU身份登录VS,但在另一个国家/地区登录),则当他运行代码时会引发以下异常

操作返回了无效的状态码“ 未授权

引发错误的代码行是:

var secret = await keyVaultClient.GetSecretAsync("https://XXXXXXX.vault.azure.net/secrets/username")
                    .ConfigureAwait(false);

我们都已经安装了Azure CLI 2.0。

但是,我在site上找到了这些规定。

您的本地活动目录已与Azure AD同步。

您正在加入域的计算机上运行此代码。

在我们的情况下,这些都不是正确的。

可能对我们的供应商进行了很好的测试,以便我们允许我远程进入他的计算机并将我的身份放在VS上,然后运行代码。

如果仍然出现错误,则很有可能是我们的问题。

上面的链接说我们可以“ Run the application using a service principal in local development environment

能解决这个问题吗?

我对Azure和C#相当陌生。任何帮助将不胜感激!

0 个答案:

没有答案