Policy Definitions - Create Or Update
Crée ou met à jour une définition de stratégie dans un abonnement.
Cette opération crée ou met à jour une définition de stratégie dans l’abonnement donné avec le nom donné.
PUT https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policyDefinitions/{policyDefinitionName}?api-version=2023-04-01
Paramètres URI
Nom | Dans | Obligatoire | Type | Description |
---|---|---|---|---|
policy
|
path | True |
string |
Nom de la définition de stratégie à créer. Regex pattern: |
subscription
|
path | True |
string uuid |
ID de l’abonnement cible. La valeur doit être un UUID. |
api-version
|
query | True |
string |
Version de l’API à utiliser pour cette opération. |
Corps de la demande
Nom | Type | Description |
---|---|---|
properties.description |
string |
Description de la définition de stratégie. |
properties.displayName |
string |
Nom d’affichage de la définition de stratégie. |
properties.metadata |
object |
Métadonnées de définition de stratégie. Les métadonnées sont un objet ouvert et sont généralement une collection de paires de valeurs de clé. |
properties.mode |
string |
Mode de définition de stratégie. Par exemple, All, Indexed, Microsoft.KeyVault.Data. |
properties.parameters |
<string,
Parameter |
Définitions de paramètres pour les paramètres utilisés dans la règle de stratégie. Les clés sont les noms des paramètres. |
properties.policyRule |
object |
Règle de stratégie. |
properties.policyType |
Type de définition de stratégie. Les valeurs possibles sont NotSpecified, BuiltIn, Custom et Static. |
|
properties.version |
string |
Version de la définition de stratégie au format #.#.#. |
properties.versions |
string[] |
Liste des versions disponibles pour cette définition de stratégie. |
Réponses
Nom | Type | Description |
---|---|---|
201 Created |
Créé : retourne des informations sur la définition de stratégie. |
|
Other Status Codes |
Réponse d’erreur décrivant la raison de l’échec de l’opération. |
Sécurité
azure_auth
Flux OAuth2 Azure Active Directory.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nom | Description |
---|---|
user_impersonation | Emprunter l’identité de votre compte d’utilisateur |
Exemples
Create or update a policy definition |
Create or update a policy definition with advanced parameters |
Create or update a policy definition
Sample Request
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"
}
}
}
}
}
Sample Response
{
"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
Sample Request
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"
}
}
}
}
}
Sample Response
{
"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"
}
}
}
}
}
Définitions
Nom | Description |
---|---|
Cloud |
Réponse d’erreur d’une opération de stratégie. |
created |
Type d’identité qui a créé la ressource. |
Error |
Informations supplémentaires sur l’erreur de gestion des ressources. |
Error |
Réponse d’erreur |
Metadata |
Métadonnées générales pour le paramètre. |
Parameter |
Définition d’un paramètre qui peut être fourni à la stratégie. |
parameter |
Type de données du paramètre. |
Policy |
Définition de stratégie. |
policy |
Type de définition de stratégie. Les valeurs possibles sont NotSpecified, BuiltIn, Custom et Static. |
system |
Métadonnées relatives à la création et à la dernière modification de la ressource. |
CloudError
Réponse d’erreur d’une opération de stratégie.
Nom | Type | Description |
---|---|---|
error |
Réponse d’erreur |
createdByType
Type d’identité qui a créé la ressource.
Nom | Type | Description |
---|---|---|
Application |
string |
|
Key |
string |
|
ManagedIdentity |
string |
|
User |
string |
ErrorAdditionalInfo
Informations supplémentaires sur l’erreur de gestion des ressources.
Nom | Type | Description |
---|---|---|
info |
object |
Informations supplémentaires |
type |
string |
Type d’informations supplémentaires. |
ErrorResponse
Réponse d’erreur
Nom | Type | Description |
---|---|---|
additionalInfo |
Informations supplémentaires sur l’erreur. |
|
code |
string |
Code d'erreur. |
details |
Détails de l’erreur. |
|
message |
string |
Message d’erreur. |
target |
string |
Cible d’erreur. |
Metadata
Métadonnées générales pour le paramètre.
Nom | Type | Description |
---|---|---|
assignPermissions |
boolean |
Définissez sur true pour avoir Portail Azure créer des attributions de rôles sur l’ID de ressource ou la valeur d’étendue de ressource de ce paramètre pendant l’attribution de stratégie. Cette propriété est utile si vous souhaitez attribuer des autorisations en dehors de l’étendue d’attribution. |
description |
string |
Description du paramètre. |
displayName |
string |
Nom d’affichage du paramètre. |
strongType |
string |
Utilisé lors de l’attribution de la définition de stratégie via le portail. Fournit une liste de valeurs contextuelles que l’utilisateur peut choisir. |
ParameterDefinitionsValue
Définition d’un paramètre qui peut être fourni à la stratégie.
Nom | Type | Description |
---|---|---|
allowedValues |
object[] |
Valeurs autorisées pour le paramètre. |
defaultValue |
object |
Valeur par défaut du paramètre si aucune valeur n’est fournie. |
metadata |
Métadonnées générales pour le paramètre. |
|
schema |
object |
Fournit la validation des entrées de paramètres pendant l’affectation à l’aide d’un schéma JSON auto-défini. Cette propriété est prise en charge uniquement pour les paramètres de type objet. Elle suit l’implémentation de la version du schéma Json.NET de septembre 2019. Vous pouvez en savoir plus sur l’utilisation des schémas en accédant à https://json-schema.org/ et vous pouvez tester les brouillons de schémas en accédant à https://www.jsonschemavalidator.net/. |
type |
Type de données du paramètre. |
parameterType
Type de données du paramètre.
Nom | Type | Description |
---|---|---|
Array |
string |
|
Boolean |
string |
|
DateTime |
string |
|
Float |
string |
|
Integer |
string |
|
Object |
string |
|
String |
string |
PolicyDefinition
Définition de stratégie.
Nom | Type | Valeur par défaut | Description |
---|---|---|---|
id |
string |
ID de la définition de stratégie. |
|
name |
string |
Nom de la définition de stratégie. |
|
properties.description |
string |
Description de la définition de stratégie. |
|
properties.displayName |
string |
Nom d’affichage de la définition de stratégie. |
|
properties.metadata |
object |
Métadonnées de définition de stratégie. Les métadonnées sont un objet ouvert et sont généralement une collection de paires de valeurs de clé. |
|
properties.mode |
string |
Indexed |
Mode de définition de stratégie. Par exemple, All, Indexed, Microsoft.KeyVault.Data. |
properties.parameters |
<string,
Parameter |
Définitions de paramètres pour les paramètres utilisés dans la règle de stratégie. Les clés sont les noms des paramètres. |
|
properties.policyRule |
object |
Règle de stratégie. |
|
properties.policyType |
Type de définition de stratégie. Les valeurs possibles sont NotSpecified, BuiltIn, Custom et Static. |
||
properties.version |
string |
Version de la définition de stratégie au format #.#.#. |
|
properties.versions |
string[] |
Liste des versions disponibles pour cette définition de stratégie. |
|
systemData |
Métadonnées système relatives à cette ressource. |
||
type |
string |
Type de la ressource (Microsoft.Authorization/policyDefinitions). |
policyType
Type de définition de stratégie. Les valeurs possibles sont NotSpecified, BuiltIn, Custom et Static.
Nom | Type | Description |
---|---|---|
BuiltIn |
string |
|
Custom |
string |
|
NotSpecified |
string |
|
Static |
string |
systemData
Métadonnées relatives à la création et à la dernière modification de la ressource.
Nom | Type | Description |
---|---|---|
createdAt |
string |
Horodatage de la création de ressources (UTC). |
createdBy |
string |
Identité qui a créé la ressource. |
createdByType |
Type d’identité qui a créé la ressource. |
|
lastModifiedAt |
string |
Horodatage de la dernière modification de la ressource (UTC) |
lastModifiedBy |
string |
Identité qui a modifié la dernière ressource. |
lastModifiedByType |
Type d’identité qui a modifié la dernière ressource. |