Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Terraform创建azure密钥库_Terraform_Azure Keyvault_Terraform Provider Azure - Fatal编程技术网

Terraform创建azure密钥库

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

我正在使用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" "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。你需要先知道它是什么。