19.03.01 - Apigee Edge for Public Cloud リリースノート

現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご確認ください
情報

2019 年 12 月 3 日(火)、このバージョンの Apigee Edge for Public Cloud のアップデートのリリースを開始しました。(元のリリースは 2019 年 4 月 18 日木曜日でした)。

新機能と最新情報

このリリースでの新機能と更新内容は次のとおりです。

問題 ID コンポーネント名 説明
Apigee は 2019 年 10 月 1 日に次のアップデートのリリースを開始しました。
110995050 API ランタイム

ロード バランシング - 障害が発生したサーバーをより詳細に削除

API プロキシの ロードバランサを構成するときに、サーバーがロード バランシング ローテーションから削除されるまでに発生するレスポンスのエラー数を確認できます。レスポンスが失敗した場合は、Apigee がターゲット サーバーからレスポンスを受信していないことを意味します。この場合、失敗カウンタは 1 ずつ加算されます。Apigee がターゲットからレスポンスを受信すると、レスポンスが HTTP エラー(500 など)であっても、ターゲット サーバーからのレスポンスとしてカウントされ、失敗カウンタがリセットされます。不正な HTTP レスポンス(500 など)によって障害カウンタが増分され、異常なサーバーがロード バランシングのローテーションからできるだけ早く停止されるようにするには、<ResponseCode> 子要素を含む新しい <ServerUnhealthyResponse> 要素をロードバランサの構成に追加します。Edge は、これらのコードを含むレスポンスも失敗としてカウントします。


<HTTPTargetConnection>
  <LoadBalancer>
    <Algorithm>RoundRobin</Algorithm>
    <Server name="target1" />
    <Server name="target2" />
    <ServerUnhealthyResponse>
        <ResponseCode>500</ResponseCode>
        <ResponseCode>502</ResponseCode>
        <ResponseCode>503</ResponseCode>
    </ServerUnhealthyResponse>
    <MaxFailures>5</MaxFailures>
  </LoadBalancer>
</HTTPTargetConnection>
  
  
130416715 セキュリティ

AccessControl ポリシーの機能強化

AccessControl ポリシーにより、API プロキシを呼び出せる IP アドレスが決まります。このポリシーの新しい要素により、API デベロッパーは、評価する IP アドレスをより細かく識別できます。

<IgnoreTrueClientIPHeader>: 省略可(デフォルトは false)。これを true に設定すると、ポリシーは True-Client-IP ヘッダーを無視し、構成した X-Forwarded-For 評価動作に従って X-Forwarded-For ヘッダーの IP アドレスを評価します。


<AccessControl async="false" continueOnError="false"
    enabled="true" name="Access-Control-1">
    <DisplayName>Access Control-1</DisplayName>
    <IgnoreTrueClientIPHeader>true</IgnoreTrueClientIPHeader>
    ...
</AccessControl>

Apigee は 2019 年 4 月 18 日に次の更新をリリースしました。
117558815、
119856499、
110548137、
79526748、
72989449、
70712859、
69049041
API ランタイム JWS と JWT
JWS サポートに新しいポリシーを追加し、既存の JWT ポリシーを強化しました。

詳しくは、こちらのコミュニティ投稿をご覧ください。

122610025 API ランタイム RaiseFault で、障害の理由と AssignMessage 内の任意の変数も設定できるようにする

RaiseFault ポリシーで 2 つの新しい要素を使用し、FaultRules の処理をよりわかりやすく強力にしました。

  • ShortFaultReason はブール値で、true に設定すると、ポリシー名が fault.reason 変数に格納されます。
  • FaultResponse で利用可能な AssignVariable を使用すると、API プロキシフロー内の他のポリシーで使用される変数に障害レスポンスを割り当てることができます。
121149811 Hosted Targets Hosted Targets に適用される上限

Hosted Targets に上限が適用されるようになりました。制限の詳細については、上限をご覧ください。

117659213 API ランタイム AccessControl ポリシーで IP 範囲をパラメータ化する

メッセージ テンプレート変数を使用して、AccessControl ポリシーで IP アドレスと CIDR マスクを設定できるようになりました。たとえば、IP アドレスとマスクを Key-Value マップ(KVM)に保存する場合、API プロキシフローで設定した変数からそれらの値を取得できます。これにより、ポリシー構成を変更することなく、実行時に IP 値を簡単に変更できます。

たとえば、次の操作を行います。

<MatchRule action="DENY">
    <SourceAddress mask="24">198.51.100.1</SourceAddress>
</MatchRule>
     

値が KVM に保存されていると仮定して、次のようにポリシーを構成できます。その際、KeyValueMapOperations ポリシーを使用して値を取得し、以下に示す変数に代入します。

<MatchRule action="DENY">
    <SourceAddress mask="{kvm.mask.ref}">{kvm.ip.ref}</SourceAddress>
</MatchRule>
     
113599885 API Monitoring API Monitoring のロール

API Monitoring には、API Monitoring 管理者と API Monitoring ユーザーの 2 つのロールがあります。API Monitoring にアクセスするをご覧ください。これらは 2018 年 12 月に利用できるようになりました。

132256772 API ランタイム リクエストに X-Apigee.Message-Timeout ヘッダーを追加

Edge は、各リクエストにヘッダー X-Apigee.Message-Timeout を追加するようになりました。このヘッダーは Edge が内部で使用するためのものです。API プロキシの X-Apigee.* ヘッダーの値には依存しないでください。これらのヘッダーはお客様が使用することを想定しておらず、Apigee によっていつでも削除または変更される可能性があります。

78575018 Private Cloud / OPDK 複数のゲートウェイ Pod がある場合に、管理サーバーをスキップしてゲートウェイ データストアの登録をスキップする

バグの修正

このリリースでは以下のバグが修正されています。このリストは主に、サポート チケットが修正されているかどうかを確認するユーザーを対象としています。すべてのユーザーに詳細情報を提供するものではありません。

問題 ID コンポーネント名 説明
Apigee は 2019 年 12 月 3 日に次の修正のリリースを開始しました
セキュリティに関する修正。
Apigee は 2019 年 10 月 29 日に次の修正のリリースを開始しました
139381794 管理サーバー

API 呼び出しが失敗しないようにキーストアの削除エラーを処理する

Apigee は 2019 年 10 月 1 日に次の修正のリリースを開始しました
140761319 API ランタイム

x-apigee.edge.execution.sense.action は常に null に設定される

139091614 API ランタイム

ResponseCache ポリシーで、NIOTheread がスレッドプールから拒否されずに実行されています

131331305 Core Services

Apigee Router で複数のログ エクスポータを使用すると CPU 使用率が高くなる

136690640 API ランタイム

特定の組織で断続的に 404 が発生する

140948100 API ランタイム

デプロイされた共有フローが一部の Message Processor で実行されない

Apigee は 2019 年 9 月 13 日に次の修正をリリースしました。
132654321 Management Server 監査ログにデータが表示されない
131246911 Management Server デベロッパー メールをポータルで受け取る場合、*.games、*.asia などの新しいドメインのサポートを有効にする
Apigee は 2019 年 4 月 18 日に次の修正をリリースしました。
123844598 Management Server 削除したアプリキーは、24 時間以上経過すると再度インポートできなくなります
123588156 API ランタイム レスポンスから Content-Length ヘッダーの削除が 304 で失敗する
122732400 API ランタイム Setting api.timeout overrides io.timeout.millis
122545281 API ランタイム JSON の DebugSession データマスクで、jsonPayload が配列の場合を考慮する必要がある
122355807 Management Server 複数のロールを持つユーザーに対する権限の動作が正しくない
121393556 API ランタイム x_apigee_fault_code が "org/codehaus/jackson/map/ObjectMapper" に設定されている
120998548 Edge UI エラー メッセージの入力ミス: 証明書が無効であるか信頼できない
120990929 API ランタイム Nginx/Apigee-Router からの HTTP-413 レスポンスでサーバータイプが示される
120799489 API ランタイム httpClient で非同期 JavaScript コールバック httpComplete() を使用すると、デバッグセッション(トレース)出力がミュートされる
120794339 API ランタイム 組織向けのドリフト MP
120277011 Management Server 入力検証が必要: ターゲット サーバーのホスト名に **が含まれていると、プロキシをデプロイできない
119976417 API Monitoring API Monitoring はプロキシの応答時間が高いが、分析はターゲットの応答時間が高い
119947481 API ランタイム 例外シナリオでは、マスクされるペイロードが書式なしテキストとしてログに記録される
119877164 Private Cloud / OPDK Router でエラーが生成され、TLS が有効になっている場合に Message Processor がオフラインになる

この修正は、次回の Edge for Private Cloud リリースに含まれています。

119816218 API ランタイム 0 または負の数に解決された場合、レスポンス キャッシュは 有効期限ヘッダーを無視する
119770242 API ランタイム Router から MP への通信の失敗により完全なダウンタイムが発生: PostClientFlow でエラーが発生すると無限ループが発生する
119443145 Management Server ProxyEndpoint の名前を変更して再デプロイしたときに API プロキシが 404 を返す
119260281 API ランタイム 「Unable to parse as a string3000.0」ログエラー
118743407 Management Server Apigee プロキシのデプロイ期間
118447966 API ランタイム MP リリース 180608_07 での JavaScript コールアウトのエラー
117549719 API ランタイム リクエスト URI とプロキシのベースパスが一致しない
117219520 API ランタイム MessageLogging: Syslog ロガーでデフォルトで間違った日付形式が使用され、ミリ秒が正しく表示されない
117116435 API ランタイム JavaScript ファイルで断続的にエラーが発生する
117091520 API ランタイム Message Processor リリース 18.06.08 の後に JavaCallout が失敗する
116165318 API ランタイム 同じバンドルの同時デプロイで RepositoryException が発生する
116055025 Configstore サービス Message Processor で起動後に仮想ホストとアプリケーションが見つからない
115614498 API ランタイム OPDK での ILB のサポートが必要

この修正は、次回の Edge for Private Cloud リリースに含まれています。

113972537 API ランタイム 複数の P1 - Trireme プロキシの Node.js コードから NullPointerException が発生する - 500 内部サーバーエラー
113904969 Apigee のサポート デモ組織での API プロキシの削除に関する問題
113554802 API ランタイム NullPointerException で SAML アサーションが失敗する
113315737 Management Server Zookeeper にデプロイ レコードがないため、プロキシのデプロイに失敗
112767195 API ランタイム KVM ポリシーへのアクセス中に断続的に DataStore エラーが発生する
112162179 API ランタイム JavaScript オブジェクトを文字列化せずにキャッシュに保存すると、デッドロックが発生することがある
111860576 API ランタイム Quota ポリシーにエラーがない
111671525 Hosted Targets ホストされたターゲットからの失敗レスポンス コードによってプロキシの障害フローがトリガーされる
111523933 拡張機能(コネクタ) ExtensionCallout ポリシーのキャッシュに関する問題
111420263 API ランタイム MessageLogging の ConcurrentModification 例外
110843526 Management Server フローフックを作成/更新するための Management API で、共有フローを検証する必要がある
110805739 API ランタイム Reuserefreshtoken が true で、更新トークンの有効期限が明示的に設定されていない場合、TTL が CPS フローで -1 に設定されない
110429629 API ランタイム BasicAuthentication ポリシーが request.headers.Authorization 変数を DebugSession に出力する
110425503 API ランタイム Nginx 再読み込みにより MP の可用性の問題が発生する
110311540 API ランタイム MP のシャットダウン時の NPE
110161455 API ランタイム AccessEntity は、CPS 組織のすべてのアプリを取得する代わりに、アプリ名によるフェッチを使用する必要がある
90695522 API ランタイム context.proxyRequest.asForm が java.lang.ArrayIndexOutOfBoundsException: 1 を生成する
79734096 Management Server プロキシの監査ログがプロキシでフィルタされない
78105568 Management Server デプロイされた共有フローを更新した後、共有フローのデプロイが /org/{org}/sharedflows/{sharedflow}/deployments Management API 呼び出しに表示されません
77528868 Trireme 3 次回帰: スクリプト server.js がステータス コード -1 で終了: プロパティ 0 が見つからない
73766568 API ランタイム 170213_02 を 171117_01 にアップグレードすると、Trireme/Node ターゲットを使用するプロキシのレイテンシが大幅に増加した
72710481 API ランタイム CacheServiceImpl/CacheMemoryLimiter NullPointerException]
68861063 API ランタイム ルーターのシャットダウン時の NPE の処理
68833699 API ランタイム API プロキシに関する情報が API 分類ツリーから削除されないことがある
67377575 Hosted Targets アナリティクス レコードと Node.js プロキシでユーザーに送信される内容が一致しない
112481174 Hosted Targets ターボエラーが原因でプロキシのデプロイ解除に失敗しない
117171470 Hosted Targets 無効な app.yaml のエラー メッセージを修正する
67169139 API ランタイム MessageLogging ポリシー Syslog のタイムスタンプ形式が正しくない
67165418 API ランタイム ライセンス エラーよりも少ない場合でも、使用されている Message Processor の数が多くなるというライセンス エラー

この修正は、次回の Edge for Private Cloud リリースに含まれています。

67165195 API ランタイム ValidateSAMLAssertion が、署名付きレスポンスに埋め込まれたアサーションの署名を検証しない
66214414 API ランタイム currentstep.flowstate 変数が共有フローから参照されると、常に「SHARED_FLOW」を返す
65731656 API ランタイム 同じリクエストで脅威保護 API が断続的に失敗する
133197060 API ランタイム MP からターゲットへの 57 Gateway タイムアウトの取得
110535186 API ランタイム ServiceCallout でレスポンス要素がなく、プロキシを参照する HTTPTargetConnection: 呼び出しがない SOMETIMES
132443137 API ランタイム X-Apigee-* で始まるヘッダーを無視するように Message Processor の動作を変更します。そのため、X-Apigee-* ヘッダーを使用するコードをリファクタリングし、それらのヘッダーをサポートされているヘッダーに置き換える必要があります。
125709964 API ランタイム purgeChildEntries によるキャッシュの無効化が期待どおりに動作しない