很抱歉,我对azure管理组和策略很困惑。
我有一个production
订阅,我想拒绝所有手工创建资源,只允许将资源创建为代码。
这意味着,如果我试图从门户创建或更改资源,得到一个错误,但如果我想用terraform或bicep创建资源,能够用终端做到这一点。
我所做的是,在我的Management Groups
中,我添加了一个子组并分配了订阅。在子组上,我创建了拒绝所有Microsoft.*
的策略,如下所示:
{
"mode": "All",
"policyRule": {
"if": {
"field": "type",
"like": "Microsoft.*"
},
"then": {
"effect": "deny"
}
}
}
这工作得很好,但我如何仍然能够使用终端创建资源与地形或二头肌?或者有人能告诉我一个更好的方法来解决这个问题吗?
Thank you very much
如果应用此策略,它也将对服务主体有效。
一个更好的方法将限制用户的rbac(如Reader),并且仅使用服务主体将资源部署到Azure。这是一个更简单的方法。