当前位置: 首页 > 知识库问答 >
问题:

无法在Azure上使用MSI和AKS

长孙阳成
2023-03-14

我有一个k8s集群在Azure使用AKS预览。

curl http://localhost:50342/oauth2/token --data "resource=https://vault.azure.net" -H Metadata:true

Microsoft.azure.services.appauthentication.azureserviceTokenProviderException:参数:ConnectionString:[未指定连接字符串],资源:https://vault.azure.net,权限:https://login.windows.net/9D93C307-6856-4BAB-8FA9-99690E0FABAF。异常消息:尝试了以下3种方法来获取访问令牌,但都不起作用。参数:ConnectionString:[未指定连接字符串],资源:https://vault.azure.net,权限:https://login.windows.net/9D93C307-6856-4BAB-8FA9-99690E0FABAF。异常消息:试图使用托管服务标识获取令牌。无法连接到托管服务标识(MSI)终结点。请检查您正在运行的Azure资源上安装了MSI。参数:ConnectionString:[未指定连接字符串],资源:https://vault.azure.net,权限:https://login.windows.net/9D93C307-6856-4BAB-8FA9-99690E0FABAF。异常消息:试图使用Visual Studio获取令牌。无法获取访问令牌。未设置环境变量LOCALAPPDATA。参数:ConnectionString:[未指定连接字符串],资源:https://vault.azure.net,权限:https://login.windows.net/9D93C307-6856-4BAB-8FA9-99690E0FABAF。异常消息:试图使用Azure CLI获取令牌。无法获取访问令牌。/bin/bash:az:没有这样的文件或目录```

有没有人能够使用类似的代码从吊舱中的KeyVault读取?

AzureServiceTokenProvider azureServiceTokenProvider = new 
AzureServiceTokenProvider();
KVC = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback));
var baseUrl = config.GetValue<string>("Azure:VaultURL");
var secretLocation = config.GetValue<string>("Azure:SecretLocation");
location = $"{baseUrl}{secretLocation}";
KVC.GetSecretAsync(location).Result.Value;

共有1个答案

史骏
2023-03-14

你熟悉AAD吊舱的身份吗?https://github.com/azure/aad-pod-identity。我们一直在企业环境和用户分配的身份中使用这一点,而不是MSI。

这种方法不能解决您的MSI问题,但它确实提供了一种替代方案,可以解决您的潜在问题。

 类似资料:
  • 由于我是Azure的新手,这个问题可能很傻。我正在尝试构建一个提供和管理虚拟机集群的服务。出于安全考虑,我不想在每个集群上放一些敏感数据。因此我决定为每个集群提供一个Azure密钥库来存储这些数据,并创建一个MSI(managed identity)并分派给集群的每个节点,这样vm就可以访问密钥库来获取机密。 在服务端,我需要提供vms、密钥库和MSI。将MSI分配给每个VM,同时授予MSI访问A

  • 问题内容: 我正在开发一个自定义相机应用程序,该应用程序可以捕获图片并将其存储在图库中。当我使用Intent.ACTION_SEND共享该图像时,除具有 API26(即OREO)的 设备外,它在所有设备上都可以正常工作 。 我分享图片的代码是: 谁能帮我解决这个问题? 问题答案: 如果大于 24,则使用FileProvider授予访问权限。 创建一个XML文件(路径:) 添加 提供商*在Andro

  • 问题内容: 我有一个表格: 和一个函数PrepareOrder 问题是在新的ipad(Safari)上未调用操作。在桌面浏览器上,它可以正常工作。控制台中没有错误。我尝试在之后添加警报: 像那样: 并且还给我。为什么?如果不调用。我还将日志记录添加到操作中,并且没有输出字符串。 问题答案: Safari和/或Ipad支持非常强大的缓存。我的应用程序中也遇到了同样的问题。尝试向您的控制器(甚至基本控

  • 我安装了一个新的并下载了最新的Maven。在中: :我选择了刚下载的Maven :我选择了 此外,当我打开该项目的时,它在带有的行中显示: 似乎有一个错误: 在此行找到多个批注:

  • 我是 azure databricks 的新手。我已经在scala中编写了一个示例火花程序,通过下面的查询加载到azure sql中。我收到错误 。有人可以帮我这个 错误消息---- com.microsoft.sqlserver.jdbc.SQLServerException:与主机b63da5ce2d2d.tr27.northeurope1-a.worker.database.windows.

  • 我刚刚将服务器从JBoss 7.1升级到WildFly 8。在进行了大量迁移工作之后,除了docx4j之外,其他一切都正常工作。我总是会遇到以下例外情况。有人有主意吗? 我现在尝试的是: 将docx4j更新至最新版本 但以上都不起作用。我仍然会犯同样的错误。