Policy Definitions - Create Or Update
Skapar eller uppdaterar en principdefinition i en prenumeration.
Den här åtgärden skapar eller uppdaterar en principdefinition i den angivna prenumerationen med det angivna namnet.
PUT https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policyDefinitions/{policyDefinitionName}?api-version=2023-04-01
URI-parametrar
Name | I | Obligatorisk | Typ | Description |
---|---|---|---|---|
policy
|
path | True |
string pattern: ^[^<>*%&:\?.+/]*[^<>*%&:\?.+/ ]+$ |
Namnet på den principdefinition som ska skapas. |
subscription
|
path | True |
string (uuid) |
ID för målprenumerationen. Värdet måste vara ett UUID. |
api-version
|
query | True |
string minLength: 1 |
DEN API-version som ska användas för den här åtgärden. |
Begärandetext
Name | Typ | Description |
---|---|---|
properties.description |
string |
Beskrivningen av principdefinitionen. |
properties.displayName |
string |
Principdefinitionens visningsnamn. |
properties.metadata |
object |
Metadata för principdefinition. Metadata är ett öppet slutobjekt och är vanligtvis en samling nyckelvärdepar. |
properties.mode |
string |
Principdefinitionsläget. Några exempel är Alla, Indexerade, Microsoft.KeyVault.Data. |
properties.parameters |
<string,
Parameter |
Parameterdefinitionerna för parametrar som används i principregeln. Nycklarna är parameternamnen. |
properties.policyRule |
object |
Principregeln. |
properties.policyType |
Typen av principdefinition. Möjliga värden är NotSpecified, BuiltIn, Custom och Static. |
|
properties.version |
string |
Principdefinitionsversionen i #.#.#-format. |
properties.versions |
string[] |
En lista över tillgängliga versioner för den här principdefinitionen. |
Svar
Name | Typ | Description |
---|---|---|
201 Created |
Skapad – Returnerar information om principdefinitionen. |
|
Other Status Codes |
Felsvar som beskriver varför åtgärden misslyckades. |
Säkerhet
azure_auth
Azure Active Directory OAuth2 Flow.
Typ:
oauth2
Flow:
implicit
Auktoriseringswebbadress:
https://login.microsoftonline.com/common/oauth2/authorize
Omfattningar
Name | Description |
---|---|
user_impersonation | personifiera ditt användarkonto |
Exempel
Create or update a policy definition |
Create or update a policy definition with advanced parameters |
Create or update a policy definition
Exempelbegäran
PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming?api-version=2023-04-01
{
"properties": {
"mode": "All",
"displayName": "Enforce resource naming convention",
"description": "Force resource names to begin with given 'prefix' and/or end with given 'suffix'",
"metadata": {
"category": "Naming"
},
"policyRule": {
"if": {
"not": {
"field": "name",
"like": "[concat(parameters('prefix'), '*', parameters('suffix'))]"
}
},
"then": {
"effect": "deny"
}
},
"parameters": {
"prefix": {
"type": "String",
"metadata": {
"displayName": "Prefix",
"description": "Resource name prefix"
}
},
"suffix": {
"type": "String",
"metadata": {
"displayName": "Suffix",
"description": "Resource name suffix"
}
}
}
}
}
Exempelsvar
{
"id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
"type": "Microsoft.Authorization/policyDefinitions",
"name": "ResourceNaming",
"properties": {
"mode": "All",
"displayName": "Naming Convention",
"description": "Force resource names to begin with 'prefix' and end with 'suffix'",
"metadata": {
"category": "Naming"
},
"version": "1.2.1",
"versions": [
"1.2.1",
"1.0.0"
],
"policyRule": {
"if": {
"not": {
"field": "name",
"like": "[concat(parameters('prefix'), '*', parameters('suffix'))]"
}
},
"then": {
"effect": "deny"
}
},
"parameters": {
"prefix": {
"type": "String",
"metadata": {
"displayName": "Prefix",
"description": "Resource name prefix"
}
},
"suffix": {
"type": "String",
"metadata": {
"displayName": "Suffix",
"description": "Resource name suffix"
}
}
},
"policyType": "Custom"
}
}
Create or update a policy definition with advanced parameters
Exempelbegäran
PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/EventHubDiagnosticLogs?api-version=2023-04-01
{
"properties": {
"mode": "Indexed",
"displayName": "Event Hubs should have diagnostic logging enabled",
"description": "Audit enabling of logs and retain them up to a year. This enables recreation of activity trails for investigation purposes when a security incident occurs or your network is compromised",
"metadata": {
"category": "Event Hub"
},
"policyRule": {
"if": {
"field": "type",
"equals": "Microsoft.EventHub/namespaces"
},
"then": {
"effect": "AuditIfNotExists",
"details": {
"type": "Microsoft.Insights/diagnosticSettings",
"existenceCondition": {
"allOf": [
{
"field": "Microsoft.Insights/diagnosticSettings/logs[*].retentionPolicy.enabled",
"equals": "true"
},
{
"field": "Microsoft.Insights/diagnosticSettings/logs[*].retentionPolicy.days",
"equals": "[parameters('requiredRetentionDays')]"
}
]
}
}
}
},
"parameters": {
"requiredRetentionDays": {
"type": "Integer",
"defaultValue": 365,
"allowedValues": [
0,
30,
90,
180,
365
],
"metadata": {
"displayName": "Required retention (days)",
"description": "The required diagnostic logs retention in days"
}
}
}
}
}
Exempelsvar
{
"id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
"type": "Microsoft.Authorization/policyDefinitions",
"name": "ResourceNaming",
"properties": {
"mode": "Indexed",
"displayName": "Event Hubs should have diagnostic logging enabled",
"description": "Audit enabling of logs and retain them up to a year. This enables recreation of activity trails for investigation purposes when a security incident occurs or your network is compromised",
"metadata": {
"category": "Event Hub"
},
"version": "1.2.1",
"versions": [
"1.2.1",
"1.0.0"
],
"policyRule": {
"if": {
"field": "type",
"equals": "Microsoft.EventHub/namespaces"
},
"then": {
"effect": "AuditIfNotExists",
"details": {
"type": "Microsoft.Insights/diagnosticSettings",
"existenceCondition": {
"allOf": [
{
"field": "Microsoft.Insights/diagnosticSettings/logs[*].retentionPolicy.enabled",
"equals": "true"
},
{
"field": "Microsoft.Insights/diagnosticSettings/logs[*].retentionPolicy.days",
"equals": "[parameters('requiredRetentionDays')]"
}
]
}
}
}
},
"parameters": {
"requiredRetentionDays": {
"type": "Integer",
"defaultValue": 365,
"allowedValues": [
0,
30,
90,
180,
365
],
"metadata": {
"displayName": "Required retention (days)",
"description": "The required diagnostic logs retention in days"
}
}
}
}
}
Definitioner
Name | Description |
---|---|
Cloud |
Ett felsvar från en principåtgärd. |
created |
Den typ av identitet som skapade resursen. |
Error |
Ytterligare information om resurshanteringsfelet. |
Error |
Felsvar |
Metadata |
Allmänna metadata för parametern. |
Parameter |
Definitionen av en parameter som kan anges för principen. |
parameter |
Parameterns datatyp. |
Policy |
Principdefinitionen. |
policy |
Typen av principdefinition. Möjliga värden är NotSpecified, BuiltIn, Custom och Static. |
system |
Metadata som rör skapande och senaste ändring av resursen. |
CloudError
Ett felsvar från en principåtgärd.
Name | Typ | Description |
---|---|---|
error |
Felsvar |
createdByType
Den typ av identitet som skapade resursen.
Värde | Description |
---|---|
Application | |
Key | |
ManagedIdentity | |
User |
ErrorAdditionalInfo
Ytterligare information om resurshanteringsfelet.
Name | Typ | Description |
---|---|---|
info |
object |
Ytterligare information. |
type |
string |
Ytterligare informationstyp. |
ErrorResponse
Felsvar
Name | Typ | Description |
---|---|---|
additionalInfo |
Ytterligare information om felet. |
|
code |
string |
Felkoden. |
details |
Felinformationen. |
|
message |
string |
Felmeddelandet. |
target |
string |
Felmålet. |
Metadata
Allmänna metadata för parametern.
Name | Typ | Description |
---|---|---|
assignPermissions |
boolean |
Ställ in på true om du vill att Azure-portalen ska skapa rolltilldelningar på resurs-ID:t eller resursomfångsvärdet för den här parametern under principtilldelningen. Den här egenskapen är användbar om du vill tilldela behörigheter utanför tilldelningsomfånget. |
description |
string |
Beskrivningen av parametern. |
displayName |
string |
Visningsnamnet för parametern. |
strongType |
string |
Används när du tilldelar principdefinitionen via portalen. Innehåller en sammanhangsmedveten lista över värden som användaren kan välja mellan. |
ParameterDefinitionsValue
Definitionen av en parameter som kan anges för principen.
Name | Typ | Description |
---|---|---|
allowedValues |
object[] |
De tillåtna värdena för parametern. |
defaultValue |
object |
Standardvärdet för parametern om inget värde anges. |
metadata |
Allmänna metadata för parametern. |
|
schema |
object |
Tillhandahåller validering av parameterindata under tilldelningen med hjälp av ett självdefinierat JSON-schema. Den här egenskapen stöds endast för parametrar av objekttyp och följer implementeringen Json.NET Schema 2019-09. Du kan lära dig mer om att använda scheman på https://json-schema.org/ och testa utkastscheman på https://www.jsonschemavalidator.net/. |
type |
Parameterns datatyp. |
parameterType
Parameterns datatyp.
Värde | Description |
---|---|
Array | |
Boolean | |
DateTime | |
Float | |
Integer | |
Object | |
String |
PolicyDefinition
Principdefinitionen.
Name | Typ | Standardvärde | Description |
---|---|---|---|
id |
string |
ID:t för principdefinitionen. |
|
name |
string |
Namnet på principdefinitionen. |
|
properties.description |
string |
Beskrivningen av principdefinitionen. |
|
properties.displayName |
string |
Principdefinitionens visningsnamn. |
|
properties.metadata |
object |
Metadata för principdefinition. Metadata är ett öppet slutobjekt och är vanligtvis en samling nyckelvärdepar. |
|
properties.mode |
string |
Indexed |
Principdefinitionsläget. Några exempel är Alla, Indexerade, Microsoft.KeyVault.Data. |
properties.parameters |
<string,
Parameter |
Parameterdefinitionerna för parametrar som används i principregeln. Nycklarna är parameternamnen. |
|
properties.policyRule |
object |
Principregeln. |
|
properties.policyType |
Typen av principdefinition. Möjliga värden är NotSpecified, BuiltIn, Custom och Static. |
||
properties.version |
string |
Principdefinitionsversionen i #.#.#-format. |
|
properties.versions |
string[] |
En lista över tillgängliga versioner för den här principdefinitionen. |
|
systemData |
Systemmetadata för den här resursen. |
||
type |
string |
Resurstypen (Microsoft.Authorization/policyDefinitions). |
policyType
Typen av principdefinition. Möjliga värden är NotSpecified, BuiltIn, Custom och Static.
Värde | Description |
---|---|
BuiltIn | |
Custom | |
NotSpecified | |
Static |
systemData
Metadata som rör skapande och senaste ändring av resursen.
Name | Typ | Description |
---|---|---|
createdAt |
string (date-time) |
Tidsstämpeln för resursskapande (UTC). |
createdBy |
string |
Identiteten som skapade resursen. |
createdByType |
Den typ av identitet som skapade resursen. |
|
lastModifiedAt |
string (date-time) |
Tidsstämpeln för resursens senaste ändring (UTC) |
lastModifiedBy |
string |
Identiteten som senast ändrade resursen. |
lastModifiedByType |
Den typ av identitet som senast ändrade resursen. |