我正在尝试使用 amanaged-identity
对 Azure 进行身份验证并从云terraform
中的虚拟机运行。AzureUSGovernment
我已按照此处找到的指南将 terraform 配置为使用managed-identity
.
但是,每当我运行terraform apply/plan
等时,我都会看到以下错误:
│ Error: Unable to list provider registration status, it is possible that this is due to invalid credentials or the service principal does not have permission to use the Resource Manager API, Azure error: resources.ProvidersClient#List: Failure responding to request: StatusCode=404 -- Original Error: autorest/azure: Service returned an error. Status=404 Code="SubscriptionNotFound" Message="The subscription 'xxxxxxxxx-xxxx-xxxxx-xxxxx-xxxxxxxxxxx' could not be found."
(xxxxxxxxx-xxxx-xxxxx-xxxxx-xxxxxxxxxxx 是我在编辑订阅 ID)
以下是我的配置片段和我的引导工作流程/过程:
- 创建具有托管标识的虚拟机,为其分配
Owner
角色(仅用于测试目的) - 跑
az cloud set -n AzureUSGovernment
- 跑
az login --identity
- 运行地形代码。
其他需要注意的重要事项:
- 完全相同的配置/过程在 Azure Commercial 中运行良好。
- 从 VM运行
az
命令工作正常(我有 RBAC 权限在帐户中执行操作) - 这是我的
provider.tf
:
provider "azurerm" {
features {}
use_msi = true
subscription_id = "MYSUB-ID"
tenant_id = "MYTENANT-ID"
}
任何帮助都非常感谢!谢谢!