API Security Actions

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

Confira a documentação da Apigee Edge.

Nesta página, descrevemos como gerenciar ações de segurança usando as APIs de gerenciamento do Apigee. Para ter uma visão geral da funcionalidade de ações de segurança, incluindo limitações e latências, consulte Visão geral e interface das ações de segurança.

É possível acessar todos os recursos de ações de segurança pelas APIs de gerenciamento da Apigee. Consulte a referência da API Security Actions para informações sobre todos os comandos disponíveis. Esta página mostra exemplos de alguns dos comandos disponíveis.

Variáveis usadas nos exemplos

Os exemplos nesta página podem incluir estas variáveis:

  • ORG é a organização.
  • ENV é o ambiente da ação de segurança.
  • ACTION_NAME é o nome da ação de segurança.

Criar ações de segurança

Esta seção mostra exemplos de como criar ações de segurança com diferentes tipos de ações.

Criar uma ação de negação

Para criar uma ação de negação, digite um comando semelhante ao seguinte:

curl -X POST "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions?security_action_id=ACTION_NAME \
       -H "Authorization: Bearer $TOKEN" \
       -H "Content-Type: application/json" \
       -d '{"state": "ENABLED", "deny": {"response_code": 404}, "condition_config": {"ip_address_ranges": ["100.0.225.0"]}}'

Isso cria uma ação de segurança que nega acesso a solicitações para os endereços IP listados após ip_address_ranges e retorna um código de resposta 404.

Criar uma ação de sinalização

Para criar uma ação de sinalização, insira um comando semelhante ao seguinte:

curl -X POST "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions?security_action_id=ACTION_NAME" \
       -H "Authorization: Bearer $TOKEN" \
       -H "Content-Type: application/json" \
       -d '{"state": "ENABLED", "flag": {"headers": [{"name": "senseflag", "value": "flagvalue"}]}, "condition_config": {"ip_address_ranges": ["100.0.230.0"]}}'

Isso cria uma ação de segurança que sinaliza as solicitações dos endereços IP listados após ip_address_ranges e adiciona um cabeçalho senseflag com o valor flagvalue.

Criar uma ação de permissão

Para criar uma ação de permissão, insira um comando semelhante ao seguinte:

curl -X POST "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions?security_action_id=ACTION_NAME \
       -H "Authorization: Bearer $TOKEN" \
       -H "Content-Type: application/json" \
       -d '{"state": "ENABLED", "allow": {}, "condition_config": {"ip_address_ranges": ["100.0.220.0", "200.0.0.0"]}}'

Isso cria uma ação de segurança que permite solicitações dos endereços IP listados após ip_address_ranges.

Editar ações de segurança

Nesta seção, mostramos um exemplo de como editar uma configuração de ação de segurança. Consulte Ativar ou desativar uma ação de segurança ou Excluir uma ação de segurança para ver exemplos desses tipos de mudanças.

Editar uma ação de negação

Esta seção mostra um exemplo de edição de uma ação de negação. As APIs também permitem editar os outros tipos de ação.

update_mask pode incluir qualquer uma destas opções: description,condition_config, api_proxies,expire_time,ttl,flag,allow,deny,* (tudo) ou omitido (padrão para tudo).

Consulte a documentação de referência da API Security Actions para mais informações sobre valores possíveis ao editar ações.

  curl -X PATCH "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions/ACTION_NAME?update_mask=deny,condition_config" \
         -H "Authorization: Bearer $TOKEN" \
         -d '{"deny": {"response_code": 404}, "condition_config": {"ip_address_ranges": ["100.0.230.0"]}}' \
         -H "Content-Type: application/json"
         {
           "name": "ACTION_NAME",
           "state": "ENABLED",
           "createTime": "2022-12-29T18:28:50Z",
           "updateTime": "2022-12-29T18:28:50Z",
           "conditionConfig": {
             "ipAddressRanges": [
               "100.0.230.0"
             ]
           },
           "deny": {
             "responseCode": 404
           }
         }

Ativar ou desativar uma ação de segurança

Os exemplos a seguir mostram chamadas de API para ativar ou desativar ações de segurança.

Ativar uma ação de segurança

Para ativar uma ação de segurança, digite um comando semelhante ao seguinte:

curl -X POST "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions/ACTION_NAME:enable"
       -H "Authorization: Bearer $TOKEN"

Isso retorna uma resposta como a seguinte:

{
      "name": "ACTION_NAME",
      "state": "ENABLED",
      "createTime": "2022-12-29T18:27:31Z",
      "updateTime": "2023-01-03T23:19:26.650965481Z",
      "conditionConfig": {
        "ipAddressRanges": [
          "100.0.220.0",
          "200.0.0.0"
        ]
      },
      "allow": {},
      "expireTime": "2028-01-01T00:00:00Z"
}

Desativar uma ação de segurança

Para desativar uma ação de segurança, insira um comando semelhante ao seguinte:

curl -X POST "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions/ACTION_NAME:disable"
       -H "Authorization: Bearer $TOKEN"

Isso retorna uma resposta como a seguinte:

{
      "name": "actionallow",
      "state": "DISABLED",
      "createTime": "2022-12-29T18:27:31Z",
      "updateTime": "2023-01-03T23:13:04.874540001Z",
      "conditionConfig": {
        "ipAddressRanges": [
          "100.0.220.0",
          "200.0.0.0"
        ]
      },
      "allow": {},
      "expireTime": "2028-01-01T00:00:00Z"
}

Receber ou listar ações de segurança

Os exemplos a seguir mostram como acessar ou listar ações de segurança

Realizar uma ação de segurança

Para receber uma ação de segurança, digite um comando semelhante ao seguinte:

curl -X GET "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions/ACTION_NAME"
       -H "Authorization: Bearer $TOKEN"

Isso retorna uma resposta como a seguinte:

{
      "name": "ACTION_NAME",
      "state": "DISABLED",
      "createTime": "2022-12-29T18:27:31Z",
      "updateTime": "2023-01-03T23:13:04Z",
      "conditionConfig": {
        "ipAddressRanges": [
          "100.0.220.0",
          "200.0.0.0"
        ]
      },
      "allow": {},
      "expireTime": "2028-01-01T00:00:00Z"
}

Listar ações de segurança

Para listar todas as ações de segurança, digite um comando semelhante ao seguinte:

curl -X GET "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions"
       -H "Authorization: Bearer $TOKEN"

Pausar ou retomar ações de segurança

Os exemplos a seguir mostram como pausar ou retomar ações de segurança

Pausar todas as ações de segurança

Para pausar todas as ações de segurança, digite um comando semelhante ao seguinte:

curl -X PATCH "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActionsConfig" \
       -H "Authorization: Bearer $TOKEN" \
       -H "Content-Type: application/json" \
       -d '{"enabled": "false", "name": "organizations/ORG/environments/ENV/securityActionsConfig"}'

Isso retorna uma resposta como a seguinte:

{
      "name": "organizations/ORG/environments/ENV/securityActionsConfig",
      "enabled": false,
      "updateTime": "2023-01-23T21:44:58.063807Z"
}

Retomar ações de segurança pausadas

Para retomar as ações de segurança pausadas, digite um comando semelhante ao seguinte:

curl -X PATCH "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActionsConfig" \
       -H "Authorization: Bearer $TOKEN" \
       -H "Content-Type: application/json" \
       -d '{"enabled": "true", "name": "organizations/ORG/environments/ENV/securityActionsConfig"}'

Isso retorna uma resposta como a seguinte:

{
      "name": "organizations/ORG/environments/ENV/securityActionsConfig",
      "enabled": true,
      "updateTime": "2023-01-23T21:44:58.063807Z"
}

Excluir ações de segurança

Para excluir uma ação de segurança, digite um comando semelhante ao seguinte:

curl -X DELETE "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityActions/ACTION_NAME"
       -H "Authorization: Bearer $TOKEN"