Policy Assignments - Create By Id
创建或更新策略分配。
此操作使用给定 ID 创建或更新策略分配。 对范围所做的策略分配适用于该范围中包含的所有资源。 例如,将策略分配给该策略应用于组中所有资源的资源组时。 策略分配 ID 采用以下格式:“{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}”。 有效范围包括:管理组(格式:'/providers/Microsoft.Management/managementGroups/{managementGroup}')、订阅(格式:'/subscriptions/{subscriptionId}')、资源组(格式:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}'), 或资源(格式:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'。
PUT https://management.azure.com/{policyAssignmentId}?api-version=2023-04-01
URI 参数
| 名称 | 在 | 必需 | 类型 | 说明 |
|---|---|---|---|---|
|
policy
|
path | True |
string |
要创建的策略分配的 ID。 使用格式“{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}”。 |
|
api-version
|
query | True |
string minLength: 1 |
用于此操作的 API 版本。 |
请求正文
| 名称 | 类型 | 说明 |
|---|---|---|
| identity |
与策略分配关联的托管标识。 |
|
| location |
string |
策略分配的位置。 仅当使用托管标识时才需要。 |
| properties.definitionVersion |
string |
要使用的策略定义的版本。 |
| properties.description |
string |
如果发生策略冲突,此消息将是响应的一部分。 |
| properties.displayName |
string |
策略分配的显示名称。 |
| properties.enforcementMode |
策略分配强制模式。 可能的值为 Default 和 DoNotEnforce。 |
|
| properties.metadata |
object |
策略分配元数据。 元数据是一个开放结束的对象,通常是键值对的集合。 |
| properties.nonComplianceMessages |
描述资源不符合策略的原因的消息。 |
|
| properties.notScopes |
string[] |
策略的排除范围。 |
| properties.overrides |
Override[] |
策略属性值重写。 |
| properties.parameters |
<string,
Parameter |
分配的策略规则的参数值。 键是参数名称。 |
| properties.policyDefinitionId |
string |
要分配的策略定义或策略集定义的 ID。 |
| properties.resourceSelectors |
按资源属性筛选策略的资源选择器列表。 |
响应
| 名称 | 类型 | 说明 |
|---|---|---|
| 201 Created |
创建 - 返回有关策略分配的信息。 |
|
| Other Status Codes |
描述操作失败的原因的错误响应。 |
安全性
azure_auth
Azure Active Directory OAuth2 Flow。
类型:
oauth2
流向:
implicit
授权 URL:
https://login.microsoftonline.com/common/oauth2/authorize
作用域
| 名称 | 说明 |
|---|---|
| user_impersonation | 模拟用户帐户 |
示例
| Create or update policy assignment by ID |
| Create or update policy assignment with a managed identity by ID |
Create or update policy assignment by ID
示例请求
PUT https://management.azure.com/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage?api-version=2023-04-01
{
"properties": {
"displayName": "Enforce storage account SKU",
"description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created",
"metadata": {
"assignedBy": "Cheapskate Boss"
},
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
"definitionVersion": "1.*.*",
"parameters": {
"listOfAllowedSKUs": {
"value": [
"Standard_GRS",
"Standard_LRS"
]
}
},
"enforcementMode": "Default"
}
}
示例响应
{
"properties": {
"displayName": "Enforce storage account SKU",
"description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created",
"metadata": {
"assignedBy": "Cheapskate Boss"
},
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
"definitionVersion": "1.*.*",
"notScopes": [],
"parameters": {
"listOfAllowedSKUs": {
"value": [
"Standard_GRS",
"Standard_LRS"
]
}
},
"enforcementMode": "Default"
},
"id": "/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage",
"type": "Microsoft.Authorization/policyAssignments",
"name": "LowCostStorage"
}
Create or update policy assignment with a managed identity by ID
示例请求
PUT https://management.azure.com/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage?api-version=2023-04-01
{
"identity": {
"type": "SystemAssigned"
},
"location": "eastus",
"properties": {
"displayName": "Enforce storage account SKU",
"description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created",
"metadata": {
"assignedBy": "Cheapskate Boss"
},
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
"definitionVersion": "1.*.*",
"parameters": {
"listOfAllowedSKUs": {
"value": [
"Standard_GRS",
"Standard_LRS"
]
}
},
"enforcementMode": "Default"
}
}
示例响应
{
"properties": {
"displayName": "Enforce storage account SKU",
"description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created",
"metadata": {
"assignedBy": "Cheapskate Boss"
},
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
"definitionVersion": "1.*.*",
"notScopes": [],
"parameters": {
"listOfAllowedSKUs": {
"value": [
"Standard_GRS",
"Standard_LRS"
]
}
},
"enforcementMode": "Default"
},
"identity": {
"type": "SystemAssigned",
"principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a",
"tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135"
},
"location": "eastus",
"id": "/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage",
"type": "Microsoft.Authorization/policyAssignments",
"name": "LowCostStorage"
}
定义
| 名称 | 说明 |
|---|---|
|
Cloud |
策略操作的错误响应。 |
|
created |
创建资源的标识的类型。 |
|
enforcement |
策略分配强制模式。 可能的值为 Default 和 DoNotEnforce。 |
|
Error |
资源管理错误附加信息。 |
|
Error |
错误响应 |
| Identity |
资源的标识。 策略分配最多支持一个标识。 这是系统分配的标识或单个用户分配的标识。 |
|
Non |
描述资源不符合策略的原因的消息。 这会显示在“拒绝”错误消息中,以及资源的不符合符合性结果。 |
| Override |
策略属性值重写。 |
|
Override |
重写类型。 |
|
Parameter |
参数的值。 |
|
Policy |
策略分配。 |
|
Resource |
标识类型。 这是将系统或用户分配的标识添加到资源时的唯一必填字段。 |
|
Resource |
按资源属性筛选策略的资源选择器。 |
| Selector |
选择器表达式。 |
|
Selector |
选择器类型。 |
|
system |
与创建和上次修改资源相关的元数据。 |
|
User |
与策略关联的用户标识。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 |
CloudError
策略操作的错误响应。
| 名称 | 类型 | 说明 |
|---|---|---|
| error |
错误响应 |
createdByType
创建资源的标识的类型。
| 值 | 说明 |
|---|---|
| User | |
| Application | |
| ManagedIdentity | |
| Key |
enforcementMode
策略分配强制模式。 可能的值为 Default 和 DoNotEnforce。
| 值 | 说明 |
|---|---|
| Default |
在资源创建或更新期间强制实施策略效果。 |
| DoNotEnforce |
在资源创建或更新期间,不会强制实施策略效果。 |
ErrorAdditionalInfo
资源管理错误附加信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| info |
object |
其他信息。 |
| type |
string |
其他信息类型。 |
ErrorResponse
错误响应
| 名称 | 类型 | 说明 |
|---|---|---|
| additionalInfo |
错误附加信息。 |
|
| code |
string |
错误代码。 |
| details |
错误详细信息。 |
|
| message |
string |
错误消息。 |
| target |
string |
错误目标。 |
Identity
资源的标识。 策略分配最多支持一个标识。 这是系统分配的标识或单个用户分配的标识。
| 名称 | 类型 | 说明 |
|---|---|---|
| principalId |
string |
资源标识的主体 ID。 此属性仅针对系统分配的标识提供 |
| tenantId |
string |
资源标识的租户 ID。 此属性仅针对系统分配的标识提供 |
| type |
标识类型。 这是将系统或用户分配的标识添加到资源时的唯一必填字段。 |
|
| userAssignedIdentities |
与策略关联的用户标识。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 |
NonComplianceMessage
描述资源不符合策略的原因的消息。 这会显示在“拒绝”错误消息中,以及资源的不符合符合性结果。
| 名称 | 类型 | 说明 |
|---|---|---|
| message |
string |
描述资源不符合策略的原因的消息。 这会显示在“拒绝”错误消息中,以及资源的不符合符合性结果。 |
| policyDefinitionReferenceId |
string |
消息适用于的策略集定义中的策略定义引用 ID。 这仅适用于策略分配分配策略集定义。 如果未提供此消息,则消息适用于此策略分配分配的所有策略。 |
Override
策略属性值重写。
| 名称 | 类型 | 说明 |
|---|---|---|
| kind |
重写类型。 |
|
| selectors |
Selector[] |
选择器表达式的列表。 |
| value |
string |
要重写策略属性的值。 |
OverrideKind
重写类型。
| 值 | 说明 |
|---|---|
| policyEffect |
它将替代策略效果类型。 |
ParameterValuesValue
参数的值。
| 名称 | 类型 | 说明 |
|---|---|---|
| value |
object |
参数的值。 |
PolicyAssignment
策略分配。
| 名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| id |
string |
策略分配的 ID。 |
|
| identity |
与策略分配关联的托管标识。 |
||
| location |
string |
策略分配的位置。 仅当使用托管标识时才需要。 |
|
| name |
string |
策略分配的名称。 |
|
| properties.definitionVersion |
string |
要使用的策略定义的版本。 |
|
| properties.description |
string |
如果发生策略冲突,此消息将是响应的一部分。 |
|
| properties.displayName |
string |
策略分配的显示名称。 |
|
| properties.effectiveDefinitionVersion |
string |
正在使用的策略定义的有效版本。 仅当通过$expand查询参数请求时,才存在此参数。 |
|
| properties.enforcementMode | Default |
策略分配强制模式。 可能的值为 Default 和 DoNotEnforce。 |
|
| properties.latestDefinitionVersion |
string |
可用的策略定义的最新版本。 仅当通过$expand查询参数请求时,才存在此参数。 |
|
| properties.metadata |
object |
策略分配元数据。 元数据是一个开放结束的对象,通常是键值对的集合。 |
|
| properties.nonComplianceMessages |
描述资源不符合策略的原因的消息。 |
||
| properties.notScopes |
string[] |
策略的排除范围。 |
|
| properties.overrides |
Override[] |
策略属性值重写。 |
|
| properties.parameters |
<string,
Parameter |
分配的策略规则的参数值。 键是参数名称。 |
|
| properties.policyDefinitionId |
string |
要分配的策略定义或策略集定义的 ID。 |
|
| properties.resourceSelectors |
按资源属性筛选策略的资源选择器列表。 |
||
| properties.scope |
string |
策略分配的范围。 |
|
| systemData |
与此资源相关的系统元数据。 |
||
| type |
string |
策略分配的类型。 |
ResourceIdentityType
标识类型。 这是将系统或用户分配的标识添加到资源时的唯一必填字段。
| 值 | 说明 |
|---|---|
| SystemAssigned |
指示系统分配的标识与资源相关联。 |
| UserAssigned |
指示系统分配的标识与资源相关联。 |
| None |
指示没有与资源关联的标识或应删除现有标识。 |
ResourceSelector
按资源属性筛选策略的资源选择器。
| 名称 | 类型 | 说明 |
|---|---|---|
| name |
string |
资源选择器的名称。 |
| selectors |
Selector[] |
选择器表达式的列表。 |
Selector
选择器表达式。
| 名称 | 类型 | 说明 |
|---|---|---|
| in |
string[] |
要筛选的值列表。 |
| kind |
选择器类型。 |
|
| notIn |
string[] |
要筛选出的值列表。 |
SelectorKind
选择器类型。
| 值 | 说明 |
|---|---|
| resourceLocation |
按资源位置筛选策略的选择器类型。 |
| resourceType |
按资源类型筛选策略的选择器类型。 |
| resourceWithoutLocation |
按没有位置的资源筛选策略的选择器类型。 |
| policyDefinitionReferenceId |
按策略定义引用 ID 筛选策略的选择器类型。 |
systemData
与创建和上次修改资源相关的元数据。
| 名称 | 类型 | 说明 |
|---|---|---|
| createdAt |
string (date-time) |
资源创建时间戳(UTC)。 |
| createdBy |
string |
创建资源的标识。 |
| createdByType |
创建资源的标识的类型。 |
|
| lastModifiedAt |
string (date-time) |
上次修改的资源时间戳(UTC) |
| lastModifiedBy |
string |
上次修改资源的标识。 |
| lastModifiedByType |
上次修改资源的标识的类型。 |
UserAssignedIdentities
与策略关联的用户标识。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。
| 名称 | 类型 | 说明 |
|---|---|---|
|
|