4.15.07.00 - Apigee Edge for Private Cloud リリースノート

Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントに移動します。
info

2015 年 9 月 8 日(火曜日)に、Apigee Edge for Private Cloud のメジャー フィーチャー リリースをリリースしました。

前回の Edge for Private Cloud 四半期リリース(4.15.04.00)以降、次のリリースが行われ、この四半期リリースに含まれています。

4.15.07.00 にアップグレードできる Edge のバージョン

現在の Edge のバージョンに応じて、次のいずれかを行います。

  • 4.15.07.00 に直接アップグレードする
  • 段階的にアップグレードします。つまり、現在のバージョンから別のバージョンの Edge にアップグレードしてから、4.15.07.00 にアップグレードする必要があります。

詳細については、4.15.07.00 にアップグレードできる Edge for Private Cloud のバージョンをご覧ください。

バージョン 4.15.01.x 以前のバージョンからアップグレードする前に

アップグレードする前に、すべての Cassandra ノードで Cassandra SSTable がアップグレードされていることを確認します。
  1. Cassandra SSTable のバージョンを確認します。
    1. ディレクトリを /<install-root>/apigee4/data/cassandra/data に変更します。
    2. find コマンドを実行します。
      > find . -name *-ic-*
      Cassandra 1.2 SSTable を実行している場合、結果には一連の .db ファイルが返されます。
    3. 次の find コマンドを実行します。
      > find . -name *-hf-*
      結果は空になります。つまり、hf 形式の .db ファイルはありません。hf 形式のファイルが表示されない場合は、4.15.07.00 にアップグレードできます。

      hf 形式は、Cassandra 1.0 SSTable 用です。hf 形式の *.db ファイルがある場合は、この手順の残りの部分で説明されているように SSTable をアップグレードする必要があります。
  2. hf 形式の *.db ファイルが見つかった場合は、すべての Cassandra ノードがアップグレードされるまで、すべての Cassandra ノードで次のコマンドを実行して SSTable をアップグレードします。
    > /<install-root>/apigee4/share/apache-cassandra/bin/nodetool -h localhost upgradesstables -a
  3. ステップ 1 を繰り返して、すべての *.db ファイルが Cassandra 1.2 バージョンの ic 形式であることを確認します。
  4. Edge インストールのすべての Cassandra ノードで、手順 1 ~ 3 を繰り返します。
  5. Edge 4.15.07.00 にアップグレードします。
  6. 4.15.07.00 へのアップグレード後、*.db ファイルをチェックして、すべてが C* 2.0 スタイルの sstable にアップグレードされていることを確認します。
    > cd /<install-root>/apigee4/data/cassandra/data
    > find . -name *-jb-*

    Cassandra 2.0 を実行している場合、このコマンドは一連の .db ファイルを返します。

新機能と拡張機能

このリリースにおける新機能と改善点は次のとおりです。

インストールとアップグレード

コンポーネントの選択的なアップグレードとアンインストール

apigee-upgrade.sh スクリプトと apigee-uninstall.sh スクリプトで、アップグレードまたはアンインストールする Edge コンポーネントを選択できるようになりました。以前は、ノード上のすべてのコンポーネントをアップグレードまたはアンインストールしていました。(OPDK-1377、OPDK-1175)

アップグレードのロールバック

アップグレード中に apigee-upgrade.sh が失敗した場合、apigee-rollback.sh スクリプトを使用してアップグレードをロールバックできるようになりました。アップグレードの問題を修正したら、アップグレードを再試行できます。(OPDK-1275)

短縮されたインストーラ スクリプトのオプション

インストール スクリプトは、--help などの長い形式のオプションを受け取らなくなりました。現在は、-h などの 1 文字のオプションのみを受け入れます。(OPDK-1356)

SmartDocs のインストール

setup-smartdocs.sh スクリプトを使用して SmartDocs をインストールすると、組織、環境、仮想ホストの入力を求められます。これにより、SmartDocs が想定された場所にインストールされます。以前は、これらの値はスクリプトにハードコードされていました。(OPDK-1310)

プロンプトなしで update-cass-pwd-in-config.sh を実行する

ENABLE_CASS_AUTH、CASS_USERNAME、CASS_PASSWORD の環境変数を設定すると、update-cass-pwd-in-config.sh スクリプトをプロンプトなしで実行できます。(OPDK-1309)

エッジ プラットフォーム

このリリースに含まれる新しい Edge プラットフォーム機能は次のとおりです。

Edge Private Cloud でサポートされている OpenJDK 1.7

このリリースの Edge は Oracle JDK 1.7 と OpenJDK 7 をサポートしています。JDK 1.6 のサポートは終了しました。(OPDK-1187)

OS サポート

Apigee Edge for Private Cloud のオペレーティング システム サポートが拡張され、Red Hat Enterprise Linux 6.6 および 7.0(64 ビット)、CentOS 6.5、6.6、および 7.0(64 ビット)、Oracle Linux 6.5 が含まれるようになりました。

OPDK 15.07 に含まれる Cassandra 2.0.15

このリリースでは、Cassandra 2.0.15 がインストールされます。以前のリリースからアップグレードする場合は、Cassandra のバージョンが更新されます。(OPDK-1197)

OAuth トークン ハッシュの SHA2 サポート

データベースのセキュリティ侵害が発生した場合に OAuth トークンをより適切に保護するため、Edge は OAuth トークンのハッシュ化に SHA2 アルゴリズムをサポートしています(SHA1 に加えて)。新しい組織レベルのプロパティを使用すると、新しいトークンのハッシュを有効にして構成できるだけでなく、この新機能より前に存在していたトークンで以前のハッシュを保持することもできます。以前の Edge for Private Cloud では、keymanagement.properties ファイル(Management Server と Message Processor 上)の hash.oauth.tokens.enabled というプロパティにより、OAuth トークンの自動 SHA1 ハッシュが有効になっていました。このプロパティは非推奨になりました。

以前に hash.oauth.tokens.enabled プロパティを使用して SHA1 ハッシュを有効にしていた場合、このリリースのアップグレード スクリプトによって、新しい組織レベルのプロパティが自動的に生成されます。アップグレード後に確認するには、システム管理者として、API(https://{host}:{port}/v1/o/{your_org})を使用して GET を実行します。

  • 新しいプロパティを使用して組織でトークン ハッシュを有効にする方法については、アクセス トークンのリクエスト トピックの「データベースでのトークンのハッシュ」をご覧ください。
  • 既存のトークンを一括ハッシュ化する方法については、Edge for Private Cloud 運用ガイドをご覧ください。(APIRT-1389)

ログファイルのフラットなディレクトリ構造

message-logging.properties ファイルで新しい enable.flat.directory.structure プロパティを true に設定することで、フラットなディレクトリ構造にログファイルを保存するように Edge を構成できます。詳細については、Message Logging ポリシーをご覧ください。(APIRT-1394)

環境キャッシュのパフォーマンス

インメモリ キャッシュの管理と利用を改善するため、環境キャッシュ リソースの「メモリ内の最大要素数」設定は非推奨になりました。すべてのキャッシュ リソース(デフォルトのキャッシュを含む)に存在する要素の合計数は、キャッシュに割り当てられたメモリ割り当ての合計によって異なります。デフォルトでは、特定の Message Processor でメモリ内キャッシュに割り当てられる合計メモリは、Message Processor の cache.properties ファイルのキャッシュ プロパティ設定によって決定される、使用可能な合計メモリの 40% です。要素は、キャッシュ メモリが不足している場合、または要素の有効期限が切れた場合にのみ、メモリ内キャッシュから削除されます。

キャッシュ管理に「メモリ内の最大要素数」プロパティを使用する以前の動作に戻すには、cache.properties ファイルでプロパティ overrideMaxElementsInCacheResource=false を設定します。(APIRT-1140)


API サービス

このリリースに含まれる新しい API Services の機能は次のとおりです。

新しいプロキシ エディタをデフォルトとして設定

新しい API プロキシ エディタは、管理 UI でデフォルトで有効になっています。新しいエディタには、[Overview] ページでの条件付きフローとエンドポイントのより包括的なビュー、[Develop] ページでのすべての構成、条件付きフロー、エンドポイント、ポリシーのより直感的な追加、小さなスニペットではなくより完全な XML ビュー、ファイル名とテキストをクロールする検索など、多くのユーザビリティの改善が含まれています。(MGMT-2279)

新しい Delete OAuth v2.0 Info ポリシー

新しい「Delete OAuth v2.0 Info」ポリシーを使用すると、OAuth v2 アクセス トークンと認証コードを削除できます。このポリシーは、以前に Management API で提供されていた機能を置き換えるものです。詳細については、Delete OAuthV2 Info ポリシーをご覧ください。(MGMT-2257)

新しい Delete OAuth v1.0 Info ポリシー

新しい「Delete OAuth v1.0 Info」ポリシーを使用すると、OAuth v1.0 のリクエスト トークン、アクセス トークン、検証コードを削除できます。このポリシーは、以前に Management API で提供されていた機能を置き換えるものです。詳細については、Delete OAuth V1 Info ポリシーをご覧ください。(APIRT-1351)

アクセス制御ポリシー

アクセス制御ポリシーが拡張され、IP アドレスが X-FORWARDED-FOR HTTP ヘッダーに含まれている場合に、許可リストと拒否リストの IP アドレスをよりきめ細かく評価できるようになりました。

ヘッダーで複数の IP アドレスのチェックが有効になっている場合(feature.enableMultipleXForwardCheckForACL を設定するには、サポートにお問い合わせください)、ポリシーの新しい <ValidateBasedOn> 要素を使用すると、ヘッダーの最初の IP、最後の IP、またはすべての IP をチェックできます。詳細については、アクセス制御ポリシーをご覧ください。

アクセス エンティティ ポリシーの新しいエンティティ

Access Entity ポリシーは、consumerkey-scopes、authorizationcode、requesttoken、verifier という新しいエンティティへのアクセスを提供します。詳細については、Access Entity ポリシーをご覧ください。

Statistics Collector ポリシー: 統計情報名の小文字への自動変換

API プロキシ エディタ([Develop] ページ > [Tools] > [Custom Analytics Collection])でカスタム分析コレクションを作成する場合、コレクタ変数(統計)の「Name」は小文字にする必要があります。大文字で名前を入力すると、Statistics Collector ポリシーで統計情報名が自動的に小文字に変換されます。(MGMT-740)

API プロキシ エディタでの従来のトレースの削除

API プロキシ エディタの Trace 機能の最新バージョンがベータ版から一般提供に移行しました。[従来のバージョンのトレースにアクセスする] リンクを使用した「従来のトレース」へのアクセスはできなくなりました。

管理 UI のヘルプメニューから Apigee コミュニティにアクセス

Apigee コミュニティには、管理 UI の [Help] メニューからアクセスできます。

管理 UI のエラー メッセージ

管理 UI のエラー メッセージの機能強化は次のとおりです。

  • 管理 UI では、ログイン セッション全体ですべてのエラー メッセージがグループ化され、UI に表示されていました(ユーザーがエラー メッセージを閉じた場合を除く)。この更新により、エラー メッセージが発生したページから移動すると、エラー メッセージが自動的に消去されるようになりました。(MGMT-2254)
  • 管理 UI で、重複するエラー メッセージが抑制されなくなりました。(MGMT-2242)

UI のパフォーマンスとエラー処理の強化

ページ表示のパフォーマンスやエラー メッセージのクリーンアップなど、管理 UI のさまざまな領域が全般的に改善されました。

管理 UI の [Organization Users] ページ([Admin] > [Organization Users])で、ロール名がハイパーリンクになり、ロールページにすばやく移動できるようになりました。(MGMT-1055)

メッセージ フローの新しいターゲット変数

メッセージ フローの新しい変数により、ターゲット エンドポイントとターゲット サーバーのより完全な URL 情報が提供されます。

  • TargetEndpoint: request.url が target.basepath.with.query に置き換わります。
  • TargetServer: loadbalancing.targetserver が targetserver.name に置き換わります。また、target.basepath は、TargetEndpoint の HTTPTargetConnection <LoadBalancer> 要素で <Path> 要素が使用されている場合にのみ入力されます。

Server Name Indication(SNI)のサポート

Edge は、サウスバウンド(Message Processor からターゲット エンドポイント)の Server Name Indication の使用をサポートしています。SNI を使用する場合は、Apigee Edge サポートにお問い合わせください。

Java 1.7 が必要です。

TLS / SSL の拡張機能である SNI を使用すると、複数の HTTPS ターゲットを同じ IP アドレスとポートから提供できます。すべてのターゲットで同じ証明書を使用する必要はありません。

Edge 固有の構成は必要ありません。環境がサウスバウンド SNI 用に構成されている場合(Edge クラウドはデフォルトで構成されています)、Edge はこれをサポートします。

Edge は、リクエスト URL からホスト名を自動的に抽出し、SSL ハンドシェイク リクエストに追加します。たとえば、ターゲット ホストが https://example.com/request/path の場合、Edge は次のように server_name 拡張機能を追加します。

SNI の詳細については、http://en.wikipedia.org/wiki/Server_Name_Indication をご覧ください。

SSL 証明書の詳細の「署名アルゴリズム」

SSL 証明書の詳細に新しい「Signature Algorithm」フィールドが追加されました。このフィールドは、管理 UI([Admin] > [SSL Certificates])と Management API(キーストアまたはトラストストアから証明書の詳細を取得する)で確認できます。このフィールドには、証明書の生成に使用されたハッシュ アルゴリズムの種類に応じて、「sha1WithRSAEncryption」または「sha256WithRSAEncryption」が表示されます。

有効期限が近づいている SSL 証明書を表示しています

管理 UI の [SSL Certificates] ページ([Admin] > [SSL Certificates])には、新しい有効期限のプルダウン フィールドでの選択に応じて、SSL 証明書の有効期限が 10 日、15 日、30 日、または 90 日以内に切れることが示されます。

脅威対策のエラー構成

デフォルトでは、メッセージが JSON または XML の脅威対策ポリシーに一致しない場合、Edge は HTTP 500 Internal Server Error(内部サーバーエラー)のステータス コードと ExecutionFailed エラーをスローします。このエラー動作を変更するには、新しい組織レベルのプロパティを使用します。組織プロパティ features.isPolicyHttpStatusEnabled を true に設定すると、次のように動作します。

  • リクエスト: リクエスト フローに脅威保護ポリシーが関連付けられている場合、無効なメッセージは 400 ステータス コードと、対応するポリシー エラー メッセージを返します。
  • レスポンス: レスポンス フローに適用された脅威対策ポリシーにより、無効なメッセージであっても 500 ステータス コードが返され、ExecutionFailed だけでなく、対応するポリシー エラー メッセージのいずれかがスローされます。

Cloud のユーザーは、Apigee Edge サポートに連絡して組織のプロパティを設定する必要があります。この機能は、次の Private Cloud 四半期リリースで Edge プライベート クラウドのお客様に提供される予定です。

エンドポイント、プロキシ、その他のエンティティのスキーマを更新

TargetEndpoint、ProxyEndpoint、APIProxy などのポリシー以外のエンティティのリファレンス スキーマが更新されました。https://github.com/apigee/api-platform-samples/tree/master/schemas をご覧ください。(APIRT-1249)


デベロッパー サービス

このリリースに含まれるデベロッパー サービスの新機能は次のとおりです。

SmartDocs の一般提供

SmartDocs はベータ版を終了し、一般提供を開始しました。更新内容と新機能は次のとおりです。

  • Swagger 2.0 のサポート(ファイルまたは URL によるインポート、カスタム名のセキュリティ オブジェクトのサポートなど)。
  • SmartDocs を生成するテンプレートのビジュアル デザインを改善しました。
  • デベロッパー ポータルのユーザビリティとワークフローの強化。Drupal の [Content] > [SmartDocs] メニューから利用できます。
  • これまで「カスタム トークン」認証と呼ばれていたものが、「API キー」と呼ばれるようになりました。
  • リビジョン レベルで定義された認証「セキュリティ」オブジェクト。
  • テンプレート レベルでのクライアント認証の構成。新しいリビジョンでは、事前構成済みの SmartDocs クライアント認証情報がリセットされなくなりました。

その他の機能の説明については、こちらのブログ投稿をご覧ください。

SmartDocs のドキュメントについては、SmartDocs を使用した API のドキュメント化をご覧ください。

管理 UI に表示されるデベロッパー アプリ名

Edge のデベロッパー アプリには、変更できない内部名と、変更可能な表示名があります。管理 UI の [Developer App] ページ([Publish] > [Developer Apps] > アプリ名)では、アプリの内部「名前」が「表示名」とともに表示されるため、トラブルシューティングや API 管理のために内部名でアプリを視覚的に識別しやすくなります。


分析サービス

このリリースに含まれる新しい Analytics Services 機能は次のとおりです。

保持データの期限

管理 UI または API を使用して分析レポートを生成する場合、デフォルトでは、現在の日付から 6 か月以上前のデータにアクセスできません。6 か月以上前のデータにアクセスする必要がある場合は、Apigee Edge サポートにご連絡ください。

管理 UI から削除されるカスタム レポートのクラシック バージョン

管理 UI で、カスタム分析レポートの従来のバージョン(オプション)を使用できなくなりました。

デベロッパー エンゲージメント ウィジェットのパフォーマンス

メインの分析ダッシュボード([Developer Engagement] セクション)のファネル ウィジェットが、パフォーマンスを向上させるために強化されました。


収益化

このリリースに含まれる新しい収益化機能は次のとおりです。

料金プランのメール通知

新しい料金プランのメール通知タイプを使用すると、デベロッパーが購入したボリューム バンドまたはバンドル料金プランで、特定のトランザクションまたは金額の上限に達したときに、デベロッパーに通知できます。詳細については、通知テンプレートを使用して通知を設定するをご覧ください。

定期的な料金と集計基準期間の同期

料金プランでは、2 つの異なる期間が有効になる可能性があります。

  • 料金プランの [Fees] タブで構成される定期料金期間。デベロッパーに定期料金が請求されるタイミングを決定します。
  • ボリューム バンドル プランまたはバンドルプランの料金表で定義されている集計基準期間。デベロッパーのバンドル使用量がリセットされるタイミングを決定します。

この 2 つの期間が同期されました。ゼロ以外の定期料金と、ボリューム バンドまたはバンドル料金表の両方が料金プランに存在する場合、定期料金の期間が両方に使用されます。たとえば、月額料金がある場合、料金表バンドルも毎月(デフォルトでは月初に)リセットされます。

定期的な料金がない場合、バンドルは料金表で定義された集計基準に基づいてリセットされます。たとえば、デベロッパーが月の 19 日に料金表の使用を開始し、集計基準が毎月の場合、バンドルの使用量は 19 日の 1 か月後にリセットされます。

集計基準は非推奨となり、今後のリリースで収益化から削除される予定です。詳細については、料金表プランの詳細を指定するをご覧ください。

収益レポートのカスタム属性

トランザクション記録ポリシーを使用すると、必要に応じてトランザクションからカスタム属性データをキャプチャできます。また、これらのカスタム トランザクション属性を収益概要レポートに含めることができるようになりました。組織に MINT.SUMMARY_CUSTOM_ATTRIBUTES プロパティを追加すると、レポートで使用するためにデータベース テーブルに追加するカスタム属性を指定できます。

Apigee Edge for Private Cloud のお客様は、次の API 呼び出しとシステム管理者の認証情報を使用してフラグを設定できます。

curl -u email:password -X PUT -H "Content-type:application/xml" http://host:8080/v1/o/myorg -d \
"<Organization type="trial" name="MyOrganization">
    <Properties>
        <Property name="features.isMonetizationEnabled">true</Property>
        <Property name="MINT.SUMMARY_CUSTOM_ATTRIBUTES">[&quot;my_attribute_1&quot;,&quot;my_attribute_2&quot;]</Property>
        <Property name="features.topLevelDevelopersAreCompanies">false</Property>
    </Properties>
</Organization>"

API 呼び出しのカスタム属性の配列は URL エンコードされています。


SmartDocs のアップグレード プロセス

ベータ版の期間中にすでに SmartDocs を使用している場合、一般提供バージョンの新機能を使用するには、デベロッパー ポータルで SmartDocs をアップグレードする必要があります。

デベロッパー ポータルですでに公開されている SmartDocs ページは引き続き機能しますが、既存のページまたは新しいページを編集または公開する前に、更新プロセスを行う必要があります。

SmartDocs はデベロッパー ポータル内でレンダリングして公開できますが、SmartDocs は Apigee の Edge API 管理サービス内にある API モデルから生成されることに注意してください。Edge で API モデルに加えた変更は、すべての Pantheon 環境で同じになります(開発者が Pantheon 環境全体に存在するのと同様です)。

SmartDocs ベータ版から一般提供版にアップグレードするには

  1. Pantheon の dev 環境または test 環境で 15.05.27 リリースを更新してテストします。
  2. 使用している既存の API モデルを置き換える新しいモデルを作成します。
    • Swagger または WADL ドキュメントをインポートしている場合は、新しいリビジョンに再度インポートします。
    • SmartDocs モジュールを使用して API モデルを管理している場合は、SmartDocs JSON としてエクスポートし、ファイルの添付を使用して新しいモデルにインポートします。
  3. モデルのリビジョンのセキュリティ プロパティを設定します。[Content] > [SmartDocs] > [model] ページで、[Security Settings] を選択します。
  4. モデル設定ページ([Content] > [SmartDocs])で、[Operations] 列の [Settings] をクリックして、事前構成済みの認証を確認します。
  5. CSS と JS アセットの v6 を使用するようにカスタム テンプレートを更新し、authSchemes や apiSchema などの新しいオブジェクト名を反映するように変更します。SmartDocs テンプレートの更新については、SmartDocs を使用した API のドキュメント化をご覧ください。
  6. モデル リビジョンを再レンダリングして公開します。
  7. 新しいドキュメントを検証したら、本番環境ポータルを 15.05.27 リリースに更新します。

Edge エンタープライズのお客様で、アップグレード プロセスについてご質問やご不明な点がある場合は、marsh@apigee.com と cnovak@apigee.com までメールでお問い合わせください。それ以外の場合は、Apigee コミュニティをご利用ください。


今後の機能変更と機能強化

このセクションでは、今後予定されている機能の変更と拡張機能について説明します。

Response Cache ポリシーの動作の変更

今後のリリース(未定)で、Response Cache ポリシーの <ExcludeErrorResponse> 要素のデフォルトの動作が変更されます。

現在の動作: レスポンス キャッシュ ポリシーの <ExcludeErrorResponse> 要素は、デフォルトで false です。つまり、デフォルトでは、任意の HTTP ステータス コード(3xx を含む)を含むレスポンスが Response Cache ポリシーによってキャッシュに保存されます。

今後の動作: Response Cache ポリシーの <ExcludeErrorResponse> 要素のデフォルト値は true になります。つまり、デフォルトでは、HTTP ステータス コードが 200 ~ 205 のレスポンスのみがキャッシュに保存されます。この動作をオーバーライドして、すべてのステータス コードのレスポンスをキャッシュに保存するには、<ExcludeErrorResponse> 要素を明示的に true に設定する必要があります。

現在の回避策: プライベート クラウド 4.15.07.00 以前のリリースで、ステータス コードが 200 ~ 205 のレスポンスのみをキャッシュに保存する場合は、<ExcludeErrorResponse> 要素を明示的に true に設定する必要があります。


バグの修正

このリリースでは以下のバグが修正されています。

問題 ID 説明
OPDK-1521 パスワードの暗号化に関する問題
OPDK-1201 UI データを復元できない
OPDK-1112 カスタム LDAP パスワード ポリシーが Apigee 管理者ユーザーに適用されない
OPDK-1097 OPDK のアップグレード中のキースペース例外
OPDK-1068 インストール中に失敗した場合に管理者パスワードを変更できる
OPDK-1053 Zookeeper が root として実行されている
OPDK-967 set-autostart.sh を使用して OpenLDAP を自動起動するように設定すると、all-status.sh がデッドとして報告する
OPDK-905 Smartdocs prod already registered in group axgroup001
OPDK-899 オンボーディング中のエラー
OPDK-847 オンボーディング中に作成されたユーザーにパスワードを再設定するためのメールが届かない
OPDK-817 init.d スクリプトがエラーをスローする
OPDK-815 ax-purge.sh スクリプトでサンプリング テーブルのパージが必要
MGMT-2246 管理 UI でカスタム レポートの作成ページが正しく表示されない
MGMT-2235 有効期限が切れる SSL 証明書の場合、有効期限の相対時間がわかりにくく丸められることがある
有効期限が切れる SSL 証明書の場合、証明書の有効期限が 90 日以内の場合、有効期限の相対時間は、月単位に切り上げられるのではなく、常に日単位で表示されます。
MGMT-2193 API の編集時に読み込みスピナーが表示される
MGMT-2173 Trace UI で有効な URL が許可されない
Trace UI で、ネストされたクエリ パラメータを含むクエリ パラメータ値を持つリクエストを送信できるようになりました。
MGMT-2162 JavaScript のコンパイルに関する問題
MGMT-2124 UI で権限を保存すると、顧客ロールの権限がリセットされる
MGMT-2114 MessageLogging ポリシーの Syslog IP が無効な場合、デプロイ中に適切なエラーがスローされる
MGMT-2067 Trace: API プロキシ リビジョンが 2 つの環境にデプロイされている場合、リビジョンと環境の選択が正しく機能しない
MGMT-2061 [パスワードをお忘れの場合] で登録済みユーザーにのみメールを送信する
管理 UI のログインページにある [パスワードをお忘れの場合] リンクは、登録済みの Apigee ユーザーにのみメールを送信します。
MGMT-2048 デプロイ権限を 1 つの環境に制限するカスタムロールを持つユーザーが、他の環境にデプロイできる
MGMT-2041 デフォルトのアタッチメント テンプレートから FaultRules 要素を削除
ポリシーまたは API プロキシ ステップで使用されない FaultRules 要素は、API プロキシの作成時またはポリシーの追加時に自動的に追加されなくなりました。
MGMT-2034 WSDL の取得でエラーが返される: 「WSDL の取得エラー: WSDL の処理中にエラーが発生しました。」
MGMT-1986 デベロッパーの追加中に UI エラーが発生する
MGMT-1983 OAuth 2.0 認証コード API の取得で誤ったステータスが返される
MGMT-1962 安全なパスワードで管理 UI にログインするとエラーが発生する
パーセント記号などの特定の特殊文字を使用して UI にログインしても、エラーが発生しなくなりました。
MGMT-1947 管理 UI の直感的でないロール
ユーザーにトランザクション記録ポリシーを作成または編集する権限がない場合、トランザクション記録ポリシーを作成および編集するための UI ボタンが無効になりました。
MGMT-1899 プロダクト設定の保存後にリソースパスが削除される
API プロダクトの編集時に、ユーザーが [Save] ボタンをダブルクリックすると、プロダクトのリソースパスが削除されることがありました。なお、本事象はすでに解決しております。
MGMT-1894 デベロッパー列のデベロッパー アプリページの読み込みが完了しない
MGMT-1882 WSDL からの新しい API プロキシに最後のパラメータの詳細のみが表示される
MGMT-1878 複数のリビジョンが環境にデプロイされている場合、Trace にはそのうちの 1 つのみが表示されます。
MGMT-1872 カスタム レポートをダウンロードできない
MGMT-1863 Node.js のログが管理 UI に表示されない
MGMT-1843 API プロキシが開かない
MGMT-1833 sysadmin ユーザーが OPDK の UI でパスワードを変更できないようにする
MGMT-1825 クロスサイト スクリプティング(XSS)のバグ
MGMT-1824 拡張子が .xml の WSDL ファイルをインポートする際の WSDL 取得エラー
MGMT-1812 インポート時に TargetEndpoint の検証を追加
ProxyEndpoint と同様に、API プロキシのインポート時に、TargetEndpoint のスキーマと条件で使用される式が適切かどうかが検証されます。
MGMT-1804 Node.js API が無効な JSON を送信する場合がある
JSON データに無効な文字が含まれている場合、Node.js のログ画面にフォーマットされていないログが表示されていました。このリリースで修正され、UI に適切にフォーマットされた node.js ログが表示されるようになりました。
MGMT-1802 パスワードの再設定 URL #118
管理 UI が SSL 終端サーバーの背後にある場合、管理 UI は、http URL ではなく https URL へのリンクを含むパスワードの再設定メールを正しく生成するようになりました。
MGMT-1799 Trace でリクエストを送信する際の UI セキュリティの脆弱性
MGMT-1777 TLD が .acn のメールアドレスを持つユーザーを追加できない
MGMT-1735 ブランディング「W の取得中にエラーが発生しました」
Edge OPDK のカスタム ブランディングのサポートを直ちに終了しました。この機能を使用していた一部のお客様にはご不便をおかけしますが、この機能は API 管理に関する Edge の機能を直接改善するものではありません。
MGMT-1569 API プロキシを既存の API プロダクトに接続する際の問題
API プロキシに「/」パスのリソースがある場合に、管理 UI で API プロキシを API プロダクトに接続する際の問題を修正しました。
MGMT-1563 エラーが発生した場合、Trace の [Send] ボタンが無効のままになる
MGMT-1362 メールアドレスに「_」が含まれている場合、パスワードを忘れた場合のメールが機能しない
アンダースコアを含むメールアドレスを使用している OPDK でのパスワードの再設定の問題を修正しました。
MGMT-1345 複数の名前空間を持つ WSDL をインポートすると、Build SOAP ステップが正しく行われない
MGMT-1193 プロキシを新しいリビジョンとして保存すると、予期せずルートルールが変更される
MGMT-1061 SmartDocs: Swagger 定義の本文タイプ パラメータの説明がドキュメント UI に表示されない
MGMT-800 「default」という名前のリソースを作成すると、UI が破損する
MGMT-787 UI アラートのユーザビリティの問題
管理 UI で [+ API プロキシ] をクリックして [New API プロキシ] ダイアログが表示されたときに、Esc キーを押すとダイアログを閉じることができます。
MGMT-619 API プロキシの UI ページでページ分けを有効にする
MGMT-602 API プロキシの開発ビュー: エンドポイントに PreFlow / PostFlow がない場合にレスポンス キャッシュ ポリシーを追加すると、エラーが発生する
MGMT-460 ポリシーの名前を変更すると、不具合が発生し、削除できない重複ポリシーが作成される
DEVRT-1644 名前による Notifications の検索で、間違ったメールが送信される
DEVRT-1583 収益化 UI に現在の料金プランの「Future」バッジが表示される
DEVRT-1546 プランの上限が機能しない
DEVRT-1511 既存のデベロッパーに対する mint.resourceDoesNotExist エラー
CORERT-639 TCPSysLogSocket は非同期である必要があります
CORERT-613 「unrecognized_name」による SSL handshake の失敗
AXAPP-1728 アナリティクスで収益化変数を無視する
AXAPP-1708 Analytics API で同じ統計情報を取得しようとしても、リクエストの方法によって異なる数値が返される
AXAPP-1707 無料ポッドの分析パフォーマンスを向上させる
AXAPP-1690 カスタム レポートの「無効な API エラー」
AXAPP-1533 アナリティクスの Geomap で無効な API 呼び出しエラーがスローされる
AXAPP-1493 キャッシュ パフォーマンスの統計情報が正しくない
APIRT-1436 ハッシュ化されていないトークンをハッシュ化するツール / スクリプトを作成する
APIRT-1425 continueOnError 属性を「true」に設定しても、JavaCallout ポリシーには影響しません
APIRT-1346 OAuth2.0 - hash.oauth.tokens.enabled が true の場合、アクセス トークン レスポンスでハッシュ値が返される
APIRT-1206 target_ip は、503 とほとんどの 504 のファクト テーブルに記録されません
APIRT-1170 リソース ファイルがないため、MP が環境を読み込めない
APIRT-1148 ResponseFlow で {message.version} 変数を GET すると、Node.js ターゲットで NPE がスローされる
APIRT-1054 デフォルト以外のディレクトリにログを記録しようとすると、メッセージ ロギングが失敗する
APIRT-387 MP で OrganizationService をフレーバー「others」で実行する
APIRT-67 OAuth GenerateAccessToken ポリシーで oauthV2.failed 変数が正しく設定されない
APIRT-52 カスタム レポート: 多くの API のレスポンス ステータス コードが null になる

既知の問題

このリリースには、次の既知の問題があります。

問題 ID 説明
OPDK-1586

IPV6 サポートが有効になっていない場合、API BaaS ポータルが起動しない
回避策は、/<install-dir>/apigee4/conf/nginx/conf.d/loadbalancer.conf で次の IPV6 行をコメントアウトして API BaaS ポータルを実行するか、IPV6 サポートを有効にすることです。

# listen [::]:8080;

OPDK-1785

アップグレードされた Edge がインストールされている環境に収益化コンポーネントをインストールする
Edge のインストールを 4.15.07.00 にアップグレードする場合、アップグレード前に収益化を使用していなかった場合は、4.15.07.00 バージョンの Edge に収益化をインストールすることはできません。

回避策は、Monetization をインストールする前に、apigee-env.sh ファイルで正しい Monetization バージョンを設定することです。4.15.07 の Monetization バージョンを取得するには(Edge 4.15.07 にアップグレードした後)、次のコマンドを実行します。
> source /{install-dir}/apigee4/bin/apigee-env.sh

> VER=`basename $(find $SHARE_DIR/installer/monetization -name "mint-*.zip") | cut -d "-" -f 2,3,4`
デフォルトでは、install-dir は /opt です。
上記の VER の値は、apigee-env.sh で設定する必要があります。
> sed -i "s/^MONETIZATION_VERSION=.*/MONETIZATION_VERSION=$VER/" /install-dir/apigee4/bin/apigee-env.sh
上記の手順を行わずに Monetization をインストールしようとすると、インストールは失敗し、share ディレクトリにデッド シンボリック リンクが作成される可能性があります。そのシンボリック リンクを削除する必要があります。
> rm /install-dir/apigee4/share/monetization
シンボリック リンクを削除したら、上記の手順に沿って Monetization のバージョンを設定し、Monetization のインストールを再試行します。
OPDK-1857 bin/qpid-stat.sh と bin/qpid-config.sh でハードコードされた Python 2.6 バージョン

CentOS と RedHat 7.0 では、bin/qpid-stat.sh と bin/qpid-config.sh のいくつかのスクリプトが Python バージョン 2.6 を使用するようにハードコードされています。

この問題を回避するには、apigee4/bin ディレクトリの qpid-stat.sh と qpid-config.sh で PYTHONPATH をエクスポートする行を変更します。

export PYTHONPATH="${QPID_DIR}/lib/python2.6/site-packages"

システム上の Python のバージョンを確認するには、/opt/apigee4/share/apache-qpid/lib ディレクトリで Python のバージョンを確認します。通常、このディレクトリは python2.7 です。

次に、qpid-stat.sh と qpid-config.sh の PYTHONPATH 設定を正しいパスに更新する必要があります。次に例を示します。

export PYTHONPATH="${QPID_DIR}/lib/python2.7/site-packages"

DEVRT-1574 複数の有効な料金プランを持つデベロッパーの残高と使用量に不整合がある
収益化において、デベロッパーが API 呼び出しごとの料金が設定されている複数の料金プランでアクティブな場合、残高の使用量に不整合が生じることがあります。
APIBAAS-1647 システム管理者としてログインした後、BaaS UI で「ロールの取得エラー」というメッセージが表示される
このエラー メッセージは、4.15.01 から 4.15.07 にアップグレードした後、システム管理者がシステムに初めてログインしたときに表示されます。このメッセージは無視できます。
DEVRT-1834 Monetization を 4.15.07 にアップグレード
apigee-upgrade.sh スクリプトの最後に、別のスクリプトを実行するよう求める次のメッセージが表示されます。
**************************************
In order to complete the monetization upgrade please run:
sudo /opt/apigee4/share/monetization/schema/migration/MOPDK4.15.04.00/
365-create-notification-condition.sh
**************************************

このメッセージは無視できます。このスクリプトは必須ではなく、実行できません。

DEVRT-1951 収益化の新規インストールで通知構成が欠落している
Apigee Edge for Private Cloud バージョン 4.15.07.00 の新規インストールでは、収益化通知に関する次の構成がありません。これらは、管理 UI の [管理] > [通知] ページにある通知タイプに対応しています。
mint.scheduler.${ORG_ID}.adhocnotify@@@management
mint.scheduler.${ORG_ID}.expiringrateplannotify@@@management
mint.scheduler.${ORG_ID}.newpkgnotify@@@management
mint.scheduler.${ORG_ID}.newproductnotify@@@management
mint.scheduler.${ORG_ID}.newrateplannotify@@@management
mint.scheduler.${ORG_ID}.tncacceptancenotify@@@management
この問題を回避する手順は次のとおりです。Cassandra インスタンスの IP アドレスが必要です。これを確認するには、<installation-root>/apigee4/conf/cassandra/cassandra.yaml または <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties を参照してください。
  1. 次のコマンドを実行します。{ORG_ID} 変数はそのままにして、<org_name>、<installation-root>、<cassandra_ip_address> を置き換えます。
    sed -e "s/\${ORG_ID}/<org_name>/g" <installation-root>/apigee4/share/monetization/schema/cassandra/org/ui/mint-org-specific-ui-schedulers.txt > /tmp/mint-org-specific-ui-schedulers.txt
    
    <installati>on-root/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-ui-schedulers.txt
  2. 管理サーバーを再起動します。
DEVRT-1952 4.14.07.00 からの収益化のアップグレードで通知構成が欠落している
Apigee Edge for Private Cloud をバージョン 4.14.07.00 から 4.15.07.00 にアップグレードすると、収益化通知に関する次の構成が欠落し、収益化レポートが正しく機能しなくなります。
mint.scheduler.${ORG_ID}.chargedaily@@@management
mint.scheduler.${ORG_ID}.chargehourly@@@management
この問題を回避する手順は次のとおりです。Cassandra インスタンスの IP アドレスが必要です。これを確認するには、<installation-root>/apigee4/conf/cassandra/cassandra.yaml または <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties を参照してください。
  1. 次のコマンドを実行します。{ORG_ID} 変数はそのままにして、<org_name>、<installation-root>、<cassandra_ip_address> を置き換えます。
    sed -e "s/\${ORG_ID}/<org_name>/g" <installation-root>/apigee4/share/monetization/schema/cassandra/org/system/mint-org-specific-system-schedulers.txt > /tmp/mint-org-specific-system-schedulers.txt
    
    <installati>on-root/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-system-schedulers.txt
  2. 管理サーバーを再起動します。
OPDK-1878 複数のデータセンター インストールで Pod 名を設定できない
Edge インストール ガイドでは、複数のデータセンター インストールの自動インストール ファイルで Pod 名を「gateway-1」と「gateway-2」に設定するように指定されています。ただし、Pod の名前を変更すると、Router と Message Processor が正しく登録されず、アクセスできなくなります。この問題により、setup-org.sh スクリプトが使用可能な Message Processor を検出できなくなります。

回避策は、両方のデータセンターの自動インストール ファイルで、MP_POD プロパティを使用して Pod 名を「gateway」に設定することです。
OPDK-1886

ノードが 192.168.x.y などのローカル IP アドレスにアクセスできない
ローカル IP アドレスにアクセスしようとすると、「connect EINVAL」というエラーが表示されます。
回避策は、Message Processor ノードの /<install_dir>/apigee4/conf/apigee/message-processor/nodejs.properties ファイルを編集して、次の行をコメントアウトすることです。

connect.ranges.denied=10.0.0.0/8,192.168.0.0/16,127.0.0.1/32

次に、Message Processor ノードを再起動します。

<install_dir>/apigge4/bin/apigee-service message-processor restart 
OPDK-1958 アップグレード時に、すべてのノードが Management Server のポート 8080 にアクセスする必要があります。
実行時に、次のコンポーネントが Management Server のポート 8080 にアクセスする必要があります。 Router、Message Processor、UI、Postgres、Qpid。ただし、アップグレード時には、Cassandra ノードと Zookeeper ノードを含むすべてのノードが、Management Server のポート 8080 にアクセスする必要があります。
OPDK-1962 アップグレード後に Edge API の SSL を再構成する必要がある
4.15.07.00 にアップグレードする前に SSL を使用するように Edge API を構成している場合は、アップグレード後に SSL を再構成する必要があります。Edge API の SSL を構成する手順については、Edge のオペレーション ガイドをご覧ください。