Partilhar via


Api Policy - Create Or Update

Cria ou atualiza a configuração da política para a API.

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

Parâmetros do URI

Name Em Necessário Tipo Description
apiId
path True

string

Identificador de revisão da API. Tem de ser exclusivo na instância de serviço de Gestão de API atual. A revisão não atual tem ; rev=n como um sufixo em que n é o número de revisão.

Padrão Regex: ^[^*#&+:<>?]+$

policyId
path True

PolicyIdName

O identificador da Política.

resourceGroupName
path True

string

O nome do grupo de recursos.

serviceName
path True

string

O nome do serviço Gestão de API.

Padrão Regex: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

Credenciais de subscrição que identificam exclusivamente a subscrição do Microsoft Azure. O ID da subscrição faz parte do URI para cada chamada de serviço.

api-version
query True

string

Versão da API a utilizar com o pedido de cliente.

Cabeçalho do Pedido

Name Necessário Tipo Description
If-Match

string

ETag da Entidade. Não é necessário ao criar uma entidade, mas é necessário ao atualizar uma entidade.

Corpo do Pedido

Name Necessário Tipo Description
properties.value True

string

Conteúdo da Política conforme definido pelo formato.

properties.format

PolicyContentFormat

Formato da políticaContent.

Respostas

Name Tipo Description
200 OK

PolicyContract

A configuração da política de API do inquilino foi atualizada com êxito.

Cabeçalhos

ETag: string

201 Created

PolicyContract

A configuração da política de API foi criada com êxito.

Cabeçalhos

ETag: string

Other Status Codes

ErrorResponse

Resposta de erro que descreve a razão pela qual a operação falhou.

Segurança

azure_auth

Fluxo OAuth2 do Azure Active Directory.

Tipo: oauth2
Fluxo: implicit
URL de Autorização: https://login.microsoftonline.com/common/oauth2/authorize

Âmbitos

Name Description
user_impersonation representar a sua conta de utilizador

Exemplos

ApiManagementCreateApiPolicy
ApiManagementCreateApiPolicyNonXmlEncoded

ApiManagementCreateApiPolicy

Pedido de amostra

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>"
  }
}

Resposta da amostra

{
  "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

Pedido de amostra

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"
  }
}

Resposta da amostra

{
  "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>"
  }
}

Definições

Name Description
ErrorFieldContract

Contrato de campo de erro.

ErrorResponse

Resposta a Erros.

PolicyContentFormat

Formato da políticaContent.

PolicyContract

Detalhes do Contrato de Política.

PolicyIdName

O identificador da Política.

ErrorFieldContract

Contrato de campo de erro.

Name Tipo Description
code

string

Código de erro ao nível da propriedade.

message

string

Representação legível por humanos do erro ao nível da propriedade.

target

string

Nome da propriedade.

ErrorResponse

Resposta a Erros.

Name Tipo Description
error.code

string

Código de erro definido pelo serviço. Este código serve como um sub-estado para o código de erro HTTP especificado na resposta.

error.details

ErrorFieldContract[]

A lista de campos inválidos enviados a pedido, em caso de erro de validação.

error.message

string

Representação legível por humanos do erro.

PolicyContentFormat

Formato da políticaContent.

Name Tipo Description
rawxml

string

Os conteúdos estão inline e o Tipo de conteúdo é um documento de política não codificado XML.

rawxml-link

string

O documento de política não está codificado em Xml e está alojado num ponto final http acessível a partir do serviço Gestão de API.

xml

string

Os conteúdos estão inline e o Tipo de conteúdo é um documento XML.

xml-link

string

O documento XML de política está alojado num ponto final http acessível a partir do serviço Gestão de API.

PolicyContract

Detalhes do Contrato de Política.

Name Tipo Default value Description
id

string

ID de recurso completamente qualificado para o recurso. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

O nome do recurso

properties.format

PolicyContentFormat

xml

Formato da políticaContent.

properties.value

string

Conteúdo da Política conforme definido pelo formato.

type

string

O tipo de recurso. Por exemplo, "Microsoft.Compute/virtualMachines" ou "Microsoft.Storage/storageAccounts"

PolicyIdName

O identificador da Política.

Name Tipo Description
policy

string