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

您正在查看 Apigee Edge 文档。
前往 Apigee X 文档
信息

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

私有云客户:此云版本是否包含在您的私有云版本中?请参阅您所用版本的版本说明,了解其中包含哪些云版本。另请参阅发布版本编号简介,了解如何通过比较发布版本号来确定发布版本。

疑问或问题:与 Apigee Edge 支持团队联系

版本通知:请前往 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 管理服务器

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

开发者应用具有与特定 API 产品关联的使用方密钥/API 密钥。借助新的管理 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 中的部署 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 欺骗,但标头中的最后一个地址(即 Edge 从最后一次外部 TCP 握手中收到的 IP 地址)除外。 为了确定向 Edge 发出 API 请求的原始客户端 IP 地址,此版本为 Edge Analytics 添加了一个新的维度:ax_resolved_client_ip

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

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

109955269 API 运行时

更新了发布分支 Release_180608 的 fh.properties

80154696 管理服务器

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

80096158 创收

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

80088703 创收

恢复 BigQuery 的默认标志

79980234 API 运行时

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

79979555 API 运行时

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

79445195 Edge Micro

在调用管理 API 时,微网关支持 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

此版本中修复了以下 Bug。此列表主要供用户检查其支持服务工单中的问题是否已修复,并非旨在为所有用户提供详细信息。

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

来自 jstack-local-copy 的 jstack 清除速度不够快。

113222974 API 运行时

MP 中的磁盘被巨大的 system.log*.tmp 文件填满

111671525 托管目标

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

111416863 API 运行时

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

111073791 Turbo

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

110924838 API 运行时

在 R180608 中,试用 pod 路由器未加载虚拟主机的上游

110425503 API 运行时

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

79541171 API 运行时

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

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

109673863 API 运行时

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

80538530 API 运行时

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

80429941 API 运行时

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

80207872 API 运行时

向 configstore 服务添加了日志记录功能,以便在启动时更轻松地了解您使用的配置

80203732 API 运行时

更好地处理 DeploymentStatusService HTTP 客户端中的内容类型

79993247 API 运行时

针对 Node.js 目标的 HEAD 请求挂起

79944922 API 运行时

托管目标软件包部署失败,并显示 messaging.resource.UnknownResourceType 错误消息

79939838 API 运行时

使 build.info 文件能够与 Kokoro 搭配使用,以实现高质量的数据库集成

79939496 API 运行时

OAuth 令牌创建失败,并出现 NumberFormatException

79882402 API 运行时

JWT:VerifyJWT 中的 TimeAllowance 未得到正确处理

79876202 创收

在删除组织时,清理 mxgroup 中的 mint 范围

79752674 管理服务器

在为 developer-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 运行时

排除管理服务器的 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 在使用开发者专用价格方案时失败