Terraform创建azure密钥库
我正在使用Terraform创建一个使用Terraform的KeyVault资源 密钥保管库策略需要参数对象\u id。我不知道从何处检索此值 这是我收到的错误:Terraform创建azure密钥库,terraform,azure-keyvault,terraform-provider-azure,Terraform,Azure Keyvault,Terraform Provider Azure,我正在使用Terraform创建一个使用Terraform的KeyVault资源 密钥保管库策略需要参数对象\u id。我不知道从何处检索此值 这是我收到的错误: Error: expected "object_id" to be a valid UUID, got on modules/keyvault/main.tf line 42, in resource "azurerm_key_vault_access_policy" "polic
Error: expected "object_id" to be a valid UUID, got
on modules/keyvault/main.tf line 42, in resource "azurerm_key_vault_access_policy" "policy":
42: resource "azurerm_key_vault_access_policy" "policy" {
keyvault的策略设置如下:
# Create an Azure Key Vault access policy
resource "azurerm_key_vault_access_policy" "policy" {
for_each = var.policies
key_vault_id = azurerm_key_vault.key-vault.id
tenant_id = lookup(each.value, "tenant_id")
object_id = lookup(each.value, "object_id")
key_permissions = lookup(each.value, "key_permissions")
secret_permissions = lookup(each.value, "secret_permissions")
certificate_permissions = lookup(each.value, "certificate_permissions")
storage_permissions = lookup(each.value, "storage_permissions")
}
我正在使用terraform版本0.12和azure provider 2.35。您应该能够获取对象id。如果您只是在玩游戏,您可以硬编码它。如果您正在部署CI,您可能需要考虑将此设置为变量,并为属于的组创建第二个策略。否则,您将根据运行程序翻转策略上的对象id,并可能产生不良影响
provider "azurerm" {
features {}
}
data "azurerm_client_config" "current" {
}
output "object_id" {
value = data.azurerm_client_config.current.object_id
}
您应该能够获取对象id。如果您只是在玩,您可以硬编码它。如果您正在部署CI,您可能需要考虑将此设置为变量,并为属于的组创建第二个策略。否则,您将根据运行程序翻转策略上的对象id,并可能产生不良影响
provider "azurerm" {
features {}
}
data "azurerm_client_config" "current" {
}
output "object_id" {
value = data.azurerm_client_config.current.object_id
}
这应该是
data.azurerm\u client\u config.current.object\u id
而不是data.azurerm\u client\u config.current.client\u id
。这应该是data.azurerm\u client\u config.current.object\u id
而不是data.azurerm\u client\u config.current.client\u id
。object\u id是您想要授予访问数据库权限的id钥匙库。您首先需要知道它是什么。对象id是您要授予访问密钥库权限的id。你需要先知道它是什么。