前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Azure Policy限制所有ASM资源

使用Azure Policy限制所有ASM资源

作者头像
李珣
发布2022-05-07 19:25:06
3470
发布2022-05-07 19:25:06
举报
文章被收录于专栏:李珣李珣

使用Azure Policy限制所有ASM资源

Azure策略是管理Azure订阅中的标准策略的绝佳工具。可用于创建、分配和管理策略。 这些策略将在整个资源中强制实施不同的规则和效果,以便这些资源符合公司标准和服务级别协议。Azure Policy 通过评估资源是否符合指定策略来满足此需求。 例如,可以设置一项策略,仅允许环境中有特定 SKU 大小的虚拟机。 实施此策略后,将评估新资源和现有资源的符合性。 通过使用正确的策略类型,可以确保现有资源的符合性。

相信大家都知道Azure 上有两种部署模式,分别为ARM和ASM(又名Classic)。两者对比如下:

l 在Classic模式下,每个资源都是独立的,无法将相关的资源组合在一起,但在ARM模式下可以以组的形式部署、管理和监视解决方案的所有资源,而不是单独处理这些资源。

l ARM可以方便地重复部署用户的解决方案,同时还能保证其部署后的一致性。

l ARM可以对资源组中的所有资源做基于角色的访问控制(RBAC),ARM的访问制控有三种基本权限。

n Owner:所有权限。

n Contributor:有创建和管理资源的权限,但是不是付予别人访问权限。

n Reader:只读。

l ARM可以给用户的任何资源打TAG,提供逻辑上组织资源的能力。

l 可以使用资源模版(JSON)来定义解决方案的架构。支持导入导出功能。模版定义了一组资源的集合,可以一次性部署。

l 可以定义各资源之间的依赖关系,使其按正确的顺序进行部署。

       鉴于ARM的上述优点,客户在部署的时候都希望使用ARM的模式进行部署,但是在某些情况下可能会出现运维人员误操作等原因将资源部署成ASM的模式。为了避免此种情况的发生,我们一般会推荐客户使用Azure Policy来限制无法在订阅内创建ASM资源。

下面就让我们来一起看一下如何使用一个非常简单的策略定义来实现限制订阅级别上的所有Azure Service Manager(ASM,又名Classic)资源。

定义JSON文件:

代码语言:javascript
复制
 {
     "if": {
         "field": "type",
         "like": "Microsoft.Classic*"
     },
     "then": {
         "effect": "Deny"
     }
}

       应用策略:

       定义策略:

代码语言:javascript
复制
$definition = New-AzureRmPolicyDefinition -Name "restrict-all-asm-resources" -DisplayName "Restrict
All ASM Resources" -description "This policy enables you to restrict ALL Azure
Service Manager (ASM, aka Classic) resources." -Policy '.\Restrict-ALL-ASM-Resources.json' -Mode All
使用Azure Policy限制所有ASM资源_json
使用Azure Policy限制所有ASM资源_json

       应用策略:

代码语言:javascript
复制
$assignment = New-AzureRMPolicyAssignment -Name 'Restrict
All ASM Resources' -PolicyDefinition $definition -Scope
"/subscriptions/$subscriptionId"
使用Azure Policy限制所有ASM资源_json_02
使用Azure Policy限制所有ASM资源_json_02

策略应用以后,当我试图创建一个经典的VNet时,无法通过验证:

使用Azure Policy限制所有ASM资源_解决方案_03
使用Azure Policy限制所有ASM资源_解决方案_03
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-03-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档