Partager via


Api Policy - Create Or Update

Crée ou met à jour la configuration de stratégie pour l’API.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies/policy?api-version=2021-08-01

Paramètres URI

Nom Dans Obligatoire Type Description
apiId
path True

string

Identificateur de révision d’API. Doit être unique dans le instance de service Gestion des API actuel. La révision non actuelle a ; rev=n comme suffixe où n est le numéro de révision.

Modèle d’expression régulière: ^[^*#&+:<>?]+$

policyId
path True

PolicyIdName

Identificateur de la stratégie.

resourceGroupName
path True

string

Nom du groupe de ressources.

serviceName
path True

string

Nom du service Gestion des API.

Modèle d’expression régulière: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

Informations d’identification d’abonnement qui identifient de manière unique l’abonnement Microsoft Azure. L’ID d’abonnement fait partie de l’URI pour chaque appel de service.

api-version
query True

string

Version de l’API à utiliser avec la demande du client.

En-tête de la demande

Nom Obligatoire Type Description
If-Match

string

ETag de l’entité. Non obligatoire lors de la création d’une entité, mais obligatoire lors de la mise à jour d’une entité.

Corps de la demande

Nom Obligatoire Type Description
properties.value True

string

Contenu de la stratégie telle que définie par le format.

properties.format

PolicyContentFormat

Format du policyContent.

Réponses

Nom Type Description
200 OK

PolicyContract

La configuration de la stratégie d’API du locataire a été correctement mise à jour.

En-têtes

ETag: string

201 Created

PolicyContract

La configuration de la stratégie d’API a été créée avec succès.

En-têtes

ETag: string

Other Status Codes

ErrorResponse

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
Flux: implicit
URL d’autorisation: https://login.microsoftonline.com/common/oauth2/authorize

Étendues

Nom Description
user_impersonation Emprunter l’identité de votre compte d’utilisateur

Exemples

ApiManagementCreateApiPolicy
ApiManagementCreateApiPolicyNonXmlEncoded

ApiManagementCreateApiPolicy

Exemple de requête

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy?api-version=2021-08-01


{
  "properties": {
    "format": "xml",
    "value": "<policies> <inbound /> <backend>    <forward-request />  </backend>  <outbound /></policies>"
  }
}

Exemple de réponse

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy",
  "type": "Microsoft.ApiManagement/service/apis/policies",
  "name": "policy",
  "properties": {
    "value": "<policies>\r\n  <inbound />\r\n  <backend>\r\n    <forward-request />\r\n  </backend>\r\n  <outbound />\r\n</policies>"
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy",
  "type": "Microsoft.ApiManagement/service/apis/policies",
  "name": "policy",
  "properties": {
    "value": "<policies>\r\n  <inbound />\r\n  <backend>\r\n    <forward-request />\r\n  </backend>\r\n  <outbound />\r\n</policies>"
  }
}

ApiManagementCreateApiPolicyNonXmlEncoded

Exemple de requête

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy?api-version=2021-08-01


{
  "properties": {
    "value": "<policies>\r\n     <inbound>\r\n     <base />\r\n  <set-header name=\"newvalue\" exists-action=\"override\">\r\n   <value>\"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" </value>\r\n    </set-header>\r\n  </inbound>\r\n      </policies>",
    "format": "rawxml"
  }
}

Exemple de réponse

{
  "id": "/subscriptions/4c1a3bc6-89f9-46fe-a175-5d8984b25095/resourcegroups/Api-DF-West-US/providers/Microsoft.ApiManagement/service/samirmsiservice2/apis/echo-api/operations/create-resource/policies/policy",
  "type": "Microsoft.ApiManagement/service/apis/operations/policies",
  "name": "policy",
  "properties": {
    "value": "<policies>\r\n  <inbound>\r\n    <base />\r\n    <set-header name=\"newvalue\" exists-action=\"override\">\r\n      <value>\"@(context.Request.Headers.FirstOrDefault(h =&gt; h.Ke==\"Via\"))\" </value>\r\n    </set-header>\r\n  </inbound>\r\n</policies>"
  }
}
{
  "id": "/subscriptions/4c1a3bc6-89f9-46fe-a175-5d8984b25095/resourcegroups/Api-DF-West-US/providers/Microsoft.ApiManagement/service/samirmsiservice2/apis/echo-api/operations/create-resource/policies/policy",
  "type": "Microsoft.ApiManagement/service/apis/operations/policies",
  "name": "policy",
  "properties": {
    "value": "<policies>\r\n  <inbound>\r\n    <base />\r\n    <set-header name=\"newvalue\" exists-action=\"override\">\r\n      <value>\"@(context.Request.Headers.FirstOrDefault(h =&gt; h.Ke==\"Via\"))\" </value>\r\n    </set-header>\r\n  </inbound>\r\n</policies>"
  }
}

Définitions

Nom Description
ErrorFieldContract

Contrat de champ d’erreur.

ErrorResponse

Réponse d’erreur.

PolicyContentFormat

Format du policyContent.

PolicyContract

Détails du contrat de stratégie.

PolicyIdName

Identificateur de la stratégie.

ErrorFieldContract

Contrat de champ d’erreur.

Nom Type Description
code

string

Code d'erreur de niveau propriété.

message

string

Représentation lisible par l’homme de l’erreur au niveau des propriétés.

target

string

Nom de propriété.

ErrorResponse

Réponse d’erreur.

Nom Type Description
error.code

string

Code d'erreur défini par le service. Ce code sert de sous-état pour le code d'erreur HTTP spécifié dans la réponse.

error.details

ErrorFieldContract[]

Liste des champs non valides envoyés dans la demande, en cas d’erreur de validation.

error.message

string

Représentation contrôlable de visu de l’erreur.

PolicyContentFormat

Format du policyContent.

Nom Type Description
rawxml

string

Le contenu est inline et le type de contenu est un document de stratégie non encodé en XML.

rawxml-link

string

Le document de stratégie n’est pas encodé en Xml et est hébergé sur un point de terminaison http accessible à partir du service Gestion des API.

xml

string

Le contenu est inline et le type de contenu est un document XML.

xml-link

string

Le document XML de stratégie est hébergé sur un point de terminaison http accessible à partir du service Gestion des API.

PolicyContract

Détails du contrat de stratégie.

Nom Type Valeur par défaut Description
id

string

ID de ressource complet pour la ressource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

nom de la ressource.

properties.format

PolicyContentFormat

xml

Format du policyContent.

properties.value

string

Contenu de la stratégie telle que définie par le format.

type

string

Type de la ressource. Par exemple, « Microsoft.Compute/virtualMachines » ou « Microsoft.Storage/storageAccounts »

PolicyIdName

Identificateur de la stratégie.

Nom Type Description
policy

string