你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure Policy 提供内置策略定义,可帮助你管理托管 Foundry 工具(无服务器 API 部署)和模型即平台(MaaP)中的 AI 模型的部署。 使用这些策略来控制开发人员可以在 Microsoft Foundry 门户中部署哪些模型。
小窍门
本文中的步骤用于控制 Foundry 项目和基于中心的项目的 MaaS 和 MaaP 模型部署。
先决条件
- 拥有有效订阅的 Azure 帐户。 如果没有帐户,请创建一个 免费的 Azure 帐户,其中包括免费试用订阅。
- 创建和分配策略的权限。 若要创建和分配策略,你必须是 Azure 订阅或资源组级别的所有者或资源策略参与者。
- 熟悉 Azure Policy。 有关详细信息,请参阅什么是 Azure Policy?。
- 已安装 Azure CLI 和 Bicep CLI 。
启用策略
可以使用 Bicep 或 Azure 门户分配策略。
- 肱二头肌
- Azure 门户
使用以下 Bicep 模板将策略分配给资源组。 此示例仅允许来自 gpt-35-turbo 注册表的 azure-openai 模型。
将以下代码保存为
main.bicep.targetScope = 'resourceGroup' param policyAssignmentName string = 'allowed-models-assignment' param allowedModelPublishers array = [] param allowedAssetIds array = [ 'azureml://registries/azure-openai/models/gpt-35-turbo/versions/3' ] // Policy Definition ID for "[Preview]: Azure Machine Learning Deployments should only use approved Registry Models" var policyDefinitionId = '/providers/Microsoft.Authorization/policyDefinitions/12e5dd16-d201-47ff-849b-8454061c293d' resource policyAssignment 'Microsoft.Authorization/policyAssignments@2024-04-01' = { name: policyAssignmentName properties: { policyDefinitionId: policyDefinitionId parameters: { allowedModelPublishers: { value: allowedModelPublishers } allowedAssetIds: { value: allowedAssetIds } } displayName: 'Allow specific AI models' description: 'This policy assignment restricts AI model deployments to the specified list.' } }使用 Azure CLI 部署 Bicep 文件。
az deployment group create --resource-group <your-resource-group> --template-file main.bicep将
<your-resource-group>替换为资源组的名称。通知你的开发人员已实施该策略。 如果他们尝试部署不在允许模型列表中的模型,他们会收到错误消息。
- 通知你的开发人员已实施该策略。 如果他们尝试部署不在允许模型列表中的模型,他们会收到错误消息。
监督合规性
若要监视对策略的遵从性,请执行以下步骤:
- 在 Azure 门户中,从页面左侧选择“策略”。 也可以在页面顶部的搜索栏中搜索“策略”。
- 在 Azure Policy 仪表板左侧,选择“合规性”。 每项策略分配均与合规性状态一起列出。 若要查看更多详细信息,请选择该策略分配。
更新策略分配
若要用新模型更新现有的策略分配,请执行以下步骤:
- 在 Azure 门户中,从页面左侧选择“策略”。 也可以在页面顶部的搜索栏中搜索“策略”。
- 在 Azure Policy 仪表板左侧,选择“分配”并找到现有的策略分配。 选择该分配旁边的省略号 (...),然后选择“编辑分配”。
- 在“参数”选项卡中,将“允许的模型”参数更新为新的模型 ID。
- 在“检查 + 保存”选项卡中,选择“保存”以更新策略分配。
最佳做法
- 精细范围定义:在适当的范围内分配策略,在控制能力与灵活性之间实现平衡。 例如,在订阅级别应用策略可以控制订阅中的所有资源,在资源组级别应用策略可以控制特定组中的资源。
- 策略命名:对策略分配使用一致的命名约定,以便更轻松地识别策略的用途。 在名称中包含用途和范围等信息。
- 文档记录:保留策略分配和配置的记录以用于审核目的。 记录一段时间内对策略所做的任何更改。
- 定期评审:定期评审策略分配,确保其符合组织的要求。
- 测试:在将策略应用于生产资源之前,先在非生产环境中对其进行测试。
- 沟通:确保开发人员知道现行的策略,并了解其对开发人员工作的影响。