实验目的:
在 Azure Policy 中创建一个仅允许在特定位置部署 Azure 资源的策略。 你可以通过尝试在违反该策略的位置创建存储帐户来验证该策略。
假设我们希望将资源部署位置限制为美国东部区域。 这有两个原因:
-
改进成本跟踪
为了跟踪成本,我们 使用不同订阅跟踪每个区域位置的部署。 此策略将确保将所有资源都部署到美国东部区域。
-
遵守数据驻留和安全要求
必须遵循规定在何处存储客户数据的合规性规则。 在本例中,客户数据必须存储在美国东部区域。
请记住,你可以将策略分配给管理组、单个订阅或资源组。 这里,你将策略分配给资源组,使该策略不会影响 Azure 订阅中的任何其他资源。
实验过程:
创建资源组
在这里,你将创建一个名为“my-test-rg”的资源组。 这是将应用位置策略的资源组。
出于学习目的,请使用在上一个练习中使用的资源组名称。 你可以使用相同的名称,是因为上一个资源组已被删除。
-
转到 Azure 门户并登录。
-
选择“创建资源”。
-
在搜索框中键入“资源组”,然后按 Enter。
-
如果转到了“搜索结果”窗格,请从结果中选择“资源组”。
-
选择“创建”。 然后,为每个设置输入以下值。
表 1 设置 值 订阅 (你的 Azure 订阅) 订阅 > 资源组 my-test-rg 区域 (美国)美国东部 -
选择“查看 + 创建”,然后选择“创建”。
了解预定义策略
在配置位置策略之前,让我们先简单了解一些预定义策略。 例如,你将了解与 Azure 计算服务相关的策略。
-
在 Azure 门户的页面顶部,选择“主页”返回到“起始页”。
-
在页面顶部,在搜索栏中输入“策略”。 然后从结果列表中选择“策略”以访问 Azure Policy。
-
在“创作”下,选择“定义”。
-
从“类别”下拉列表中,仅选择“计算”。
请注意,“允许的虚拟机 SKU”定义可用于指定组织可部署的一组虚拟机 SKU。
(可选步骤)请浏览你感兴趣的任何其他策略或类别。
配置位置策略
在这里,你可以使用 Azure Policy 配置允许的位置策略。 然后将该策略分配给资源组。 为此,请执行以下操作:
-
在“策略”窗格中的“创作”下,选择“分配”。
分配即为在特定范围内分配策略以供执行。 例如,可以将定义分配给订阅范围。
-
选择“分配策略”。
你将转到“分配策略”窗格。
-
在“范围”下,选择省略号。
在出现的对话框中,设置以下字段:
- 将“订阅”字段设置为你的 Azure 订阅。
- 将“资源组”字段设置为 my-test-rg。
- 选择“选择”。
-
在“策略定义”下,选择省略号。
- 在搜索栏中,输入“位置”。
- 选择“允许的位置”定义。
- 选择“选择”。
此策略定义指定必须部署在其中所有资源的位置。 如果选择了其他位置,部署将失败。
-
选择“下一步”,转到“参数”选项卡。
-
从“允许的位置”下拉列表中,选择“美国东部”。
-
选择“查看 + 创建”,然后选择“创建”。
你会看到“允许的位置”策略分配现列于“策略 | 分配”窗格中。 它对 my-test-rg 资源组强制实施该策略。
验证位置策略
在这里,你将尝试将存储帐户添加到违反位置策略的位置中的资源组。
-
在 Azure 门户的页面顶部,选择“主页”返回到“起始页”。
-
选择“创建资源”。
-
在搜索框中输入“存储帐户”,然后按 Enter。
-
如果转到“搜索结果”窗格,请从结果中选择“存储帐户”。
-
选择“创建”。 然后,为每个设置输入以下值。
备注
将 NNN 替换为一系列数字。 这些数字有助于确保存储帐户名称是唯一的。
表 2 设置 值 订阅 (你的 Azure 订阅) 订阅 > 资源组 my-test-rg 存储帐户名称 mysaNNN 位置 (亚太)日本东部 “性能” Standard 帐户种类 StorageV2(常规用途 v2) 复制 本地冗余存储 (LRS) 访问层(默认) 热访问层 如果之前在位置策略中选择了“日本东部”,请从列表中选择一个不同的区域。
-
选择“查看 + 创建”,然后选择“创建”。
你会看到一条告知部署由于违反策略而失败的消息。 还会看到部署详细信息。
下面的示例展示了一个名为 mysa1234 的存储帐户的部署详细信息。
删除策略分配
你不再需要策略分配。 接下来,将其从订阅中删除。
-
在 Azure 门户中,选择“主页” > “策略”。
-
在“创作”下,选择“分配”。
-
在“允许的位置”行中,选择省略号。 然后选择“删除分配”。 收到提示时,选择“是”。
你会看到“允许的位置”策略分配已不存在。
(可选步骤)你可以再次尝试创建存储帐户,验证该策略是否不再有效。
删除资源组
你不再需要资源组。 接下来,将其从订阅中删除。
-
从 Azure 门户中,选择“主页” > “资源组” > “my-test-rg”,以转到资源组。
-
选择“概述”,然后选择“删除资源组”。
-
在提示符下,输入“my-test-rg”,然后选择“确定”。
删除操作可能需要几分钟才能完成。
-
操作完成后,选择“主页” > “资源组”。
你会看到,帐户中已没有 my-test-rg 资源组。
干得漂亮! 你已成功使用 Azure Policy 应用了仅允许在特定位置部署 Azure 资源的策略。 现在,你可以应用你在管理组、订阅或资源组级别所需的策略了。
参照原文: