azure - Azure 自定义策略为处于冲突状态的 sql db 打开混合许可证
问题描述
如果未启用,我正在创建一个自定义策略以在 SQL 数据库上启用混合定价。我让它在 AUDIT 模式下工作 - 请参阅下面的政策 - 以下政策正在工作..它发现两个数据库不合规。但是,当我尝试添加附加操作时,我在没有选择混合选项的两个数据库上得到 2 个冲突 - 我期待并希望该策略能够在这两个数据库上启用混合模式。第二个策略的代码也在下面。
` "properties": {
"displayName": "Audit SQL DB without Hybrid Licensing",
"policyType": "Custom",
"mode": "All",
"description": "Generate audit record if SQL DB is not configured for hybrid license",
"metadata": {
"category": "SQL",
"createdBy": "5a53d124-483a-4726-9b6f-bd9fa5e56cf3",
"createdOn": "2020-12-11T19:52:20.1852612Z",
"updatedBy": "5a53d124-483a-4726-9b6f-bd9fa5e56cf3",
"updatedOn": "2020-12-23T17:36:10.6538643Z"
},
"parameters": {},
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.SQL/servers/databases"
},
{
"field": "kind",
"contains": "vcore"
},
{
"field": "Microsoft.Sql/servers/databases/licenseType",
"notEquals": "BasePrice"
},
{
"field": "Microsoft.Sql/servers/databases/sku.name",
"notEquals": "ElasticPool"
}
]
},
"then": {
"effect": "audit"
}
}
},
`
第二个政策不起作用,但会产生 2 个冲突
{
"mode": "All",
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.SQL/servers/databases"
},
{
"field": "kind",
"contains": "vcore"
},
{
"field": "Microsoft.Sql/servers/databases/licenseType",
"notEquals": "BasePrice"
},
{
"field": "Microsoft.Sql/servers/databases/sku.name",
"notEquals": "ElasticPool"
}
]
},
"then": {
"effect": "append",
"details": [
{
"field": "Microsoft.Sql/servers/databases/licenseType",
"value": "BasePrice"
}
]
}
},
"parameters": {}
}
解决方案
推荐阅读
- apache-spark - Spark包标志vs jars目录?
- javascript - 1970 年 1 月 1 日之前的 javascript 正则表达式日期
- php - 使用 Autodesk Forge 从 IFC 文件获取几何数据(尺寸)
- python - 清理 LexisNexis txt 文件,ZeroDivisionError
- r - 使用列中的变量在 ggplot 中绘制折线图
- javascript - HTML5 视频:使用 Blob URL 的流式视频
- php - 如何使用 fetch() 获得与 fetchAll() 相同的结果?
- java - StanfordCoreNLP 作为线程
- c# - Asp.Net Core 2.0 Web Api:结合 jwt 令牌使用 asp.net 身份 cookie 来实现记住我的功能
- git - 如何像快照一样在一个分支中 git 回滚/重做工作字典文件?