安全操作 API

本页面适用于 ApigeeApigee Hybrid

查看 Apigee Edge 文档。

本页介绍了如何使用 Apigee Management API 管理安全操作。如需概括了解安全操作功能(包括限制和延迟时间),请参阅安全操作概览和界面

您可以通过 Apigee Management API 访问所有安全操作功能。如需了解所有可用命令,请参阅 Security Actions API 参考文档。本页展示了一些可用命令的示例。

示例中使用的变量

本页中的示例可以包含以下变量:

  • ORG 是组织。
  • ENV 是安全操作的环境。
  • ACTION_NAME 是安全操作的名称。

创建安全操作

本部分提供了有关如何创建具有不同操作类型的安全操作的示例。

创建拒绝操作

如需创建拒绝操作,请输入如下所示的命令:

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

这将创建一项安全操作,以拒绝来自 ip_address_ranges 后列出的 IP 地址的请求,并返回响应代码 404

创建标志操作

如需创建标志操作,请输入如下所示的命令:

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

这将创建一项安全操作,以标记来自 ip_address_ranges 后列出的 IP 地址的请求,并添加值为 flagvalue 的标头 senseflag

创建允许操作

如需创建允许操作,请输入如下所示的命令:

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

这将创建一项安全操作,以允许来自 ip_address_ranges 后列出的 IP 地址的请求。

修改安全操作

本部分提供了一个示例,说明如何修改现有的安全操作配置。如需查看这些类型更改的示例,请参阅启用或停用安全操作删除安全操作

修改拒绝操作

本部分展示了修改拒绝操作的示例。这些 API 还支持修改其他操作类型

update_mask 可以包含以下任一选项:description,condition_config, api_proxies,expire_time,ttl,flag,allow,deny,*(所有内容),或省略(默认为所有内容)。

如需详细了解修改操作时的潜在值,请参阅“安全操作”API 参考文档

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

启用或停用安全操作

以下示例展示了启用或停用安全操作的 API 调用。

启用安全操作

如需启用安全操作,请输入如下所示的命令:

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

这会返回如下所示的响应:

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

停用安全操作

如需停用安全操作,请输入如下所示的命令:

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

这会返回如下所示的响应:

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

获取或列出安全操作

以下示例展示了如何获取或列出安全操作

获取安全操作

如需获取安全操作,请输入如下所示的命令:

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

这会返回如下所示的响应:

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

列出安全操作

如需列出所有安全操作,请输入如下所示的命令:

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

暂停或继续执行安全操作

以下示例展示了如何暂停或继续执行安全操作

暂停所有安全操作

如需暂停所有安全操作,请输入如下所示的命令:

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

这会返回如下所示的响应:

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

继续执行暂停的安全操作

如需继续执行暂停的安全操作,请输入类似于以下内容的命令:

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

这会返回如下所示的响应:

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

删除安全操作

如需删除安全操作,请输入如下所示的命令:

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