Apigee Edge のドキュメントが表示されています。
Apigee X のドキュメントに移動します。 情報
バージョン 3.3.x
バグの修正と機能強化 v.3.3.x
3.3.11
2026 年 8 月 19 日 - Docker コンテナ イメージの更新(タグ: 3.3.11-sec.1)
2026 年 8 月 19 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンテナの更新:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 541758106 | 拡張機能 |
アップグレードされたベースイメージ |
Docker コンテナの更新で修正されたセキュリティの問題
- GHSA-5p4m-2wfm-xmqj
- CVE-2026-13595
- CVE-2026-27456
- CVE-2026-12590
- CVE-2026-53614
- CVE-2026-53612
- CVE-2025-14104
- CVE-2026-53615
- CVE-2026-53613
- CVE-2026-34743
2026 年 7 月 1 日 - 初回リリース
2026 年 7 月 1 日に、Apigee は Edge Microgateway 3.3.11 に対して次の修正をリリースしました。
コンポーネントのバージョン
次の表に、Edge Microgateway 3.3.11 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | プラグイン | edgeauth |
|---|---|---|
| 3.3.11 | 3.3.9 | 3.2.2 |
セキュリティに関する問題の修正
- CVE-2026-7383
- CVE-2026-9076
- CVE-2026-34180
- CVE-2026-34181
- CVE-2026-34182
- CVE-2026-34183
- CVE-2026-42764
- CVE-2026-42766
- CVE-2026-42767
- CVE-2026-42769
- CVE-2026-45445
- CVE-2026-45446
- CVE-2026-45447
- CVE-2026-53550
3.3.10
2026 年 5 月 27 日、Apigee は Edge Microgateway に対して次の修正をリリースしました。
コンポーネントのバージョン
次の表に、Edge Microgateway 3.3.10 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | プラグイン | edgeauth |
|---|---|---|
| 3.3.10 | 3.3.9 | 3.2.2 |
セキュリティに関する問題の修正
3.3.9
2026 年 4 月 1 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 466417342 | バグ |
コントロール プレーンのメンテナンス中の復元性を改善 Apigee ZooKeeper のメンテナンス ウィンドウ中に Edge Microgateway インスタンスで実行時停止(404 エラーや再起動など)が発生する問題を修正しました。EMG は、コントロール プレーンからの null レスポンスを正しく処理するようになり、誤ってクリアするのではなく、ローカル キャッシュから最後に確認された正常な構成を保持して提供するようになりました。 |
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.9 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | プラグイン | edgeauth |
|---|---|---|
| 3.3.9 | 3.3.9 | 3.2.2 |
セキュリティに関する問題の修正
- CVE-2025-13465
- CVE-2026-24842
- CVE-2026-26996
- CVE-2026-2391
- CVE-2026-27904
- CVE-2026-27601
- CVE-2026-27903
- CVE-2026-26960
- CVE-2024-22365
- CVE-2026-24001
- CVE-2025-15284
- CVE-2025-64756
- CVE-2026-31802
- CVE-2026-29786
- CVE-2026-25547
3.3.8
2025 年 12 月 16 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 430058436 | 機能 |
Edge Microgateway(EMG)が Node.js バージョン 24 をサポートするようになりました。これにより、現在の Node.js のアクティブ LTS リリースとメンテナンス LTS リリースに準拠します。Node.js バージョン 18 のサポートは終了しました。 |
| 135435674 | 機能 |
保守性を向上させ、リリース プロセスを効率化するため、 |
| 461773945 | バグ |
Apigee 管理プレーンから構成を更新中にエラー(HTTP 500 や接続リセットなど)を受信した場合、Edge Microgateway がキャッシュからリクエストを処理できない問題を修正しました。Edge Microgateway は、このような一時的なコントロール プレーンの問題が発生した場合に、最後に確認された正常な構成をより確実に使用するようになりました。 |
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.8 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | プラグイン | edgeauth |
|---|---|---|
| 3.3.8 | 3.3.8 | 3.2.2 |
セキュリティに関する問題の修正
3.3.7
2025 年 7 月 17 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 191613108 | 機能 |
Edge Microgateway(EMG)が強化され、 更新された機能により、動的 URL またはパターン マッチング URL に基づいてプラグインを条件付きで除外できるようになりました。この変更は下位互換性があり、既存の静的 URL 構成は変更なしで完全に機能します。 次に例を示します。
edgemicro:
plugins:
excludeUrls: '/hello,/proxy_one/*' # global exclude urls
sequence:
-oauth
-json2xml
-quota
-json2xml:
excludeUrls: '/hello/xml/*' # plugin level exclude urls
|
| 135276110 | 機能 |
Edge Microgateway(EMG)分析データに EMG が更新され、各分析レコードに |
| 422696257 | バグ |
重大なクラッシュの問題が解決され、システムの安定性が大幅に向上しました。 この修正では、以前にシステム過負荷につながるプロセスループが繰り返し発生していた内部モジュールの設定ミスを特定して修正しました。この的を絞った修正によりループが解消され、より堅牢で信頼性の高いシステムが実現しました。 |
セキュリティに関する問題の修正
3.3.6
2025 年 4 月 16 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.6 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.3.6 | 3.3.6 | 3.3.6 | 3.3.6 | 3.2.2 |
セキュリティに関する問題の修正
- CVE-2025-27789
- CVE-2024-21538
- CVE-2024-12133
3.3.5
2024 年 12 月 20 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.5 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.3.5 | 3.3.5 | 3.3.5 | 3.3.5 | 3.2.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 383024578 | 機能 |
Node.js バージョン 22 のサポートが追加され、バージョン 16 のサポートが削除されました。Node.js v18 を使用している場合、Edge Microgateway は起動時に次のエラー メッセージを出力します。 current nodejs version is 18.x.x Note, v18.x.x will be out of support soon, see https://docs.apigee.com/release/notes/edge-microgateway-release-notes-0 以前のバージョンの Node.js を実行している場合は、次のエラー メッセージが表示されます。 You are using a version of NodeJS that is not supported |
セキュリティに関する問題の修正
- CVE-2024-21538
- CVE-2024-45590
- CVE-2019-3844
- CVE-2019-12290
- CVE-2020-1751
- CVE-2018-12886
- CVE-2023-50387
- CVE-2019-3843
- CVE-2022-4415
- CVE-2021-3997
3.3.4
2024 年 9 月 18 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.4 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.3.4 | 3.3.4 | 3.3.4 | 3.3.4 | 3.2.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 675987751 | バグ |
Edge Microgateway がクライアント IP アドレスをロギングしない問題を修正しました。 |
セキュリティに関する問題の修正
- CVE-2021-23337
- CVE-2024-4068
- CVE-2020-28469
- CVE-2020-28503
3.3.3
2024 年 4 月 25 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.3 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.3.3 | 3.3.3 | 3.3.3 | 3.3.3 | 3.2.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 315939218 | 削除済み |
Eureka クライアント プラグインが Edge Microgateway から削除されました。この機能の削除は、Edge Microgateway のコア機能やターゲット URL の書き換えには影響しません。詳細については、プラグインでのターゲット URL の書き換えをご覧ください。 |
| 283947053 | 削除済み |
Edge Microgateway から |
セキュリティに関する問題の修正
- CVE-2023-0842
- CVE-2023-26115
- CVE-2022-25883
- CVE-2017-20162
- CVE-2022-31129
- CVE-2022-23539
- CVE-2022-23541
- CVE-2022-23540
- CVE-2024-21484
- CVE-2022-46175
- CVE-2023-45133
- CVE-2020-15366
- CVE-2023-26136
- CVE-2023-26115
3.3.2
2023 年 8 月 18 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.2 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.3.2 | 3.3.2 | 3.3.2 | 3.3.2 | 3.2.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 296187679 | 機能 |
サポートされている Node.js バージョンは、16、18、20 です。バージョン 3.3.2 以降、Edge Microgateway CLI コマンドはサポートされているバージョンでのみ機能します。サポートされていないバージョンで CLI コマンドを実行すると、エラーが発生します。Apigee でサポートされているソフトウェアとサポートされているバージョンもご覧ください。 |
| 283947053 | バグ |
Edge Microgateway がアプリに関連付けられた API プロダクトのリストの最初の API プロダクトを返す問題を修正しました。リクエストに基づいて、返す正しい API プロダクトを特定するようになりました。 |
| 274443329 | バグ |
Docker が古いバージョンのイメージを pull する問題を修正しました。Docker ノードのバージョンが Node.js バージョン 18 に更新されました。これで、バージョン |
セキュリティに関する問題の修正
なし。
3.3.1
2022 年 6 月 7 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.1 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.3.1 | 3.3.1 | 3.3.1 | 3.3.1 | 3.2.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 220885293 | 機能 |
Node.js バージョン 16 がサポートされるようになりました。 |
| 231972608 | バグ |
プライベート クラウドの構成中に |
| 233315475 | バグ |
|
| 221432797 | 変更 |
ベース Edge Microgateway イメージの Docker Node.js バージョンが Node.js 14 にアップグレードされました。 |
| 215748732 | 機能 |
revokekeys コマンドに SAML トークン認証のサポートが追加されました。
詳細については、コマンドライン リファレンスをご覧ください。 |
| 218723889 | ドキュメントの更新 |
GitHub に保存されているサポート対象の Edge Microgateway プラグインへのリンクを含めるように、ドキュメントを更新しました。Edge Microgateway にバンドルされている既存のプラグインをご覧ください。 |
セキュリティに関する問題の修正
| 問題 ID | 説明 |
|---|---|
| CVE-2021-23413 | これは、3.7.0 より前の jszip パッケージに影響します。ファイル名を Object プロトタイプの値(proto、toString など)に設定して新しい ZIP ファイルを作成すると、プロトタイプ インスタンスが変更されたオブジェクトが返されます。 |
3.3.0
2022 年 2 月 4 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.3.0 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.3.0 | 3.3.0 | 3.3.0 | 3.3.0 | 3.2.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 219556824 | 報告されている問題 | Edge Microgateway Gateway 3.3.0 は npm audit fix コマンドと互換性がありません。
この問題を解決するには、次のコマンドを実行して、正しいバージョンの npm install apigeetool@0.15.1 この問題は、今後の Edge Microgateway のリリースで解決される予定です。 |
| 138622990 | 機能 |
Quota プラグインの新しいフラグ |
| 192534424 | バグ |
Apigee アナリティクスに表示されるレスポンス コードが Edge Microgateway のレスポンス コードと一致しない問題を修正しました。 |
| 198986036 | 拡張機能 | Edge Microgateway は、ポーリング間隔ごとに ID プロバイダ(IDP)の公開鍵を取得し、IDP の公開鍵が変更された場合は鍵を更新するようになりました。以前は、IDP の公開鍵が変更された場合、extauth プラグインは Edge Microgateway を再読み込みせずに公開鍵を更新できませんでした。 |
| 168713541 | バグ |
複数のターゲットに対して TLS/SSL を構成する方法について説明するよう、ドキュメントが強化されました。クライアント SSL/TLS オプションの使用をご覧ください。 |
| 171538483 | バグ |
ログファイルの命名規則を修正するためにドキュメントが変更されました。ログファイルの命名規則をご覧ください。 |
| 157908466 | バグ |
特定のバージョンの Edge Microgateway をインストールする方法を正しく説明するようにドキュメントが変更されました。インターネット接続がある場合の Edge Microgateway のアップグレードをご覧ください。 |
| 215748427 | バグ | 既存のキーとシークレットのペアを使用してキーを取り消すと、revokekeys コマンドがエラーを返す問題を修正しました。 |
| 205524197 | バグ | ロギングレベルの完全なリストを含むようにドキュメントを更新しました。edgemicro 属性とロギング レベルを設定する方法をご覧ください。 |
バージョン 3.2.x
バグの修正と機能強化 v.3.2.x
3.2.3
2021 年 9 月 17 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.2.3 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.2.3 | 3.2.3 | 3.2.3 | 3.2.3 | 3.2.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 192416584 | 機能 |
|
| 192799989 | 機能 |
|
| 148062415 | バグ | Docker コンテナ コンテキストで、Edge Microgateway が docker stop {containerId} コマンドで正常にシャットダウンしない問題を修正しました。プロセスは強制終了されましたが、.sock ファイルと .pid ファイルは削除されませんでした。これで、ファイルが削除され、同じコンテナの再起動が想定どおりに機能します。 |
| 190715670 | バグ | マイクロゲートウェイの内部再読み込みアクティビティ中に一部のリクエストがスタックする問題を修正しました。この問題は断続的に発生し、トラフィックが多い状況で発生しました。この問題は、OAuth プラグインの tokenCache 機能と cacheKey 機能が使用されている場合に発生しました。 |
| 183910111 | バグ | 末尾にスラッシュが付いたリソースパス URL が別のリソースパスとして誤って解釈される問題を修正しました。たとえば、パス /country/all と /country/all/ は同じパスとして解釈されます。 |
セキュリティに関する問題の修正
| 問題 ID | 説明 |
|---|---|
| CVE-2020-28503 | 2.0.5 より前のパッケージ copy-props は、メイン機能を通じてプロトタイプ汚染に対して脆弱です。 |
| CVE-2021-23343 | パッケージ path-parse のすべてのバージョンは、splitDeviceRe、splitTailRe、splitPathRe の正規表現を介して正規表現サービス拒否(ReDoS)の脆弱性があります。ReDoS は、最悪の場合の多項式時間複雑性を示します。 |
3.2.2
2021 年 7 月 15 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.2.2 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.2.2 | 3.2.2 | 3.2.2 | 3.2.2 | 3.2.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 185323500 | 変更 |
トークン リクエスト API と更新トークン リクエスト API が、
RFC 6749 OAuth 2.0 認可フレームワークに準拠するため、 |
| 188492065 | 変更 |
Node.js 8 のサポート終了 リリース 3.2.2 以降、Node.js 8 はサポートされなくなります。詳細については、サポートされているソフトウェアとサポートされているバージョン: Edge Microgateway をご覧ください。 |
| 183990345 | 機能 |
Docker コンテナのログ出力を構成する
Edge Microgateway 構成パラメータ to_console を使用すると、ログ情報をログファイルではなく標準出力に送信するように選択できます。Docker コンテナで Edge Microgateway を実行する手順に沿って操作すると、コンテナはデフォルトで stdout とエラー出力を
ログ情報が この新しい変数の使用方法の詳細については、Edge Microgateway での Docker の使用をご覧ください。 |
| 183057665 | 機能 |
edgemicro.pid と edgemicro.sock のファイルパスを構成可能にします。
Edge Microgateway で Docker コンテナを実行するための新しい |
| 191352643 | 機能 | Edge Microgateway の Docker イメージが更新され、NodeJS バージョン 12.22 が使用されるようになりました。Edge Microgateway で Docker を使用するをご覧ください。 |
セキュリティに関する問題の修正
| 問題 ID | 説明 |
|---|---|
| CVE-2021-28860 | Node.js mixme の v0.5.1 より前のバージョンでは、攻撃者は mutate() 関数と merge() 関数を介して「__proto__」を使用してオブジェクトのプロパティを追加または変更できます。汚染された属性は、プログラム内のすべてのオブジェクトに直接割り当てられます。これにより、プログラムの可用性が損なわれ、サービス拒否(DoS)攻撃を受けるおそれがあります。 |
| CVE-2021-30246 | Node.js 用の jsrsasign パッケージ(10.1.13 まで)では、一部の無効な RSA PKCS#1 v1.5 署名が誤って有効と認識されます。注: 既知の実用的な攻撃はありません。 |
| CVE-2021-23358 | 1.13.0-0 以降 1.13.0-2 より前、1.3.2 以降 1.12.1 より前の underscore パッケージは、テンプレート関数を介した任意のコード挿入に対して脆弱です。特に、変数のプロパティが引数として渡されるときに、サニタイズされないため脆弱です。 |
| CVE-2021-29469 | Node-redis は Node.js Redis クライアントです。バージョン 3.1.1 より前では、クライアントがモニタリング モードの場合、モニタリング メッセージの検出に使用される正規表現が、一部の文字列で指数関数的なバックトラッキングを引き起こす可能性がありました。この問題により、サービス拒否が発生する可能性があります。この問題は、バージョン 3.1.1 で修正されています。 |
| CVE-2020-8174 | Node.js バージョン 12.22 を使用するように Docker イメージが更新されました |
3.2.1
2021 年 3 月 5 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.2.1 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.2.1 | 3.2.1 | 3.2.1 | 3.2.1 | 3.2.1 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 180362102 | バグ |
JWK 鍵に null 値が含まれているとアプリケーションが失敗する問題を修正しました。
null 条件が処理され、 注: この修正を適用するには、edgemicro-auth プロキシをアップグレードする必要があります。 |
| 179971737 | バグ |
ターゲット 4XX / 5XX ステータス レスポンスが edgemicro_* プロキシのプロキシ エラーとしてロギングされる問題を修正しました。 Edge Microgateway トランザクションの場合、Apigee Edge エラーコード分析ダッシュボードに誤ったターゲット エラー数が表示されていました。ターゲット エラーのエラーコードがプロキシエラーとしてカウントされていました。この問題は修正され、正しいターゲット エラー数が表示されるようになりました。 |
| 179674670 | 機能 |
JWT に配置された API プロダクトのリストをプロダクト ステータス コードに基づいてフィルタリングできる新機能が追加されました。
API プロダクトには、保留中、承認済み、取り消し済みの 3 つのステータス コードがあります。edgemicro-auth プロキシの Set JWT Variables ポリシーに、
|
| 178423436 | バグ |
CLI または環境変数を介して渡された鍵とシークレットの値は、プロセス エクスプローラのコマンドライン引数に表示されます。 Edge Microgateway の起動後に、コマンドライン引数から渡されたか、環境変数で設定された Edge Microgateway の鍵とシークレットの値が、ノード ワーカー/子プロセスの引数に表示されるという問題が報告されました。 環境変数のシナリオでこの問題を解決するため、プロセス エクスプローラのコマンドライン引数に値が表示されなくなりました。 マイクロゲートウェイの起動時にコマンドラインでキーとシークレットの値が渡されると、設定されている場合、環境変数の値よりも優先されます。この場合、値はプロセス エクスプローラのコマンドライン引数に表示されます。 |
| 178341593 | バグ |
apikeys プラグインのドキュメント エラーを修正しました。
apikeys プラグインの README ファイルに、誤って
|
| 179366445 | バグ |
ターゲットへのすべての GET リクエストでペイロードがドロップされる問題に対処しました。
新しい構成パラメータ 次に例を示します。 edgemicro: enable_GET_req_body: true RFC 7231、セクション 4.3.1: GET によると、GET リクエストのペイロードには定義されたセマンティクスがないため、ターゲットに送信できます。 |
3.2.0
2021 年 1 月 21 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.2.0 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.2.0 | 3.2.0 | 3.2.0 | 3.2.0 | 3.2.0 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 152640618 | バグ | extauth プラグインを有効にして、トークンが有効な場合に、リクエスト オブジェクトの client_id を含むように x-api-key ヘッダーを設定しました。x-api-key は、後続のプラグインで使用できるようになります。 |
| 168836123、172295489、176462355、176462872 | 機能 | Node.js 14 のサポートを追加しました。 |
| 172376835 | バグ | edgemicro-auth プロキシの /token エンドポイントに正しい時間単位を使用します。
この修正では、有効期限の長さは変更されず、時間単位のみが変更されます。これは、アクセス トークン レスポンス ペイロードの クライアントが クライアントが常に JWT トークンの値を使用してトークン更新期間を評価している場合、クライアントを変更する必要はありません。 |
| 173064680 | バグ | すべてのデータチャンクが処理される前にマイクロゲートウェイがターゲット リクエストを終了する問題を修正しました。 これは、ペイロード サイズの大きいリクエストで断続的に発生する問題で、3.1.7 リリースで導入されました。 |
| 174640712 | バグ | プラグインに適切なデータ処理を追加します。
|
バージョン 3.1.x
バグの修正と機能強化 v.3.1.x
3.1.8
2020 年 11 月 16 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.1.8 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.1.8 | 3.1.9 | 3.1.7 | 3.1.3 | 3.1.2 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 169201295 | バグ | 環境変数タグで数値とブール値が正しく解析されていませんでした。
環境変数の置換処理で、すべての値が文字列として解析され、ブール値または数値の値で解析エラーが発生していました。たとえば、 |
| 169202749 | バグ | 環境変数の置換が一部のケースで機能していなかった。 一部の構成属性で環境変数の置換処理が機能していませんでした。制限事項については、環境変数値を使用して構成属性を設定するをご覧ください。 |
| 168732942 | バグ | OAuth スコープが API プロキシ アクセスを想定どおりに制限しない問題を修正しました。
edgemicro-auth プロキシの |
| 170609716 | バグ | edgemicro-auth プロキシの /refresh フローで apiProductList のない JWT が生成される問題を修正しました。
|
| 170708611 | バグ | API プロダクトのスコープはカスタム プラグインでは使用できません。 API プロダクトのスコープがカスタム プラグインで使用可能になっていないか、キャッシュ構成ファイルに書き込まれていません。スコープの詳細をプラグインで利用できるようにする方法については、 プラグインの init() 関数についてをご覧ください。 |
| 169810710 | 機能 | キャッシュ構成ファイルに保存された鍵とシークレット。 Edge Microgateway の鍵とシークレットが、再読み込みまたは起動のたびにキャッシュ構成の YAML ファイルに保存されていました。3.1.8 では、キーとシークレットはキャッシュ構成ファイルに保存されなくなりました。鍵とシークレットが以前にキャッシュ構成ファイルに書き込まれていた場合は、削除されます。 |
| 170708621 | 機能 | 分析プラグインを無効にできません。
以前のバージョンのマイクロゲートウェイでは、分析プラグインはデフォルトで有効になっており、無効にする方法はありませんでした。バージョン 3.1.8 では、分析プラグインを有効または無効にするための新しい構成パラメータ |
| 159571119 | バグ | レスポンス/ソケット タイムアウトのカスタム プラグインで onerror_request フックで null エラーが発生する。
|
3.1.7
2020 年 9 月 24 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.1.7 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.1.7 | 3.1.8 | 3.1.6 | 3.1.2 | 3.1.1 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 131708105 | バグ | analytics プラグインが axpublisher 呼び出しからの null レスポンスを誤って処理し、ワーカーが終了しました。
|
| 133162200 | バグ | デベロッパー アプリの情報が、承認されていないプロダクト リソースパスが原因の 403 ステータス レスポンス、または期限切れまたは無効なトークンが原因の 401 レスポンスのいずれかで、アナリティクスに設定されていません。
|
| 132194290 | バグ | Apigee Edge が一部の分析レコードを拒否すると、分析レコードは破棄されます。
|
| 158618994 | バグ | Redis クライアント接続が多すぎる。
|
| 161404373 | バグ | 404 ステータス レスポンスの場合、完全なプロキシ URI がレスポンス メッセージに含まれていました。 |
| 166356972 | バグ | Node.js バージョン 12.13.x 以降で Edge Microgateway を実行すると、リクエスト ペイロードを変換するプラグインの実行時に次のエラーが発生しました。 {"message":"write after end","code":"ERR_STREAM_WRITE_AFTER_END"}
|
| 168681746 | バグ | redisBasedConfigCache:true を使用した Edge Microgateway の手動再読み込みが機能していませんでした。
|
| 149256174 | バグ | ネットワーク障害の OAuth プラグイン エラーがログに記録されませんでした。
|
| 166517190 | バグ | jwk_public_keys データは、Synchronizer によって保存および取得され、Redis に保存されませんでした。
|
| 141659881 | バグ | 無効なターゲット証明書のエラー処理で、誤解を招くエラー レスポンスが表示される。
|
| 142808699 | バグ | accesscontrol プラグインが「allow」セクションと「deny」セクションを正しく処理していませんでした。
マイクロゲートウェイで deny セクションが正しく処理され、allow セクションと deny セクションの順序が尊重されるようになりました。Apigee Edge の AccessControl ポリシーとのパリティを実現するため、マイクロゲートウェイ構成ファイルに新しい |
3.1.6
2020 年 8 月 20 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.1.6 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.1.6 | 3.1.7 | 3.1.5 | 3.1.1 | 3.1.1 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 163711992 | 機能 | rotatekey コマンドのカスタム鍵と証明書ファイルの場所オプション。 これらの新しいコマンド オプションの詳細については、鍵をローテーションするをご覧ください。 |
||||||||||||
| 154838259 | バグ | 複数のデータセンターにあるマルチインスタンスの鍵のローテーションを修正 これらの新しいコマンド オプションの詳細については、鍵をローテーションするをご覧ください。 |
||||||||||||
| 145525133 | アルファ機能 | 新しいプラグイン指標
詳細については、GitHub の New plugin metrics の README をご覧ください。 |
||||||||||||
| 159396879 | バグ | 未使用のパッケージ ヘルパーを削除 | ||||||||||||
| 161092943 | バグ | ベースパスの検証が正しくなかった
バージョン 3.1.6 より前では、ベースパスが 以下に、以前の動作(3.1.6 で修正済み)について詳しく説明します。
ベースパスが
|
||||||||||||
| 160431789 | バグ | カスタム プラグイン - init に渡された config オブジェクトが入力されない
Apigee Edge 構成は、Edge Microgateway 構成ファイルとマージされた後、すべてのカスタム プラグインの構成オブジェクトで使用できるようになります。config をご覧ください。 |
||||||||||||
| 162758808 | バグ | Redis バッキング ストアの新しい割り当て構成 次の構成を使用して、割り当ての Redis バッキング ストアを指定できます。詳細については、割り当てに Redis バッキング ストアを使用するをご覧ください。 |
3.1.5
2020 年 6 月 26 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.1.5 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.1.5 | 3.1.6 | 3.1.4 | 3.1.0 | 3.1.0 |
バグの修正と機能強化:
| 問題 ID | タイプ | 説明 |
|---|---|---|
| 159210507 | 機能 | プラグイン処理を除外する構成
指定された URL のプラグインの処理をスキップする新しい構成機能が追加されました。詳細については、 プラグインの除外 URL を構成するをご覧ください。 |
| 156986819、158529319 | バグ | json2xml プラグインに関する問題が修正されました
プラグインが重複した Content-Type ヘッダーを生成する問題と、ヘッダーが想定どおりにターゲットに送信されない場合がある問題を修正しました。 |
| 156560067、159688634 | 機能 | 構成で環境変数の値を使用する 構成ファイルでタグを使用して環境変数を指定できる機能が追加されました。指定された環境変数タグは、実際の環境変数に置き換えられます。置換はメモリにのみ保存され、元の構成ファイルやキャッシュ ファイルには保存されません。詳細については、 環境変数値を使用して構成属性を設定するをご覧ください。 |
| 155077210 | バグ | ログの形式に関する問題を修正しました。 ターゲット ホストがログに表示される際に、余分なコロンが付加される問題を修正しました。 |
| 153673257 | バグ | (Edge for Private Cloud のみ)Microgateway 対応のプロダクトが取得されない マイクロゲートウェイ対応のプロダクトがプルされない問題を修正しました。この問題は、Edge for Private Cloud のインストールでのみ発生していました。 |
| 154956890、155008028、155829434 | 機能 | カスタム属性でダウンロードした商品をフィルタする機能のサポート
詳しくは、カスタム属性で商品をフィルタするをご覧ください。 |
| 153949764 | バグ | ログの宛先ファイルが満杯になると Edge Microgateway プロセスがクラッシュする問題を修正しました 例外処理が改善され、エラーをトラップしてコンソールにメッセージを出力できるようになりました。 |
| 155499600 | バグ | 鍵のローテーションと KVM のアップグレードに関する問題が修正されました
JWT 鍵のローテーションもご覧ください。 |
3.1.4
2020 年 4 月 23 日に、Apigee は Edge Microgateway に対して次の修正をリリースしました。
バグの修正:
バージョン 3.1.3 の依存関係の問題を修正しました。バージョン 3.1.3 は、npm リポジトリで非推奨としてマークされています。それ以外の場合は、バージョン 3.1.3 のリリースノートに記載されているバグの修正と機能強化がすべてこのリリースに適用されます。
3.1.3
2020 年 4 月 15 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.1.3 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.1.3 | 3.1.3 | 3.1.3 | 3.0.14 | 3.0.9 |
バグの修正と機能強化:
- 153509313 - Node.js デバッグ モジュールでメモリリークが発生する問題を修正しました。この問題は、バージョン v3.1.0、v3.1.1、3.1.2 で発生します。
- 153509313 - 2 つの異なるトランザクションで同じメッセージ ID がロギング出力に表示される問題を修正しました。
- 151673570 - 新しい Apigee KVM API を使用するように Edge Microgateway が更新されない問題を修正しました。Edge Microgateway で、KVM 値の追加と更新に新しいコマンドが使用されるようになりました。
- 152822846 - 以前のリリースでは、Edge Microgateway のリソースパス マッピングの処理が Apigee Edge の処理と一致するように更新されました。このリリースでは、パターン
/literal_string/*が正しく処理されない問題を修正しました。例:/*/2/*「/」、「/*」、「/**」のリソースパスの動作を構成するもご覧ください。 - 152005003 - 割り当ての組織と環境のスコープ付き ID を有効にする変更が行われました。
- 152005003 - 割り当ての組織と環境のスコープ付き ID を有効にする変更が行われました。割り当て識別子として「org + env + appName + productName」の組み合わせが使用されます。
3.1.2
2020 年 3 月 16 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.1.3 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.1.2 | 3.1.2 | 3.1.2 | 3.0.13 | 3.0.9 |
バグの修正と機能強化:
- 151285018 - Edge Microgateway とバックエンド ターゲット間のトラフィックに対する HTTP プロキシのサポートを追加する機能強化が行われました。また、Edge Microgateway と Apigee Edge 間の既存の HTTP プロキシ サポートに関する問題も修正されました。詳細については、以下をご覧ください。
- 149101890 - ターゲット サーバーまたはロードバランサが接続を閉じた場合のログ通知コードが ERROR から INFO に変更されました。
- 150746985 - 構成ファイルに
redisBasedConfigCache: trueまたはquotaUri: https://%s-%s.apigee.net/edgemicro-authのいずれかが存在する場合にedgemicro verifyコマンドが正しく機能しない問題を修正しました。 - 151284716 - 再読み込み中にワーカーが再起動されたときに、サーバー接続をより迅速に閉じるように機能強化されました。
- 151588764 - Node.js v8 が非推奨になったため、Docker コンテナで Edge Microgateway の実行に使用される Docker イメージの Node.js バージョンを 12 に更新しました。
- 151306049 - Edge Microgateway CLI コマンドで使用される Apigee Edge 管理 API を一覧表示するために、ドキュメントが更新されました。 Edge Microgateway で使用される管理 API をご覧ください。
3.1.1
2020 年 2 月 20 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.1.1 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.1.1 | 3.1.1 | 3.1.1 | 3.0.13 | 3.0.9 |
バグの修正と機能強化:
-
146069701 -
microgateway-coreモジュールがHTTP_PROXY環境変数とHTTPS_PROXY環境変数を認識しない問題を修正しました。この変更により、YAML 構成ファイルで指定されたプロキシ設定は無視されるようになり、プロキシの指定には環境変数のみが使用されます。構成ファイルでプロキシ構成を指定する場合は、構成ファイルで指定したプロキシ URL と同じプロキシ URL を指定する
HTTP_PROXY変数も指定する必要があります。たとえば、次の構成を指定するとします。edge_config: proxy: http://10.128.0.20:3128 proxy_tunnel: true
次の環境変数も指定する必要があります。
HTTP_PROXY=http://10.128.0.20:3128
- 146320620 - 新しい構成パラメータ
edgemicro.headers_timeoutが追加されました。この属性は、HTTP パーサーが完全な HTTP ヘッダーを受信するまで待機する時間(ミリ秒単位)を制限します。次に例を示します。edgemicro: keep_alive_timeout: 6000 headers_timeout: 12000
内部的には、このパラメータはリクエストの Node.js
Server.headersTimeout属性を設定します。(デフォルト:edgemicro.keep_alive_timeoutで設定された時間より 5 秒長い時間。このデフォルト設定により、ロードバランサやプロキシが誤って接続をドロップすることを防ぎます)。 149278885 - 1 つのグローバル タイムアウト設定を使用する代わりに、API プロキシ レベルでターゲット API タイムアウトを設定できる新機能が追加されました。
API プロキシで TargetEndpoint プロパティ
io.timeout.millisを設定すると、Edge Microgateway はそのプロパティを取得して、ターゲット エンドポイント固有のタイムアウトを適用できます。このパラメータが適用されていない場合、Edge Microgateway はedgemicro.request_timeoutで指定されたグローバル タイムアウトを使用します。
3.1.0
2020 年 1 月 21 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.1.0 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.1.0 | 3.1.0 | 3.1.0 | 3.0.12 | 3.0.9 |
バグの修正と機能強化:
-
144187500 -
quotas.failOpenフラグがトリガーされると、新しい警告レベルのイベントがログに記録されます。このフラグは、割り当て処理エラーが発生した場合、または Edge への「割り当て適用」リクエストがリモート割り当てカウンタの更新に失敗した場合にトリガーされます。この場合、次のリモート割り当ての同期が成功するまで、割り当てはローカルのカウントのみに基づいて処理されます。以前は、ログレベルが DEBUG に設定されている場合にのみ、このイベントがログに記録されていました。次に例を示します。
2020-01-20T02:52:53.040Z [warn][localhost:8000][5][foo-eval][test][hello/][] [DbpGIq9jKfzPX8jvXEivhA0LPwE][f372cc30-3b2f-11ea-845f-a627f][quota][remote quota not available so processing locally, setting quota-failed-open for identifier: AppQuota60.Quota60] [GET][][][][]
- 145023519 - Edge Microgateway が API プロキシの変更を検出するたびに、進行中または新しいトランザクションが影響を受ける問題を修正しました。プロキシが変更されると、Edge Microgateway はキャッシュを更新し、ワーカーノードが再起動するようになりました。この変更により、処理中のトランザクションとマイクロゲートウェイに送信される新しい API 呼び出しは影響を受けません。
- 146378327 -
sourceRequest、targetRequest、targetResponseのログレベルが INFO レベルに変更されました。 - 146019878 - Edge アナリティクスの「API プロキシのパフォーマンス」で計算されたレイテンシと Edge Microgateway の sourceResponse/targetResponse ログイベントの間の不一致が修正されました。これで、Edge 分析と Microgateway のログイベントのレイテンシが調整されました。
- パターン マッチング ロジックに関連する変更:
- 147027862 - oauth プラグインが更新され、API プロダクトで指定されている次のリソースパス一致パターンがサポートされるようになりました。
/{literal}**/{literal}*- 上記の 2 つのパターンの任意の組み合わせ
この変更により、Edge Microgateway プラグインは、「/」、「/*」、「/**」のリソースパスの動作を構成するで説明されているように、Apigee Edge と同じパターン マッチングに従うようになりました。
- 145644205 - apiKeys プラグインのパターン マッチング ロジックを oauth プラグインと一致するように更新。
- 147027862 - oauth プラグインが更新され、API プロダクトで指定されている次のリソースパス一致パターンがサポートされるようになりました。
- 143488312 - クライアント ID パラメータの先頭または末尾にスペースが含まれていると、OAuth トークンと API キーのリクエストで JWT プロダクト リストが空になる問題を修正しました。
- 145640807 と 147579179 - 「同期ツール」と呼ばれる特別な Edge Microgateway インスタンスが Apigee Edge から構成データを取得し、ローカル Redis データベースに書き込むことができる新機能が追加されました。他のマイクロゲートウェイ インスタンスは、データベースから構成データを読み取るように構成できます。この機能により、Edge Microgateway に復元力が追加されます。これにより、マイクロゲートウェイ インスタンスは Apigee Edge と通信しなくても起動して機能できます。詳しくは、Synchronizer の使用をご覧ください。
現在、同期機能は Redis 5.0.x で動作するようにサポートされています。
バージョン 3.0.x
バグの修正と機能強化 v.3.0.x
3.0.10
2019 年 11 月 8 日、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.0.10 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.0.10 | 3.0.8 | 3.0.8 | 3.0.11 | 3.0.8 |
バグの修正と機能強化:
-
142677575 - Edge Microgateway の API プロダクトで使用されるリソースパスのパターン マッチングが、Apigee Edge で使用されるリソースパスのパターン マッチングと一致するように機能が更新されました。 「/」、「/*」、「/**」のリソースパスの動作を構成するをご覧ください。
注:
/*/2/**などの複合リソース パターンを使用する場合は、edgemicro_authプロキシがスタンドアロンの API プロダクトに追加されていることを確認する必要があります。次に、次のスクリーンショットに示すように、その商品をプロキシのデベロッパー アプリに含める必要があります。
注: 「/」、「/*」、「/**」のリソースパスの動作を構成するで説明されている
features.isSingleForwardSlashBlockingEnabled構成プロパティは、Edge Microgateway ではサポートされていません。 143740696 -
quotas構成構造が変更されました(バージョン 3.0.9 のリリースノートも参照してください)。quotasプロパティは、割り当てプラグインの構成に使用されます。構造の変更は、構成要素の明確性を高めるために行われました。割り当てプラグインを構成するには、次の YAML 構成を使用します。構成プロパティはquotasと呼ばれます。個々のquotas構成プロパティの詳細については、 割り当ての構成オプションをご覧ください。edgemicro: home: ../gateway port: 8000 max_connections: -1 max_connections_hard: -1 logging: level: info dir: /var/tmp stats_log_interval: 60 plugins: dir: ../plugins sequence: - oauth - quota quotas: bufferSize: hour: 20000 minute: 500 default: 10000 useDebugMpId: true failOpen: true ...- 141750056 - Redis を割り当てのバッキング ストアとして使用できる新機能が追加されました。
useRedisが true の場合、 volos-quota-redis モジュールが使用されます。true の場合、割り当ては Redis に接続する Edge Microgateway インスタンスのみに制限されます。false の場合、volos-quota-apigee モジュールがバッキング ストアとして使用され、割り当てカウンタはグローバルになります。詳細については、 割り当ての構成オプションをご覧ください。次に例を示します。edgemicro: ... quotas: useRedis: true redisHost: localhost redisPort: 6379 redisDb: 1
- 140574210 -
edgemicro-authプロキシによって生成されたトークンのデフォルトの有効期限が 108,000 ミリ秒(1.8 分)から 1,800 秒(30 分)に変更されました。 - 143551282 - SAML 対応の組織をサポートするため、
edgemicro genkeysコマンドが更新され、‑‑tokenパラメータが含まれるようになりました。このパラメータを使用すると、ユーザー名とパスワードの代わりに OAuth トークンを認証に使用できます。詳細については、 キーの生成をご覧ください。
3.0.9
2019 年 10 月 11 日、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.0.9 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.0.9 | 3.0.7 | 3.0.7 | 3.0.10 | 3.0.7 |
バグの修正と機能強化:
- 141989374 - 割り当てプラグインに新しい「フェイルオープン」機能が追加されました。この機能が有効になっている場合、割り当て処理エラーが発生した場合、または Edge への「割り当て適用」リクエストがリモート割り当てカウンタの更新に失敗した場合、次のリモート割り当て同期が成功するまで、割り当てはローカル カウントのみに基づいて処理されます。どちらの場合も、リクエスト オブジェクトに
quota-failed-openフラグが設定されます。割り当ての「フェイルオープン」機能を有効にするには、次の構成を設定します。
quotas : failOpen : true
注: また、OAuth プラグインの
fail-openリクエスト オブジェクト フラグの名前がoauth-failed-openに変更されました。 - 142093764 - 割り当て超過を防ぐため、
edgemicro-authプロキシに構成変更が行われました。変更内容は、割り当てタイプを calendar に設定することです。この改善を利用するには、edgemicro-authをバージョン 3.0.7 以降に更新する必要があります。 - 142520568 - 割り当てレスポンスで MP(メッセージ プロセッサ)ID のロギングを有効にする新機能が追加されました。この機能を使用するには、
edgemicro-authプロキシをバージョン 3.0.7 以降に更新し、次の構成を設定する必要があります。quotas: useDebugMpId: true
useDebugMpIdが設定されている場合、Edge からの割り当てレスポンスには MP ID が含まれ、Edge Microgateway によってロギングされます。次に例を示します。{ "allowed": 20, "used": 3, "exceeded": 0, "available": 17, "expiryTime": 1570748640000, "timestamp": 1570748580323, "debugMpId": "6a12dd72-5c8a-4d39-b51d-2c64f953de6a" }
3.0.8
2019 年 9 月 26 日、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.0.8 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.0.8 | 3.0.6 | 3.0.6 | 3.0.9 | 3.0.6 |
バグの修正と機能強化:
- 140025210 - 新しい「フェイルオープン」機能が追加されました。この機能により、
edgemicro-authプロキシへの API キー検証呼び出しが接続エラーによって失敗し、期限切れの JWT トークンを更新できない場合でも、API 処理を続行できます。この機能を使用すると、古いトークンがキャッシュに残り、猶予期間が終了するまで再利用される猶予期間を設定できます。この機能により、一時的な接続障害が発生した場合でも、Edge Microgateway はリクエストの処理を続行できます。接続が再開され、Verify API Key 呼び出しが成功すると、新しい JWT が取得され、キャッシュ内の古い JWT が置き換えられます。
新しい「フェイル オープン」機能を構成する手順は次のとおりです。
- Edge Microgateway 構成ファイルの
oauthスタンザで次のプロパティを設定します。oauth: failOpen: true failopenGraceInterval: time_in_seconds cacheKey: true ...
次に例を示します。
oauth: failOpen: true failopenGraceInterval: 5 cacheKey: true ...
この例では、接続の問題で更新できない場合、古いトークンが 5 秒間使用されます。5 秒後に認証エラーが返されます。
- Edge Microgateway 構成ファイルの
- 141168968 - すべてのプラグイン ログ出力に
correlation_idを含めるように更新しました。また、必要に応じて、一部のログのログレベルがerrorに変更されました。 - 140193349 -
edgemicro-authプロキシが更新され、すべての Verify API Key リクエストで Edge Microgateway のキーとシークレットの検証が必要になりました。Edge Microgateway が更新され、すべての Verify API Key リクエストでキーとシークレットが常に送信されるようになりました。この変更により、クライアントは API キーのみで JWT を取得できなくなります。 - 140090250 - 割り当て処理の診断ロギングを追加する更新が行われました。この変更により、割り当てログの出力を Edge Microgateway の他のログと関連付けることができるようになりました。
3.0.7
2019 年 9 月 12 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コンポーネントのバージョン:
次の表に、Edge Microgateway 3.0.7 に関連付けられている個々のコンポーネント プロジェクトのバージョン番号を示します。各コンポーネントは個別のプロジェクトであるため、リリース番号がメイン プロダクトのバージョンと一致しない場合があります。
| microgateway | core | config | プラグイン | edgeauth |
|---|---|---|---|---|
| 3.0.7 | 3.0.5 | 3.0.5 | 3.0.8 | 3.0.5 |
バグの修正と機能強化:
140075602 - OAuth プラグインが更新され、必要に応じて 5xx ステータス コードが返されるようになりました。以前は、200 以外のすべてのケースでプラグインは 4xx ステータス コードのみを返していました。200 ステータス以外のメッセージ レスポンスについては、エラーに応じて正確な 4xx または 5xx コードが返されるようになりました。
この機能はデフォルトでは無効になっています。この機能を有効にするには、Edge Microgateway 構成に
oauth.useUpstreamResponse: trueプロパティを追加します。次に例を示します。oauth: allowNoAuthorization: false allowInvalidAuthorization: false gracePeriod: 10 useUpstreamResponse: true
- 140090623 - リリース 3.0.6 で、新しい構成プロパティ
quota.quotaUriが追加されました。組織にデプロイされたedgemicro-authプロキシを介して割り当てを管理する場合は、この構成プロパティを設定します。このプロパティが設定されていない場合、割り当てエンドポイントはデフォルトで内部 Edge Microgateway エンドポイントになります。次に例を示します。edge_config: quotaUri: https://%s-%s.apigee.net/edgemicro-auth
リリース 3.0.7 では、この新しい構成を受け入れるように
edgemicro-authが更新されました。quotaUriプロパティを使用するには、最新のedgemicro-authプロキシにアップグレードする必要があります。詳細については、 edgemicro-auth プロキシのアップグレードをご覧ください。 - 140470888 - 認証を提供するために、割り当て呼び出しに Authorization ヘッダーが追加されました。また、
edgemicro-authプロキシが変更され、割り当て識別子から「organization」が削除されました。割り当てエンドポイントは顧客の組織に存在するため、割り当て識別子は不要になりました。 - 140823165 - 次のプロパティ名:
edgemicro: keepAliveTimeoutリリース 3.0.6 で誤って記載されていました。正しいプロパティ名は次のとおりです。
edgemicro: keep_alive_timeout - 139526406 - デベロッパー アプリに複数のプロダクトがある場合に、割り当て数が正しくないバグを修正しました。複数のプロダクトを含むアプリの各プロダクトに対して、割り当てが正しく適用されるようになりました。「appName + productName」の組み合わせが割り当て識別子として使用されます。
3.0.6
2019 年 8 月 29 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
- 138633700 - 新しい構成プロパティ
keepAliveTimeoutを追加しました。このプロパティを使用すると、Edge Microgateway のタイムアウト(ミリ秒単位)を設定できます。(デフォルト: 5,000 ミリ秒)次に例を示します。
edgemicro: keep_alive_timeout: 600
- 140090623 - 新しい構成プロパティ
quotaUriを追加しました。組織にデプロイされたedgemicro-authプロキシを介して割り当てを管理する場合は、この構成プロパティを設定します。このプロパティが設定されていない場合、割り当てエンドポイントはデフォルトで内部 Edge Microgateway エンドポイントになります。次に例を示します。edge_config: quotaUri: https://your_org-your_env.apigee.net/edgemicro-auth
この機能を使用するには、まず最新バージョンの
edgemicro-authプロキシを組織にデプロイする必要があります。詳細については、 edgemicro-auth プロキシのアップグレードをご覧ください。 - 138722809 - 新しい構成プロパティ
stack_traceを追加しました。このプロパティを使用すると、ログファイルにスタック トレースを表示するかどうかを制御できます。次に例を示します。stack_trace: false
stack_traceがtrueに設定されている場合、スタック トレースがログに出力されます。falseに設定されている場合、スタック トレースはログに出力されません。
3.0.5
2019 年 8 月 15 日、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
修正済みのバグ- 139005279 -
edgemicro statusコマンドが正しい数のワーカー プロセスを返さない問題を修正しました。 - 138437710 - ExitCounter クラスで、適切なログが書き込まれない問題を修正しました。
- 139064652 - イベントログとシステムログに
traceとdebugのロギング レベルを追加する機能を追加しました。現時点では、これらのログレベルを追加する機能のみが追加されています。現在、使用可能なログレベルはinfo、warn、errorです。 - 139064616 - すべてのコンソール ログ ステートメントでログ出力が標準化されました。コンソール ロギング ステートメントに次の属性が含まれるようになりました。
- タイムスタンプ
- コンポーネント名
- プロセス ID
- コンソールログ メッセージ
- 138413755 - 次の CLI コマンドの JWT 鍵とシークレット関連のログメッセージを改善: cert、verify、upgradekvm、token、genkeys、revokekeys、rotatekey、configure。
- 138413577 - バックエンド サービスのタイムアウトのエラー処理を追加して改善します。
- 138413303 - レスポンスとソケットのタイムアウトのエラー処理を追加、改善。
- 138414116 - 「接続が拒否されました」エラーのエラー処理を追加して改善します。
3.0.4
2019 年 8 月 1 日、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
- 134445926 - 内部 Edge Microgateway 認証の改善。
- 137582169 - 望ましくないプロセスが起動する問題を解決しました。余分なプロセスにより、プラグインが再読み込みされ、メモリが過剰に使用されていました。Edge Microgateway で、プロセスの数が想定される上限内に収まるようになりました。
- 137768774 - ログ メッセージの改善:
- クリーンアップされたトランザクション(リクエスト)ログ。
- 必要に応じてログ メッセージを追加しました。
- トランザクション(リクエスト)ログメッセージをコンソール出力から関連するログファイルに移動しました。
- 一元化されたロギング関数を使用するようにコンソールログを更新しました。
- 138321133、138320563 - 今後の割り当ての強化を可能にするための割り当てバッファの基盤となる内部変更。
3.0.3
2019 年 7 月 23 日、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
- ロギングの強化: 既存のランタイムログは、ランタイムデータを一貫した形式でキャプチャしてログに記録する新しい
eventLog()関数を使用します。ログ情報には次のものが含まれます。- タイムスタンプ(ISO 8601: YYYY-MM-DDTHH:mm:ss.sssZ)。
- ログレベル(error、warn、info)。
- ホスト名 - リクエスト ヘッダーからのリクエスト ホスト名。
- プロセス ID - Node.js プロセスのクラスタを実行している場合、これはロギングが発生したプロセスの ID です。
- Apigee 組織名。
- 組織内の環境名。
- API プロキシの名前。
- クライアントの IP アドレス。
- ClientId。
- 相関 ID(現在は設定されていません)。
- Edge Microgateway コンポーネント名。
- カスタム メッセージ - このエラー プロパティに渡された追加情報が出力されるオブジェクトもあります。
- リクエスト メソッド(HTTP リクエストの場合)。
- レスポンス ステータス コード(HTTP リクエストの場合)。
- エラー メッセージ
- エラーコード - オブジェクトにエラーコードが含まれている場合、このプロパティに出力されます。
- かかった時間。
- オペレーティング システムの 行末マーカー。
プロパティ値が null の場合、空の角かっこ
[]が返されます。次の例は、ログ形式を示しています。
Timestamp [level][hostname][ProcessId][Org][Environment][APIProxy][ClientIp][ClientId][][component][customMessage][reqMethod][respStatusCode][errMessage][errCode][timeTaken]
(137770055)
- パフォーマンス: API プロダクトが環境に基づいてフィルタリングされていませんでした。この問題は修正されました。(135038879)。
- その他の機能テストの統合とコード品質の改善。
3.0.2
2019 年 7 月 3 日、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
コードの品質 - コードの品質がレビューされ、ユーザーがリクエストした品質基準を満たすようにコードが変更されています。JSHint から派生したコード品質のエラーと警告に対処しました。その結果、実際のコードエラーが特定され、修正されました。すべての Apigee Edge Microgateway モジュールがこのプロセスを通過しました。microgateway-config、microgateway-core、microgateway-plugins、microgateway については、6 月 28 日と 7 月 2 日のコミットをご覧ください。コード品質が変更されたすべてのモジュールは、お客様のユースケースでの Edge Microgateway の実行を検証する内部ツールでテストされています。
3.0.1
2019 年 6 月 21 日に、Apigee は Edge Microgateway に対して次の修正と機能強化をリリースしました。
- 134834551 - Edge Microgateway でサポートされている Node.js バージョンを変更
(Node.js のサポート対象バージョン: 8 と 12。バージョン 7、9、11 は試験運用版) - 134751883 - 負荷がかかっている状態で再読み込みすると Edge Microgateway がクラッシュする
- 134518428 - Edge Microgateway の Products エンドポイントで、フィルタ パターンが正しくない場合に 5XX が返される
- 135113408 - ワーカーが予期せず終了した場合は再起動する必要がある
- 134945852 - tokenCacheSize が oauth プラグインで使用されない
- 134947757 - oauth プラグインで cacheTTL を設定
- 135445171 - OAuth の猶予期間の計算が正しくない
- Edge Microgateway のインストールで提供される memored モジュールを使用する
- 135367906 - セキュリティ監査
バージョン 2.5.x
新機能と拡張機能 v.2.5.x
(2.5.38 で修正、2019 年 7 月 6 日)
形式が正しくない JWT を使用すると、トークン キャッシュの使用時にワーカーがクラッシュする可能性があります。Edge microgateway-plugins モジュールで修正済みです。(b/134672029)
(2.5.37 で追加)CLI オプション edgemicro-cert -t を追加します。
edgemicro cert -t オプションを使用すると、管理 API の認証に使用する OAuth トークンを指定できます。証明書の管理もご覧ください。
(2.5.35 で追加)edgemicroctl を使用して Edge Microgateway をデバッグするサポートを追加しました。
edgemicroctl で mgdebug フラグを使用できます。Kubernetes 統合タスクもご覧ください。
(2.5.35 で追加)edgemicroctl 向けに Windows ビルドを有効化します。
(2.5.31 で追加)新しい edgemicro-auth/token API
クライアント/シークレットを Base64 エンコードされた Basic 認証ヘッダーとして、grant_type をフォーム パラメータとして渡すことができる新しい edgemicro-auth/token API が追加されました。署名なしトークンを直接取得するをご覧ください。
(修正済み 2.5.31)プライベート構成でトークン フラグが無視される
Edge for Private Cloud で OAuth2 アクセス トークンを使用するように Edge Microgateway を構成しても、正しく機能しない(トークンが尊重されない)問題を修正しました。
Docker: 自己署名証明書の使用のサポート
(2.5.29 で追加)Node.js でデフォルトで信頼されていない認証局(CA)を使用している場合は、Edge Microgateway で Docker コンテナを実行するときに NODE_EXTRA_CA_CERTS パラメータを使用できます。詳細については、Node.js で信頼されていない CA を使用するをご覧ください。
Docker: TLS のサポート
(2.5.29 で追加)Docker コンテナで実行されている Edge Microgateway は、Edge Microgateway サーバーへの受信リクエスト(ノースバウンド リクエスト)と、Edge Microgateway からターゲット アプリケーションへの送信リクエスト(サウスバウンド リクエスト)の TLS をサポートするようになりました。
次の例では、これらの TLS 構成を設定する方法について詳しく説明します。
これらの例では、コンテナ マウント ポイント /opt/apigee/.edgemicro を使用して証明書を読み込み、Edge Microgateway 構成ファイルで参照する方法を示します。
Docker: リクエスト プロキシのサポート
(2.5.27 で追加)Docker コンテナで Edge Microgateway を実行する場合は、次のオプションを使用して、マイクロゲートウェイがファイアウォールの背後で実行されているときのプロキシの動作を制御できます。
HTTP_PROXYHTTPS_PROXYNO_PROXY
詳細については、Edge Micro を Docker コンテナとして実行するをご覧ください。
Docker: プラグインの手順を更新
(2.5.27 で追加)Docker コンテナで Edge Microgateway を実行する場合、プラグインをデプロイする方法が 2 つあります。Docker マウント ポイントを使用するオプションは、新しいオプションです。もう一方のオプションは以前から存在し、基本的に変更されていませんが、Dockerfile が更新されています。詳細については、以下のリンクを参照してください。
KVM アップグレード コマンドの新しい OAuth トークンのサポート
(2.5.27 で追加)upgradekvm コマンドで OAuth トークンを使用できます。詳細については、KVM のアップグレードをご覧ください。
Edge Analytics での API の分離
(2.5.26 で追加)新しい分析プラグイン フラグを使用すると、特定の API パスを分離して、Edge Analytics ダッシュボードに個別のプロキシとして表示できます。たとえば、ヘルスチェック API を分離して、実際の API 呼び出しと混同しないようにすることができます。詳細については、分析からパスを除外するをご覧ください。
ローカル プロキシの構成
(2.5.25 で追加)ローカル プロキシを使用すると、Apigee Edge でマイクロゲートウェイ対応プロキシを手動で作成する必要がなくなります。代わりに、マイクロゲートウェイはローカル プロキシのベースパスを使用します。詳細については、ローカル プロキシモードの使用をご覧ください。
スタンドアロン モードの使用
(2.5.25 で追加)Apigee Edge の依存関係から完全に切り離された状態で Edge Microgateway を実行できます。スタンドアロン モードと呼ばれるこのシナリオでは、インターネット接続なしで Edge Microgateway を実行してテストできます。スタンドアロン モードで Edge Microgateway を実行するをご覧ください。
鍵の取り消し
(2.5.19 で追加)Edge Microgateway 構成の鍵とシークレット認証情報を取り消す新しい CLI コマンドが追加されました。
edgemicro revokekeys -o [organization] -e [environment] -u [username] -k [key] -s [secret]
Docker のサポート
(2.5.19 で追加)最新の Edge Microgateway リリースを Docker イメージとしてダウンロードできるようになりました。
docker pull gcr.io/apigee-microgateway/edgemicro:latest
Kubernetes のサポート
(2.5.19 で追加)Edge Microgateway は、Kubernetes クラスタにデプロイされたサービスの前にサービスまたはサイドカー ゲートウェイとしてデプロイできます。Edge Microgateway と Kubernetes の統合の概要をご覧ください。
TCP nodelay オプションのサポート
(2.5.16 で追加)Edge Micro 構成に新しい構成設定 nodelay が追加されました。
デフォルトでは、TCP 接続は Nagle アルゴリズムを使用してデータをバッファリングしてから送信します。nodelay を true に設定すると、この動作が無効になります(socket.write() が呼び出されるたびにデータがすぐに送信されます)。詳細については、Node.js のドキュメントもご覧ください。
nodelay を有効にするには、Edge Micro 構成ファイルを次のように編集します。
edgemicro:
nodelay: true
port: 8000
max_connections: 1000
config_change_poll_interval: 600
logging:
level: error
dir: /var/tmp
stats_log_interval: 60
rotate_interval: 24
Forever モニタリングの新しい CLI オプション
(2.5.12 で追加)edgemicro forever コマンドに新しいパラメータが追加されました。これらのパラメータを使用すると、forever.json ファイルの場所を指定したり、Forever バックグラウンド プロセスを開始または停止したりできます。常時モニタリングもご覧ください。
| パラメータ | 説明 |
|---|---|
-f, --file | forever.json ファイルの場所を指定します。 |
-a, --action | start または stop のいずれか。デフォルトは start です。 |
例:
Forever を開始するには:
edgemicro forever -f ~/mydir/forever.json -a start
Forever を停止するには:
edgemicro forever -a stop
JWT 鍵のローテーション
Edge Microgateway で OAuth セキュリティに使用される JWT トークンの生成に使用される公開鍵/秘密鍵ペアをローテーションできる新機能が追加されました。 JWT 鍵のローテーションをご覧ください。
ダウンロードした API プロキシのフィルタリング
デフォルトでは、Edge Microgateway は、命名接頭辞「edgemicro_」で始まる Edge 組織内のすべてのプロキシをダウンロードします。このデフォルトを変更して、名前がパターンに一致するプロキシをダウンロードできます。 ダウンロードしたプロキシをフィルタするをご覧ください。
API プロキシなしでプロダクトを指定する
Apigee Edge では、API プロキシを含まない API プロダクトを作成できます。このプロダクト構成により、そのプロダクトに関連付けられた API キーは、組織にデプロイされた任意のプロキシで機能します。バージョン 2.5.4 以降、Edge Microgateway はこのプロダクト構成をサポートしています。
永続的なモニタリングのサポート
Edge Microgateway には、Edge Microgateway を再起動する回数と間隔を制御するために構成できる forever.json ファイルがあります。このファイルは、Forever をプログラムで管理する forever-monitor というサービスを構成します。
永続的なモニタリングをご覧ください。
Edge Micro 構成ファイルの一元管理
複数の Edge Microgateway インスタンスを実行している場合は、1 か所から構成を管理することをおすすめします。これを行うには、Edge Micro が構成ファイルをダウンロードできる HTTP エンドポイントを指定します。 構成ファイルのエンドポイントを指定するをご覧ください。
forever CLI オプションのサポート
(2.5.8 で追加)edgemicro forever [package.json] コマンドを使用して、forever.json ファイルの場所を指定します。このコマンドが追加される前は、構成ファイルは Edge Microgateway のルート ディレクトリに存在する必要がありました。
次に例を示します。
edgemicro forever ~/mydir/forever.json
reload コマンドへの configUrl オプションの追加
(2.5.8 で追加)edgemicro reload コマンドで --configUrl オプションまたは -u オプションを使用できるようになりました。
JWT の時間差の猶予期間
(2.5.7 で追加)OAuth 構成の gracePeriod 属性は、システムクロックと JWT 認証トークンで指定された Not Before(nbf)または Issued At(iat)の時刻との間にわずかなずれがある場合に発生するエラーを防ぐのに役立ちます。この属性は、このような差異を許容する秒数に設定します。 OAuth 属性をご覧ください。
(2.5.7 で追加)OAuth 構成の gracePeriod 属性は、システム クロックと JWT 認証トークンで指定された Not Before(nbf)または Issued At(iat)の時刻とのわずかな差異によって発生するエラーを防ぐのに役立ちます。この属性は、このような差異を許容する秒数に設定します。 OAuth 属性をご覧ください。
バグの修正 v2.5.x
- (問題 #236)キャッシュの削除に関する誤字脱字を修正
- (問題 #234)Edge Microgateway 2.5.35 で再読み込みがクラッシュする。
- (問題 #135)-v オプションを使用すると、無効な仮想ホスト参照「secure」エラーが発生する。この修正では、デプロイ前に edgemicro-auth プロキシを変更し、仮想ホストが「-v」フラグで指定された内容と完全に一致するようにします。また、仮想ホストの数と名前を任意に指定できます(デフォルトとセキュアに限定されなくなりました)。
- (問題 #141)edgemicro reload コマンドは、構成ファイル オプション -c をサポートしていません。なお、本事象はすでに解決しております。
- (問題 #142)Edge Microgateway がインストール時に非推奨の暗号について警告します。なお、本事象はすでに解決しております。
- (問題 #145)割り当てが Edge Microgateway で機能しない。なお、本事象はすでに解決しております。
- (Apigee コミュニティの問題: EMG - OAUTH の API プロキシとリソース URI の両方に対して検証された JWT トークン) OAUTH の API プロキシとリソース URI の両方に対して検証された JWT トークン。この問題は修正されています。
- (Apigee コミュニティの問題: ヘッダーに OAuth トークンがなくても Microgateway が動作する) Microgateway が OAuth で動作しない。なお、本事象はすでに解決しております。
- Windows の pidPath を修正しました。
- (問題 #157)次のエラー メッセージの原因となっていた問題が修正されました。
ReferenceError: deployProxyWithPasswordis not defined. - (問題 #169)Node.js の依存関係を更新(npm 監査)
edgemicro-authプロキシで Edge JWT ポリシーが使用されるようになりました。プロキシは、JWT サポートを提供するために Node.js に依存しなくなりました。
バージョン 2.4.x
新機能と拡張機能 v.2.4.x
1. edgemicro-auth プロキシのカスタム エイリアスを設定(PR 116)
edgemicro-auth プロキシのデフォルトのベースパスは変更できます。デフォルトでは、ベースパスは /edgemicro-auth です。変更するには、edgemicro configure コマンドで -x フラグを使用します。
例:
edgemicro configure -x /mypath …
2. ベースパスのワイルドカード サポート(PR 77)
edgemicro_* プロキシのベースパスで、1 つ以上の「*」ワイルドカードを使用できます。たとえば、ベースパスを /team/*/members にすると、新しいチームをサポートするために新しい API プロキシを作成する必要なく、クライアントが https://[host]/team/blue/members と https://[host]/team/green/members を呼び出すことができます。/**/ はサポートされていません。
重要: Apigee では、ベースパスの最初の要素としてワイルドカード「*」を使用できません。たとえば、/*/search は使用できません。3. プライベート クラウド構成用の CLI にカスタム構成パスを追加(PR 99)
デフォルトでは、マイクロゲートウェイ構成ファイルは ./config/config.yaml にあります。init、configure、start コマンドで、-c フラグまたは --configDir フラグを使用して、コマンドラインでカスタム構成パスを指定できるようになりました。Private Cloud インストールのカスタム構成ディレクトリが認識されない問題を修正しました。
例:
edgemicro start -o docs -e test -k abc123 -s xyz456 -c /home/microgateway/config
4. *_PROXY 変数を尊重(PR 61)
Edge Microgateway がファイアウォールの内側にインストールされていて、パブリック クラウドの Apigee Edge と通信できない場合は、次の 2 つの方法を検討してください。
オプション 1:
1 つ目の方法は、マイクロゲートウェイ構成ファイルで edgemicro: proxy_tunnel オプションを true に設定することです。
edge_config: proxy: http://10.224.16.85:3128 proxy_tunnel: true
proxy_tunnel が true の場合、Edge Microgateway は HTTP CONNECT メソッドを使用して、単一の TCP 接続で HTTP リクエストをトンネリングします。(プロキシを構成する環境変数で TLS が有効になっている場合も同様です)。
オプション 2:
2 つ目の方法は、プロキシを指定し、マイクロゲートウェイ構成ファイルで proxy_tunnel を false に設定することです。次に例を示します。
edge_config: proxy: http://10.224.16.85:3128 proxy_tunnel: false
この場合、次の変数を設定して、使用する各 HTTP プロキシのホスト、または Edge Microgateway プロキシで処理しないホストを制御できます。HTTP_PROXY、HTTPS_PROXY、NO_PROXY。NO_PROXY は、Edge Microgateway がプロキシしないドメインのカンマ区切りのリストとして設定できます。次に例を示します。
export HTTP_PROXY='http://localhost:3786' export HTTPS_PROXY='https://localhost:3786'
これらの変数の詳細については、以下をご覧ください。
https://www.npmjs.com/package/request#controlling-proxy-behaviour-using-environment-variables
5. ターゲット リクエストのカスタム タイムアウトを設定(PR 57)
この構成を使用して、ターゲット リクエストのカスタム タイムアウトを設定できます。
edgemicro:
request_timeout: 10タイムアウトは秒単位で設定されます。タイムアウトが発生すると、Edge Microgateway は 504 ステータス コードで応答します。
6. ターゲット レスポンスのカスタム HTTP ステータス メッセージを尊重(PR 53)
Edge Microgateway は、ターゲット レスポンスに設定されたカスタム HTTP ステータス メッセージを尊重します。以前のリリースでは、ターゲットから送信されたステータス メッセージは Node.js のデフォルトでオーバーライドされていました。
7. X-Forwarded-For ヘッダーで分析用の client_ip を設定できます
X-Forwarded-For ヘッダーが存在する場合、Edge Analytics でレポートされる client_ip 変数が設定されます。この機能を使用すると、Edge Microgateway にリクエストを送信したクライアントの IP を確認できます。
8. OAuth プラグインの変更
OAuth プラグインは、API キーの検証と OAuth アクセス トークンの検証をサポートしています。この変更前は、プラグインはどちらの形式のセキュリティも受け入れていました。この変更により、下位互換性を維持しながら、これらのセキュリティ モデルのいずれか 1 つのみを許可できます。
OAuth プラグインには、次の 2 つの新しいフラグが追加されています。
-
allowOAuthOnly - true に設定すると、すべての API でベアラー アクセス トークンを含む Authorization ヘッダーを渡す必要があります。
-
allowAPIKeyOnly - true に設定すると、すべての API は API キーを含む x-api-key ヘッダー(またはカスタムの場所)を保持する必要があります。
これらのフラグは、次のように Edge Microgateway 構成ファイルで設定します。
oauth:
allowNoAuthorization: false
allowInvalidAuthorization: false
keep-authorization-header: false
allowOAuthOnly: false
allowAPIKeyOnly: false
9. edgemicro-auth プロキシを改善しました(PR 40)
edgemicro-auth プロキシが改善されました。これらの変更前は、プロキシは暗号化された Vault である Edge Secure Store に鍵を保存していました。これで、プロキシは Edge の暗号化された Key-Value マップ(KVM)に鍵を保存します。
10. プラグインでデフォルトのターゲット URL を書き換える(PR 74)
ターゲット エンドポイント ポートをオーバーライドして、HTTP と HTTPS のどちらかを選択することもできます。プラグイン コードで、req.targetPort と req.targetSecure の変数を変更します。HTTPS を選択するには、req.targetSecure を true に設定します。HTTP の場合は、false に設定します。req.targetSecure を true に設定する場合は、こちらのディスカッション スレッドをご覧ください。
11. OAuth トークン認証の初期サポート (PR 125)
Edge Microgateway を構成して、ユーザー名/パスワードの代わりに OAuth トークンを認証に使用できます。OAuth トークンを使用するには、edgemicro configure コマンドで次のパラメータを使用します。
-t, --token <token>
次に例を示します。
edgemicro configure -o docs -e test -t <your token>
バグの修正 v2.4.3
- edgemicro-auth プロキシを正しく実行するために有料組織が必要になる問題を修正しました。これで、トライアル組織でも Edge Microgateway を使用できるようになりました。(PR 5)
- ストリームがデータの処理を完了していないにもかかわらず、終了ハンドラが実行される問題を修正しました。これにより、部分的なレスポンスが送信されました。(PR 71)
- Private Cloud インストールのカスタム構成ディレクトリが認識されない問題を修正しました。(PR 110)
- クライアントと Edge Microgateway 間の双方向 SSL に関する問題を修正しました。(PR 70)
- API キーの検証が正しく機能するために、プロキシのベースパスに末尾のスラッシュが必要になる問題を修正しました。ベースパスの末尾にスラッシュは不要になりました。(PR 48)
バージョン 2.3.5
新機能と拡張機能 v.2.3.5
プロキシ フィルタリング
Edge Microgateway インスタンスが処理するマイクロゲートウェイ対応プロキシをフィルタできます。Edge Microgateway が起動すると、関連付けられている組織内の microgateway 対応プロキシがすべてダウンロードされます。次の構成を使用して、マイクロゲートウェイが処理するプロキシを制限します。たとえば、次の構成では、マイクロゲートウェイが処理するプロキシを edgemicro_proxy-1、edgemicro_proxy-2、edgemicro_proxy-3 の 3 つに制限します。
proxies: - edgemicro_proxy-1 - edgemicro_proxy-2 - edgemicro_proxy-3
分析データのマスキング
新しい構成により、リクエスト パス情報が Edge アナリティクスに表示されないようにできます。リクエスト URI やリクエスト パスをマスクするには、マイクロゲートウェイの構成に以下を追加します。URI は、リクエストのホスト名とパスの部分で構成されます。
analytics: mask_request_uri: 'string_to_mask' mask_request_path: 'string_to_mask'
バージョン 2.3.3
新機能と拡張機能 v.2.3.3
このリリースにおける新機能と改善点は次のとおりです。
自動変更ポーリングを無効にする
マイクロゲートウェイ構成で次の属性を設定すると、自動変更ポーリングをオフにできます。
disabled_config_poll_interval: true
デフォルトでは、定期的なポーリングにより、Edge で行われた変更(プロダクト、マイクロゲートウェイ対応プロキシなどの変更)と、ローカル構成ファイルに対する変更が取得されます。デフォルトのポーリング間隔は 600 秒(5 分)です。
プラグインでターゲット URL を書き換える
プラグインでデフォルトのターゲット URL を動的にオーバーライドするには、プラグイン コードで req.targetHostname と req.targetPath の変数を変更します。
新しいプラグイン関数シグネチャ
ターゲット レスポンスを引数として提供する新しいプラグイン関数シグネチャが追加されました。この追加により、プラグインがターゲット レスポンスにアクセスしやすくなります。
function(sourceRequest, sourceResponse, targetResponse, data, cb)
デフォルトのロギング出力の簡素化
デフォルトでは、ロギング サービスはダウンロードされたプロキシ、プロダクト、JWT の JSON を省略するようになりました。Edge Microgateway の起動時に DEBUG=* を設定すると、これらのオブジェクトをデフォルトで出力するように変更できます。次に例を示します。
DEBUG=* edgemicro start -o docs -e test -k abc123 -s xyz456
CLI にカスタム構成パスを追加
デフォルトでは、マイクロゲートウェイ構成ファイルは ./config/config.yaml にあります。init、configure、start コマンドで、コマンドラインでカスタム構成パスを指定できるようになりました。次に例を示します。
edgemicro start -o docs -e test -k abc123 -s xyz456 -c /home/microgateway/config
バグの修正 v2.3.3
- 大規模なリクエスト/レスポンス中に発生するメモリリークを修正しました。
- プラグインの実行順序が修正されました。ドキュメントで説明されているとおりに動作するようになりました。
- accumulate-request プラグインが GET リクエストでハングしなくなりました。
- レスポンス本文がない場合にエラーが発生する accumulate-response プラグインの問題を修正しました。
リリース 2.3.1
インストールに関する注意事項
Edge Microgateway の以前のバージョンでは、ZIP ファイルをダウンロードしてソフトウェアをインストールできました。これらの ZIP ファイルのサポートは終了しました。Edge Microgateway をインストールするには、次のものを使用する必要があります。
npm install -g edgemicro
詳しくは、インストールに関するトピックをご覧ください。
新機能と拡張機能 v.2.3.1
このリリースにおける新機能と改善点は次のとおりです。
フィルタ プロキシ
新しい構成では、Edge Microgateway の起動時に読み込むプロキシをフィルタできます。以前は、edgemicro 構成コマンドで指定した Edge 組織/環境から取得した、マイクロゲートウェイ対応のすべてのプロキシ(edgemicro_* という名前のプロキシ)がマイクロゲートウェイによって読み込まれていました。この新機能を使用すると、プロキシのリストをフィルタして、指定したプロキシのみを Edge Microgateway で読み込むことができます。次のように、プロキシ要素をマイクロゲートウェイ構成ファイルに追加します。
edge micro: proxies: - edgemicro_[name] - edgemicro_[name] ...
たとえば、Edge の組織/環境に 50 個の edgemicro_* プロキシがあり、その中に edgemicro_foo と edgemicro_bar という名前のプロキシがあるとします。マイクロゲートウェイにこの 2 つのプロキシのみを使用するように指示するには、次のようにします。
edge micro:
proxies:
- edgemicro_foo
- edgemicro_bar起動時に、マイクロゲートウェイは指定されたプロキシのみを呼び出すことができます。Edge 組織/環境からダウンロードされた他のマイクロゲートウェイ対応プロキシを呼び出そうとすると、エラーが発生します。
プラグインでターゲット リクエスト ヘッダーを設定する
ターゲット リクエスト ヘッダーを追加または変更する場合は、考慮すべき 2 つの基本パターンがあります。1 つは受信リクエストにデータが含まれている場合(POST リクエストなど)、もう 1 つはデータが含まれていない場合(単純な GET リクエストなど)です。
受信リクエストにデータが含まれており、ターゲット リクエストにリクエスト ヘッダーを設定する場合を考えてみましょう。以前のバージョンの Edge Microgateway では、この場合にターゲット ヘッダーを確実に設定することはできませんでした。
このパターンの鍵は、まずクライアントから受信したすべてのデータを蓄積することです。次に、onend_request() 関数で、新しい関数 request.setOverrideHeader(name,
value) を使用してヘッダーをカスタマイズします。
その方法を示すサンプル プラグイン コードを次に示します。onend_request で設定されたヘッダーがターゲットに送信されます。
module.exports.init = function(config, logger, stats) { function accumulate(req, data) { if (!req._chunks) req._chunks = []; req._chunks.push(data); } return { ondata_request: function(req, res, data, next) { if (data && data.length > 0) accumulate(req, data); next(null, null); }, onend_request: function(req, res, data, next) { if (data && data.length > 0) accumulate(req, data); var content = Buffer.concat(req._chunks); delete req._chunks; req.setOverrideHeader('foo', 'bar'); req.setOverrideHeader('content-length', content.length); next(null, content); }, onerror_request: function(req, res, data, next) { next(null, null); } }; }
リクエストにデータが含まれていない場合は、onrequest() ハンドラでターゲット ヘッダーを設定できます。このパターンは新しいものではありません。以前からドキュメントに記載されており、Edge Microgateway に付属のサンプル プラグインで使用されています。
onrequest: function(req, res, next) { debug('plugin onrequest'); req.headers['x-foo-request-id'] = "bar"; req.headers['x-foo-request-start'] = Date.now(); next(); }
ダウンタイムなしの再読み込み機能
Edge Microgateway の構成を変更した後、メッセージをドロップせずに構成を読み込むことができます。この変更により、Edge Microgateway は常にクラスタモードで起動するようになり、edgemicro start コマンドから --cluster オプションが削除されました。
また、3 つの新しい CLI コマンドが追加されました。これらのコマンドは、edgemicro start コマンドが実行されたのと同じディレクトリから実行する必要があります。
edgemicro status- Edge Microgateway が実行されているかどうかを確認します。edgemicro stop- Edge Microgateway クラスタを停止します。edgemicro reload- ダウンタイムなしで Edge Microgateway 構成を再読み込みします。
ダウンタイムなしの自動構成再読み込み
Edge Microgateway は、新しい構成を定期的に読み込み、変更があった場合は再読み込みを実行します。ポーリングでは、Edge で行われた変更(プロダクト、マイクロゲートウェイ対応プロキシなどの変更)と、ローカル構成ファイルに対する変更が取得されます。デフォルトのポーリング間隔は 600 秒(5 分)です。デフォルトは、次のように microgateway 構成ファイルで変更できます。
edgemicro: config_change_poll_interval: [seconds]
CLI にバージョン情報を追加
CLI に --version フラグが追加されました。Edge Microgateway の現在のバージョンを取得するには、次のコマンドを使用します。
edgemicro --version
新しい Edge Microgateway サーバーの SSL オプション
Edge Microgateway は、key と cert に加えて、次のサーバー SSL オプションをサポートするようになりました。
| オプション | 説明 |
|---|---|
pfx |
クライアントの秘密鍵、証明書、CA 証明書が PFX 形式で含まれている pfx ファイルのパス。 |
passphrase |
秘密鍵または PFX のパスフレーズを含む文字列。 |
ca |
PEM 形式の信頼できる証明書のリストを含むファイルへのパス。 |
ciphers |
使用する暗号を説明する文字列(「:」で区切られます)。 |
rejectUnauthorized |
true の場合、サーバー証明書は指定された CA のリストと照合して検証されます。検証で不合格だった場合は、エラーが返されます。 |
secureProtocol |
使用する SSL メソッド。たとえば、SSLv3_method は SSL をバージョン 3 に強制します。 |
servername |
SNI(Server Name Indication)TLS 拡張機能のサーバー名。 |
ログファイルを stdout に送信する
新しい構成設定を使用して、ログデータを標準出力に送信できます。
edgemicro:
logging:
to_console: trueログファイルの管理をご覧ください。
バージョン 2.1.2
このリリースにおける新機能と改善点は次のとおりです。
構成用のカスタム API エンドポイントを許可
カスタム認証サービスの使用をサポートする認証プロキシ用に、新しい構成可能なエンドポイントが用意されています。これらのエンドポイントは次のとおりです。
edgeconfig:verify_api_key_urledgeconfig:products
詳細については、 カスタム認証サービスの使用をご覧ください。
バージョン 2.1.1
このリリースにおける新機能と改善点は次のとおりです。
クロス プラットフォーム互換の認証プロキシをデプロイする
Edge Microgateway 認証プロキシを Edge にデプロイするために使用されるコマンドが Windows システムで互換性を持つように機能強化されました。
バージョン 2.1.0
新機能と拡張機能 v.21.0
新機能と改善点は次のとおりです。
クライアントの SSL/TLS オプションを指定する
新しい構成オプションのセットを使用して、ターゲットへの SSL/TSL 接続のクライアント オプションを指定できます。 クライアント SSL/TSL オプションを使用するをご覧ください。
バージョン 2.0.11
インストールに関する注意事項 v2.0.11
Edge Microgateway の以前のバージョンでは、ZIP ファイルをダウンロードしてソフトウェアをインストールできました。これらの ZIP ファイルのサポートは終了しました。Edge Microgateway をインストールするには、次のものを使用する必要があります。
npm install -g edgemicro
詳しくは、インストールに関するトピックをご覧ください。
新機能と拡張機能 v.2.0.11
新機能と改善点は次のとおりです。
起動時にポートを指定する
開始コマンドを使用すると、構成ファイルで指定されたポートをオーバーライドするポート番号を指定できます。PORT 環境変数を使用してポート番号を指定することもできます。詳しくは、start コマンドをご覧ください。
必要に応じて認証ヘッダーを保持する
新しい構成設定 keepAuthHeader を使用すると、リクエストで送信された Authorization ヘッダーを保持できます。true に設定すると、Auth ヘッダーがターゲットに渡されます。 oauth 属性をご覧ください。
カスタム認証サービスを使用する機能
独自のカスタム サービスを使用して認証を処理する場合は、Edge Microgateway 構成ファイルの authUri 値を変更して、サービスを指すようにします。詳細については、 カスタム認証サービスの使用をご覧ください。
バージョン 2.0.4
Edge Microgateway v.2.0.4 は 2016 年 5 月 25 日にリリースされました。
新機能と拡張機能 v2.0.4
このリリースにおける新機能と改善点は次のとおりです。
プロダクトでのリソースパスのサポート
Edge Microgateway で、プロダクトのリソースパスがサポートされるようになりました。リソースパスを使用すると、プロキシパスのパス接尾辞に基づいて API へのアクセスを制限できます。プロダクトの作成とリソースパスの構成の詳細については、API プロダクトを作成するをご覧ください。
npm グローバル インストールのサポート
これで、npm -g(グローバル)オプションを使用して Edge Microgateway をインストールできます。このオプションの詳細については、npm のドキュメントをご覧ください。
バージョン 2.0.0
Edge Microgateway v2.0.0 は 2016 年 4 月 18 日にリリースされました。
新機能と拡張機能 v.2.0.0
このリリースにおける新機能と改善点は次のとおりです。
単一プロセス サーバー
Edge Microgateway が単一プロセス サーバーになりました。1 つのプロセス(以前は「エージェント」と呼ばれていました)が Edge Microgateway(2 番目のプロセス)を起動する 2 つのプロセスモデルは使用されなくなりました。新しいアーキテクチャにより、自動化とコンテナ化が容易になります。
名前空間方式の構成ファイル
構成ファイルは組織と環境を使用して名前空間が設定されるため、複数の Microgateway インスタンスを同じホストで実行できます。Edge Microgateway 構成コマンドを実行すると、構成ファイルが ~/.edgemicro に保存されます。
新しい環境変数
環境変数は EDGEMICRO_ORG、EDGEMICRO_ENV、EDGEMICRO_KEY、EDGEMICRO_SECRET の 4 つになりました。システムでこれらの変数を設定すると、コマンドライン インターフェース(CLI)を使用して Edge Microgateway を構成して起動するときに、これらの値を指定する必要がなくなります。
キャッシュに保存された構成
Edge Microgateway は、Apigee Edge に接続せずに再起動した場合、キャッシュに保存された構成ファイルを使用します。
クラスタモード
Edge Microgateway をクラスタモードで起動するオプションが追加されました。クラスタモードでは、マルチコア システムを利用できます。この機能では、Node.js クラスタ モジュールが使用されます。詳細については、Node.js のドキュメントをご覧ください。
修正済みのバグ v2.0.0
プラグイン イベントのライフサイクルで、新しいコールバックを含むコードを含む非同期コードが適切に処理されるようになりました。
バージョン 1.1.2
Edge Microgateway v. 1.1.2 は 2016 年 3 月 14 日にリリースされました。
新機能と拡張機能 v.1.1.2
このリリースにおける新機能と改善点は次のとおりです。
パフォーマンスの改善
Edge Microgateway で、接続プーリングを改善するために Node.js HTTP エージェントが適切に使用されるようになりました。この機能強化により、高負荷時のパフォーマンスと全体的な安定性が向上します。
リモート デバッガのサポート
node-inspector などのリモート デバッガで実行するように Edge Microgateway を構成できます。
新しい構成ファイルの場所
Edge Microgateway を構成すると、agent/config/default.yaml ファイルが ~./edgemicro/config.yaml にコピーされるようになりました。
ログファイルのローテーション
新しい構成属性を使用すると、Edge Microgateway ログのローテーション間隔を指定できます。
修正済みのバグ v1.1.2
v. 1.1.2 では以下のバグが修正されています。
| 説明 |
|---|
| オンプレミス Edge で使用される edgemicro-internal プロキシの Java Callout で、正しい MGMT サーバーが使用されるようになりました。 |
| エージェントから typescript の依存関係を削除します。 |
| リーン デプロイ オプションを使用する際の CLI のバグを修正しました。 |
| 証明書ロジックの依存関係参照を修正。 |