Como anexar e configurar políticas na interface

Esta página se aplica à Apigee e à Apigee híbrida.

Confira a documentação da Apigee Edge.

Adicionar recursos baseados em políticas a um proxy de API é um processo de duas etapas:

  1. Configurar uma instância de um tipo de política.
  2. Anexar a instância da política a um fluxo.

O diagrama abaixo mostra a relação entre políticas e fluxos. Como é possível ver, a política está anexada a um fluxo como uma etapa de processamento. Para configurar o comportamento desejado para a API, é preciso entender um pouco de fluxos. Esse tópico foi abordado anteriormente em Como configurar fluxos.

Relação entre políticas e fluxos

Um tipo de política normalmente usado é a política SpikeArrest. O SpikeArrest impede aumentos repentinos no tráfego de mensagens, o que pode ofuscar seus serviços de back-end.

Como anexar uma política a um fluxo

Novo Editor de proxy

Para anexar uma política a um fluxo, faça o seguinte:

  1. Selecione um proxy de API e navegue até a visualização Desenvolver.
  2. No painel à esquerda, clique no botão + na linha Políticas.
  3. Na caixa de diálogo Criar política clique no campo Selecionar tipo de políticae role para baixo atéGerenciamento de tráfego e selecioneSpikeArrest.

  4. Também é possível alterar o Nome de exibição e o Nome da política.

    Caixa de diálogo "Criar política".

    Quando terminar, clique em Criar para criar a política.

  5. Agora que você criou a política Spike Arrest, poderá anexá-la a uma etapa no PreFlow. Para fazer isso, selecione Proxy Endpoints > default > PreFlow no painel à esquerda:

    Os endpoints de destino do PreFlow são selecionados no Proxy Explorer.

  6. Clique no botão + ao lado de PreFlow no painel Response no canto inferior direito do Editor de recursos visuais:

    Clique no botão "+" ao lado de "PreFlow" no painel "Response".

  7. Na caixa de diálogo Adicionar política, selecione a política Spike Arrest.
  8. Clique em Adicionar para anexar a política.

    A política Spike Arrest agora é exibida no painel Response:

    Política "Spike Arrest" exibida no painel "Response".

    O código XML a seguir para o proxy é exibido no editor de texto:

    <ProxyEndpoint name="default">
      <PreFlow name="PreFlow">
        <Request/>
        <Response>
          <Step><
            <Name>SA-</Name>
          </Step>
        </Response>
      </PreFlow>
      <Flows/>
      <PostFlow name="PostFlow">
        <Request/>
        <Response/>
      </PostFlow>
      <HTTPProxyConnection>
        <BasePath>/myproxy</BasePath>
      </HTTPProxyConnection>
      <RouteRule name="default">
        <TargetEndpoint>default</TargetEndpoint>
      </RouteRule>
    </ProxyEndpoint>
      

Detaching policies from a flow

To detach a policy from a flow, click the three-dot menu next to the flow and select Delete policy step

Classic Proxy Editor

To attach a policy to a flow:

  1. Select an API proxy and navigate to the Develop view.
  2. In the API Proxy Editor, select the flow to which you want to attach a policy in the Navigator pane.
    For example, the PreFlow flow is selected for the default API proxy endpoint in the following figure:
    Select flow to which you want to attach policy
  3. In the Design view, click +Step associated with the request or response flow to attach a policy. For example:
    Click +Step
    The Add Step dialog opens displaying a categorized list of policies.
    List of policies in categories
  4. Scroll and select the policy type that you want to attach to the selected flow.
  5. Modify the following fields.
    • Display Name: Unique display name for the policy. The UI will generate a default name, but it is advisable to create a descriptive name for the policy. This will ensure that other developers in your organization have an easy time understanding what the policy is intended to do.

    • Name: Unique name for the policy. The policy name matches the display name with the following exceptions:

      • Spaces are replaced by dashes.

      • Consecutive dashes are replaced by a single dash.

      • Except for dashes, underscores, and spaces (which are replaced, as noted above), characters that are not alphanumeric, such as pound signs, percent signs, ampersands, and so on, are removed.

  6. Click Add.

    The policy is attached to the selected flow.

After the policy is attached, you’ll see the policy displayed in the Designer view for the flow, in this example the PreFlow of the default proxy endpoint, and in the Policies list in the Navigation pane. The Code view, which displays the XML for the newly attached policy, displays below the Designer view. Apigee generates an instance of the policy that contains a set of reasonable default values.

Policies in the PreFlow in the Designer and Code view

Adding a policy without attaching it to a flow

To add a policy without attaching it to a flow, which is useful for Handling faults, click + in the Policies bar in the Navigator view to open the Add Policy dialog and add the policy (as described in steps 4 through 6 in the previous section).

Click + to add policy

A policy that is not attached to any flow is flagged with the detached icon in the Policies list, as shown adjacent to the API key message policy shown in the previous figure.

After you create the policy, you can attach it to a flow by dragging and dropping it from the Policies list to the desired flow in the Designer view.

Detaching policies from a flow

To detach a policy from a Flow, select the Flow. Mouse over the icon for the policy in the Designer view of the Flow. Click the X in the circle that appears in the icon.

Deleting a policy instance

To delete a policy instance, mouse over the entry for the policy in the Navigator view. Click the X in the circle that appears to the right of the entry.

Configuring policies in the UI

When the UI generates a policy instance, it applies reasonable default values for common settings. You may need to modify these settings to meet your requirements.

For example:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SpikeArrest async="false" continueOnError="false" enabled="true" name="spikearrest-1">
  <DisplayName>SpikeArrest-1</DisplayName>
  <FaultRules/>
  <Properties/>
  <Identifier ref="request.header.some-header-name"/>
  <MessageWeight ref="request.header.weight"/>
  <Rate>30ps</Rate>
</SpikeArrest>

Você pode configurar uma política editando diretamente a configuração XML na visualização Código. Por exemplo, a taxa máxima de mensagens da política Spike Arrest é definida inicialmente como 30 mensagens por segundo. Para alterar essa taxa, mude o valor do elemento <Rate> no XML da política. Para mais detalhes sobre como configurar políticas, consulte a referência de políticas.

Também é possível cortar e colar políticas na visualização Código. Essa é uma ótima maneira de reutilizar políticas das amostras disponíveis no GitHub.

Quando você faz alterações em uma definição de política na visualização Código, as alterações são refletidas no Inspetor de propriedades. O inverso também é verdadeiro: faça alterações no Inspetor de propriedades, e elas aparecerão no XML na visualização Código.

Para ver a documentação específica da política de cotas usada neste tópico, consulte Política de cotas.

Use a explicação do código do Gemini Code Assist com políticas

Se você tiver o Gemini Code Assist, poderá usá-lo para entender as políticas e os elementos delas diretamente na interface da Apigee no console do Cloud:

  • Ao editar a política na visualização Code, destaque parte do código dela, como um elemento ou atributo XML. Também é possível destacar vários elementos.
  • Clique no ícone do Gemini Code Assist, conforme mostrado abaixo. O painel lateral mostra informações sobre a política e o elemento destacado.

Explicação de código do Gemini Code Assist