gpt4 book ai didi

Azure KeyVault : How to set access policy in parallel

转载 作者:行者123 更新时间:2023-12-03 03:48:59 27 4
gpt4 key购买 nike

使用 Set-AzKeyVaultAccessPolicy 命令创建访问策略时,出现错误:操作失败,因为“Key Vault”从操作开始时发生了更改。如果正在执行并行操作,则可能会发生这种情况。为了防止出现此错误,请将操作序列化,以便一次仅执行一个操作。请点击此链接了解更多信息:https://go.microsoft.com/fwlink/?linkid=2147741 .

多个脚本并行运行以在同一 keyvault 上设置不同的访问策略集,从而导致此冲突。

还有其他方法可以并行设置访问策略吗?

最佳答案

正如错误消息中提到的,如果并行运行命令来设置访问策略,将会导致ConflictError

因此,如果您想同时在访问策略中设置一堆用户/服务主体/安全组,更好的选择是使用 ARM template ,您可以将访问策略部署到现有 key 保管库,而无需重新部署整个 key 保管库模板,请参阅此 sample 。在这个示例中,只有一个对象,要添加多个对象,只需如下添加,将 tenantIdobjectIdpermissions 修改为你的。

"resources": [
{
"type": "Microsoft.KeyVault/vaults/accessPolicies",
"name": "[concat(parameters('keyVaultName'), '/add')]",
"apiVersion": "2019-09-01",
"properties": {
"accessPolicies": [
{
"tenantId": "xxxxxxx",
"objectId": "xxxxxxx",
"permissions": {
"keys": [
"Get",
"List",
"Update",
"Create",
"Import",
"Delete",
"Recover",
"Backup",
"Restore",
"UnwrapKey",
"WrapKey"
],
"secrets": [
"Get",
"List",
"Set",
"Delete",
"Recover",
"Backup",
"Restore"
],
"certificates": [
"Get",
"List",
"Update",
"Create",
"Import",
"Delete",
"Recover",
"Backup",
"Restore",
"ManageContacts",
"ManageIssuers",
"GetIssuers",
"ListIssuers",
"SetIssuers",
"DeleteIssuers"
]
}
},
{
"tenantId": "xxxxxxx",
"objectId": "xxxxxxx",
"permissions": {
"keys": [
"Get",
"List",
"Update",
"Create",
"Import",
"Delete",
"Recover",
"Backup",
"Restore"
],
"secrets": [
"Get",
"List",
"Set",
"Delete",
"Recover",
"Backup",
"Restore"
],
"certificates": [
"Get",
"List",
"Import",
"Update",
"Create"
]
}
},
{
"tenantId": "xxxxxxx",
"objectId": "xxxxxxx",
"permissions": {
"keys": [
"Get",
"List",
"Update",
"Create",
"Import",
"Delete",
"Recover",
"Backup",
"Restore"
],
"secrets": [
"Get",
"List",
"Set",
"Delete",
"Recover",
"Backup",
"Restore"
],
"certificates": [
"Get",
"List",
"Update",
"Create",
"Import",
"Delete",
"Recover",
"Backup",
"Restore",
"ManageContacts",
"ManageIssuers",
"GetIssuers",
"ListIssuers",
"SetIssuers",
"DeleteIssuers"
]
}
},
{
"tenantId": "xxxxxxx",
"objectId": "xxxxxxx",
"permissions": {
"secrets": [
"List",
"Get"
],
"keys": [],
"certificates": []
}
}
]
}
}
]

关于Azure KeyVault : How to set access policy in parallel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67719709/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com