180608 - 适用于公有云的 Apigee Edge 版本说明

您正在查看的是 Apigee Edge 文档。
转到 Apigee X 文档
信息

2018 年 9 月 24 日(星期一),我们开始发布适用于公有云的新版 Apigee Edge。

Private Cloud 客户:此云版本是否包含在您的 Private Cloud 版本中?查看版本的版本说明,了解其中包含哪些云版本。此外,请参阅关于版本编号,了解如何通过比较版本号来弄清楚。

疑问或问题请点击此处获取帮助

版本通知:请前往 http://status.apigee.com,然后点击订阅更新

版本说明首页

新功能和最新动态

以下是此版本中的新功能和更新。

问题 ID 组件名称 说明
67506562 API 运行时

JavaScript 政策中的 SSL/TLS 支持

通过 JavaScript 政策,您可以为对外部服务的安全 SSL/TLS 调用配置 <SSLInfo>。如需了解详情,请参阅 JavaScript 政策文档。

77149507 API 运行时

Edge 路由器可用的 SSL/TLS 变量

当 Edge 公有云从 Netty 路由器切换到 Nginx 后,某些 SSL/TLS 流变量不再可用。经过此次更新,某些 SSL/TLS 变量会重新可用。 如需了解详情,请参阅访问 API 代理中的 TLS 连接信息

67310628 API 运行时

httpClient 中用于改进调用的 JavaScript 回调支持

借助 Apigee JavaScript 对象模型中的 httpClient 对象,您可以从 API 代理调用外部服务。httpClient 现在支持回调,让您无需 waitForComplete() 即可简化调用程序代码,并发出更高效的调用程序。

示例:之前

ex1 = httpClient.get("http://example.com");
ex1.waitForComplete();

if (ex1.isSuccess())  {
    response1 = ex1.getResponse();
    context.setVariable('example.status',response1.status);
} else {
   error = ex1.getError();
   context.setVariable('example.error','Woops: ' + error);
}

示例:现在

function onComplete(response, error) {
    if (response) {
        context.setVariable('example.status', response.status);
    } else {
       context.setVariable('example.error', 'Woops: ' + error);
    }
}
// Function callback allowed as an argument.
httpClient.get("http://example.com", onComplete);
80298811 管理服务器

新版 Management API(Beta 版):更新分配给使用方密钥的 API 产品

开发者应用具有与特定 API 产品相关联的使用方/API 密钥。新的 Management API(Beta 版)可让您更改与单个使用方密钥关联的 API 产品。

在以下 c网址 示例中,假设使用方键已与名为 product1 的产品关联。API 调用会更改使用方密钥,使其与 product2product3 相关联:

JSON 载荷

curl -i -X PUT -H "Content-Type: application/json" \
"https://api.enterprise.apigee.com/v1/organizations/org_name/\
developers/developer_email_or_id/apps/app_name/\
keys/consumer_key/apiproducts" \
-d '["product2","product3"]' \
-u account_email

XML 载荷

curl -i -X PUT -H "Content-Type: application/xml" \
"https://api.enterprise.apigee.com/v1/organizations/org_name/\
developers/developer_email_or_id/apps/app_name/\
keys/consumer_key/apiproducts" \
-d '<List><Item>product2</Item><Item>product3</Item></List>' \
-u account_email
113700413 托管的目标

令牌刷新逻辑损坏

112481174 托管的目标

不会因 Turbo 错误而导致代理取消部署失败

111443934 托管的目标

简化 Edge 中的 Deployment API 实现

110897740 托管的目标

为 Turbo 应用/修订版本实现适当的删除支持

110894391 托管的目标

在 Edge 中重构 TurboService 以简化 HTTP 请求/重试

110377069 分析

新增了分析维度并更改为“x_forwarded_for_ip”维度

随着 Edge for the Cloud 的发布,Edge 在 Edge Analytics 中设置 x_forwarded_for_ip 维度的方式已发生变化。以前,如果 X-Forwarded-For 标头中有多个 IP 地址,则 x_forwarded_for_ip 维度仅包含列出的最后一个 IP 地址。客户通常使用 x_forwarded_for_ip 维度来确定向 Edge 发出 API 请求的客户端的 IP 地址。

在此版本中,x_forwarded_for_ip 维度现在在 X-Forwarded-For 标头中包含 IP 地址的完整列表。

警告X-Forwarded-For 标头可能会被访问遭拒的 IP 伪造,但标头中的最后一个地址(即边缘从上次外部 TCP 握手收到的 IP 地址)除外。为了确定向 Edge 发出 API 请求的原始客户端 IP 地址,此版本为 Edge Analytics 新增了一个维度:ax_resolved_client_ip

您现在可以在自定义报告或自定义报告的过滤条件中使用 ax_resolved_client_ip 维度,以确定发出 API 请求的客户端的 IP 地址。如需详细了解 ax_resolved_client_ip 维度,请参阅 Google Analytics(分析)指标、维度和过滤器参考文档

此更改还会影响 AccessControl 政策处理 X-Forwarded-For 标头的方式。您无需再在组织中设置 feature.enableMultipleXForwardCheckForACL 属性,即可将 X-Forwarded-For 标头配置为包含多个 IP 地址。但是,对于 Private Cloud 的 Edge,仍然需要此设置。如需了解详情,请参阅关于 X-Forwarded-For HTTP 标头

109955269 API 运行时

更新了版本分支 Release_180608 的 fh.properties

80154696 管理服务器

在部署和取消部署状态响应中包含每个服务器的区域和服务器详细信息

80096158 变现

在创收数据集中添加开发者电子邮件地址

80088703 变现

还原 BigQuery 的默认标志

79980234 API 运行时

为不同的资源文件添加资源类型

79979555 API 运行时

在执行创建/读取操作时确保父实体存在

79445195 Edge Micro

调用管理 API 时,Microgate 支持 mTLS

79165169 API 运行时

Sonar:查看每个目标的目标 http 状态和延迟时间

79094567 变现

在创收摘要报告中添加“开发者电子邮件地址”列

78910936 API 运行时

将 MP 对 isSenseEnabled 的依赖项迁移到 sense.protection

78911890 管理服务器

新增的内置 Sense 用户角色:SenseOperator 和 SenseUser

78535353 API 运行时

修复了路由器位于 GCP http(s) GLB 之后时的 XFF 问题

78304706 API 运行时

MP 应添加与合规性相关的标头

78297238 API 运行时

在路由器中添加 HTTP 标头以确保 PCI 合规性

77543608 变现

创收:添加“找不到组织资料”

72232364 变现

为每个组织创建创收环境

已修复的错误

此版本中修复了以下 Bug。此列表主要供用户检查其支持服务工单是否已修复。而不是为所有用户提供详细信息。

问题 ID 组件名称 说明
113267243 API 运行时

从 jstack-local-copy 中清除的 jstack 不够快。

113222974 API 运行时

MP 中的磁盘会填满大量 system.log*.tmp 文件

111671525 托管的目标

来自 HT 的非成功响应代码会触发代理中的故障流

111416863 API 运行时

组织中有一个代理未在 180608_03 版本中部署

111073791 增强型

如果不断抛出错误,轮询逻辑可能会永久运行

110924838 API 运行时

试用 Pod 路由器不为 R180608 中的虚拟主机加载上游

110425503 API 运行时

nginx 重新加载会导致 MP 可用性问题

79541171 API 运行时

x_forwarded_for_ip 分析维度仅报告列表中的第一个 IP 地址。系统应报告完整的列表。

进行内部修复,以支持未来的产品更新。

109673863 API 运行时

修复允许删除正在使用的虚拟主机的 bug

80538530 API 运行时

客户端无法部署新的代理修订版本

80429941 API 运行时

CassandraRepositoryDelegate.exists() 始终针对 /apiproxies/*/maskconfigs/* 路径返回 true

80207872 API 运行时

向 Configstore 服务添加日志记录,以便在启动时更轻松地分辨您使用的配置

80203732 API 运行时

在 DeploymentStatusService http 客户端中更好地处理内容类型

79993247 API 运行时

向 Node.js 目标发送的 HEAD 请求挂起

79944922 API 运行时

Hosted 目标软件包部署失败,原因是 Messaging.resource.UnknownResourceType

79939838 API 运行时

将 build.info 文件与 kokoro 搭配使用以实现优质的 Db 集成

79939496 API 运行时

OAuth 令牌创建失败并显示 NumberFormatException

79882402 API 运行时

JWT:VerifyJWT 中的 TimeAllowance 未正确处理

79876202 变现

在删除组织的过程中,从 mxgroup 清理 Mint 范围

79752674 管理服务器

提取开发者电子邮件地址中的开发者 ID 时,忽略应用和公司加载

79697050 API 运行时

修复了非 CPS 流程中的日结余计算 bug

79657368 API 运行时

API 代理部署错误

79615400 变现

默认将 bigQuery 标志设置为 true

79578681 API 运行时

Cassandra 大型 KMS 密钥空间问题

79439193 变现

组织赠金金额重置未按预期方式执行

79418654 变现

为异步详细报告添加英文逗号分隔符

79221633 API 运行时

退出 NIOThread

78200288 管理服务器

如果您断开 MP 与路由器的连接,然后重新连接路由器,则某些部署会失败

78190575 API 运行时

确保微内核进程重启不会导致重复的 Consul 服务标记

78088197 API 运行时

为 Management Server 排除 TLS 加密套件不起作用

77735168 API 运行时

MP 中的大型 *.tmp 日志文件会填满磁盘

74484305 变现

CPS 迁移后 -> suspended_developers GET 调用不返回新 ID

73597605 API 运行时

SharedFlow - MessageLogging 政策不执行

69045657 管理服务器

上传具有 LoadBalancer 目标或 SSLInfo KeyStore 配置的单个 ServiceCallout 政策会导致 NullPointerException

67664750 变现

无法删除创收数据

67517550 管理服务器

代理软件包复制延迟时间较长导致部署失败

67176875 变现

如果使用开发者专用的费率方案,/delete-org-data 会失败