Manages a Key Vault Key.
data "azurerm_client_config" "current" {}
resource "azurerm_resource_group" "test" {
name = "my-resource-group"
location = "West US"
}
resource "random_id" "server" {
keepers = {
ami_id = 1
}
byte_length = 8
}
resource "azurerm_key_vault" "test" {
name = "${format("%s%s", "kv", random_id.server.hex)}"
location = "${azurerm_resource_group.test.location}"
resource_group_name = "${azurerm_resource_group.test.name}"
tenant_id = "${data.azurerm_client_config.current.tenant_id}"
sku {
name = "premium"
}
access_policy {
tenant_id = "${data.azurerm_client_config.current.tenant_id}"
object_id = "${data.azurerm_client_config.current.service_principal_object_id}"
key_permissions = [
"create",
"get",
]
secret_permissions = [
"set",
]
}
tags {
environment = "Production"
}
}
resource "azurerm_key_vault_key" "generated" {
name = "generated-certificate"
vault_uri = "${azurerm_key_vault.test.vault_uri}"
key_type = "RSA"
key_size = 2048
key_opts = [
"decrypt",
"encrypt",
"sign",
"unwrapKey",
"verify",
"wrapKey",
]
}
The following arguments are supported:
name - (Required) Specifies the name of the Key Vault Key. Changing this forces a new resource to be created.
vault_uri - (Required) Specifies the URI used to access the Key Vault instance, available on the azurerm_key_vault resource.
key_type - (Required) Specifies the Key Type to use for this Key Vault Key. Possible values are EC (Elliptic Curve), Oct (Octet), RSA and RSA-HSM. Changing this forces a new resource to be created.
key_size - (Required) Specifies the Size of the Key to create in bytes. For example, 1024 or 2048. Changing this forces a new resource to be created.
key_opts - (Required) A list of JSON web key operations. Possible values include: decrypt, encrypt, sign, unwrapKey, verify and wrapKey. Please note these values are case sensitive.
tags - (Optional) A mapping of tags to assign to the resource.
The following attributes are exported:
id - The Key Vault Key ID. version - The current version of the Key Vault Key. n - The RSA modulus of this Key Vault Key. e - The RSA public exponent of this Key Vault Key. Key Vault Key which is Enabled can be imported using the resource id, e.g.
terraform import azurerm_key_vault_key.test https://example-keyvault.vault.azure.net/keys/example/fdf067c93bbb4b22bff4d8b7a9a56217
© 2018 HashiCorpLicensed under the MPL 2.0 License.
https://www.terraform.io/docs/providers/azurerm/r/key_vault_key.html