我想让cosmos db从密钥库中获取密钥进行加密。我无法在Keyvault中添加Cosmos的访问策略。所以我添加了下面的代码。
module "cosmosdb_app_access_policy" {
source = "git::ssh://git@blabla/keyvault-access-policy.git"
key_vault_id = module.keyvault.id
tenant_id = var.tenant_id
object_id = "060998cb-5ff8-48d6-b528-10eaaeb95e1d" # Azure CosmosDB App Object ID
key_permissions = ["Backup", "Create", "Decrypt", "Delete", "Encrypt", "Get", "List", "Purge", "Recover", "Restore", "UnwrapKey", "WrapKey", "Update"]
}
字符串060998cb-5ff8-48d6-b528-10eaaeb95e1d
值当前已硬编码。我想从Terraform得到它。
的数据
1条答案
按热度按时间qq24tv8q1#
我尝试在keyvault中分配Azure cosmos DB Access策略,并成功传递了从terraform创建的对象ID。
在这里,我尝试创建Cosmos DB帐户,配置如下所述。
Cosmos_db配置
main.tf
字符串
使用此配置,我们将能够配置cosmos dB account auto enabled
SystemUserIdentity
Object_ID。我们可以在这里看到output的值。
输出:
的数据
&
在下一步中,我们需要配置保险库和访问策略。
main.tf
型
这将访问现有的密钥库,并尝试根据要求提供访问策略。
输出:
的
&
的
通过这种配置,我们可以使用terraform调用对象ID,我们不需要硬编码它,我们还可以为cosmosdB创建访问策略。