【Azure Policy】使用Azure Policy来精准控制资源的创建类型

简介: 本文介绍了如何在 Azure 中使用 Azure Policy 的 Deny 策略,阻止创建 AI 服务中的 Document Intelligence 资源。通过定义策略规则,结合资源类型和 Kind 属性,实现精准限制,并附有示例代码及验证结果。

问题描述

在 Azure 中使用 Azure Policy 来禁止创建某些资源,是一种非常有效的治理手段。可以通过定义策略(Policy Definition)并分配(Assignment)到订阅或资源组,来实现对资源创建的限制。

下面将介绍使用Deny策略来阻止创建 Azure AI services 中的 Document intelligence资源。

 

问题解答

在使用Deny的策略中,用 if 条件来匹配需要禁止的资源类型,比如 虚拟机的资源类型为 Microsoft.Compute/virtualMachines。它的PolicyRule设置就非常简单,只需要一个条件就可以。


示例如下:

"policyRule": {
      "if": {
        "field": "type",
        "equals": "Microsoft.Compute/virtualMachines"
      },
      "then": {
        "effect": "deny"
      }
    }

对于Azure AI services 中的 Document intelligence资源, 只根据类型 type 为 Microsoft.CognitiveServices/accounts 就无法实现精准判断 Document Intelligence资源,因为Anomaly detector,Content moderator等资源的类型都是Microsoft.CognitiveServices/accounts。

根据对Document Intelligence的资源文件进行分析,发现他们之间使用Kind属性值进行区分。比如:

  • Document intelligence 的Kind值为FormRecognizer
  • Anomaly detector 的Kind值为AnomalyDetector
  • Content moderator 的Kind值为ContentModerator


所以,可以使用如下的PolicyRule来实现禁止创建Document intelligence资源:

{
  "mode": "All",
  "policyRule": {
    "if": {
      "allOf": [
        {
          "field": "type",
          "equals": "Microsoft.CognitiveServices/accounts"
        },
        {
          "field": "Kind",
          "equals": "FormRecognizer"
        }
      ]
    },
    "then": {
      "effect": "deny"
    }
  },
  "parameters": {}
}

创建好策略并分配后,验证效果如下:

 

参考资料

What are the resource providers for Azure services : https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/azure-services-resource-providers

Azure Policy 定义结构策略规则 : https://docs.azure.cn/zh-cn/governance/policy/concepts/definition-structure-policy-rule

 

 

 


当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

相关文章
|
机器学习/深度学习 人工智能 自然语言处理
Informer:用于长序列时间序列预测的新型Transformer
Informer:用于长序列时间序列预测的新型Transformer
2499 0
Informer:用于长序列时间序列预测的新型Transformer
|
传感器 数据采集 数据格式
RS485和Modbus通信协议,让工业自动化更高效!
RS485和Modbus通信协议,让工业自动化更高效!
|
存储 缓存
什么是TS流?
什么是TS流?
608 0
|
6月前
|
存储 SQL 大数据
告别 Count Distinct 慢查询:StarRocks 高效去重全攻略
在大数据分析中,去重计算(如 Count Distinct)因高计算开销常成为性能瓶颈,尤其在高基数和高并发场景下更为明显。本文以 StarRocks 为分析平台,深入探讨多种去重优化策略,包括使用函数、数据类型转换(如 String 转 Int)、高效数据结构(如 Bitmap 和 HLL),以及物化视图的预计算方案。通过实际案例分析,对比不同方法在性能、精度和易用性方面的优劣,帮助用户在不同业务场景下选择最合适的优化手段。此外,文章还详细解析了如何结合 SQL 查询构建物化视图,以提升去重计算效率,并讨论了精确与近似去重的适用场景。最终目标是为复杂数据分析提供高效、灵活的解决方案。
|
11月前
|
JSON 数据格式
【Azure Fabric Service】演示使用PowerShell命令部署SF应用程序(.NET)
本文详细介绍了在中国区微软云Azure上使用Service Fabrics服务时,通过PowerShell命令发布.NET应用的全过程。由于Visual Studio 2022无法直接发布应用,需借助PowerShell脚本完成部署。文章分三步讲解:首先在Visual Studio 2022中打包应用部署包,其次连接SF集群并上传部署包,最后注册应用类型、创建实例并启动服务。过程中涉及关键参数如服务器证书指纹和服务端证书指纹的获取,并附带图文说明,便于操作。参考官方文档,帮助用户成功部署并运行服务。
351 73
|
9月前
|
存储 数据可视化 开发工具
【Application Insights】Application Insights存储的Function App的日志存在"Operation Link" 为空的情况
在将 Azure Functions 升级到 .NET 8 和 Isolated Worker 模式后,Application Insights 的请求日志中 `operation_Link` 字段为空,导致分布式追踪无法正常关联。解决方法包括:确保引用正确的 SDK 包(如 `Microsoft.Azure.Functions.Worker.ApplicationInsights`),正确配置 Application Insights 服务,移除默认日志过滤规则,并使用最新依赖包以支持分布式追踪。通过这些步骤,可恢复端到端事务视图的可视化效果。
200 10
|
10月前
|
Java 开发工具 Spring
【Azure Application Insights】为Spring Boot应用集成Application Insight SDK
本文以Java Spring Boot项目为例,详细说明如何集成Azure Application Insights SDK以收集和展示日志。内容包括三步配置:1) 在`pom.xml`中添加依赖项`applicationinsights-runtime-attach`和`applicationinsights-core`;2) 在main函数中调用`ApplicationInsights.attach()`;3) 配置`applicationinsights.json`文件。同时提供问题排查建议及自定义日志方法示例,帮助用户顺利集成并使用Application Insights服务。
282 8
|
10月前
|
Linux
【Function App】记录一次 "OSError: Could not find a suitable TLS CA certificate bundle" 错误
错误信息:We get an error in function app. Exception: OSError: Could not find a suitable TLS CA certificate bundle, invalid path: /home/site/wwwroot/.python_packages/lib/site-packages/certifi/cacert.pem This issue happened by chance. This appears to be a platform issue with Function Apps running on Linux
256 6
|
11月前
|
容器
【Azure Container App】在消耗性的Container App Environmnet中无法查看当时正在使用多少CPU多少实例数的替代方案
在 Azure Container Apps 中使用 Consumption 消耗型环境时,无法通过门户查看当前核心 (CPU) 和实例使用情况。这是因为消耗型工作负载配置文件的设计所致。若需查看使用状态,可使用 az cli 命令 `az containerapp env list-usages` 获取详细信息,包括 Current Cores 数量。文档还提供了参考资料链接以帮助用户深入了解相关命令用法。
225 17
|
easyexcel
easyExcel自定定义类型转换
easyExcel自定定义类型转换
935 0