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 にアップグレードする必要があります。

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

バージョン 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 /<インストール ルート>/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 を使用して GET を実行します。https://{host}:{port}/v1/o/{your_org}。

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

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

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

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

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

キャッシュ管理に「Maximum Elements in Memory」プロパティを使用する以前の動作に戻すには、cache.properties ファイルでプロパティ overrideMaxElementsInCacheResource=false を設定します。(APIRT-1140)


API サービス

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

新しいプロキシ エディタがデフォルトに

新しい API プロキシ エディタは、管理 UI でデフォルトで有効になっています。新しいエディタには、概要ページの条件付きフローとエンドポイントの包括的なビュー、開発ページのすべての構成、条件付きフロー、エンドポイント、ポリシーの直感的な追加、小さなスニペットではなく完全な 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)

アクセス制御ポリシー

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

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

Access Entity ポリシーの新しいエンティティ

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

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

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

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

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

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

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

管理 UI に表示されるエラー メッセージ

管理 UI のエラー メッセージの改善点は次のとおりです。

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

UI のパフォーマンスとエラーの改善

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

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

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

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

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

Server Name Indication(SNI)のサポート

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

Java 1.7 が必要です。

TLS/SSL の拡張機能である SNI を使用すると、複数の HTTPS ターゲットが、同じ証明書を使用せずに同じ IP アドレスとポートからサービスを提供できます。

Edge 固有の構成は必要ありません。環境が下り(南向き)SNI 用に構成されている場合(Edge Cloud はデフォルト)、Edge は SNI をサポートします。

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

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

SSL 証明書の詳細の [署名アルゴリズム]

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

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

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

脅威対策のエラー構成

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

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

Cloud のお客様は、Apigee Edge サポートに連絡して組織のプロパティを設定する必要があります。この機能は、次の Private Cloud 四半期リリースで Edge Private Cloud のお客様にご利用いただけるようになります。

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

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


デベロッパー サービス

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

SmartDocs の一般提供

SmartDocs がベータ版から一般提供に移行します。更新情報と新機能は次のとおりです。

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

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

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

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

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


分析サービス

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

保持されたデータの上限時間

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

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

カスタム分析レポートのオプションのクラシック バージョンは、管理 UI で使用できなくなりました。

Developer Engagement ウィジェットのパフォーマンス

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


収益化

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

料金プランのメール通知

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

Recurring Fee と Aggregation Basis の期間の同期

レートプランでは、有効な期間が 2 つある可能性があります。

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

これで、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 Management Services 内にある 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. [Operations] 列の [Settings] をクリックして、モデル設定ページ([Content] > [SmartDocs])で事前構成済みの認証を確認します。
  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 に設定する必要があります。

現在の回避策: Private Cloud 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 で dead と報告される
OPDK-905 Smartdocs prod はすでにグループ 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 トレース: 2 つの環境に API プロキシ リビジョンがデプロイされている場合、リビジョンと環境の選択が正しく機能しない
MGMT-2061 パスワードをお忘れの場合、登録ユーザーにのみメールを送信する
管理 UI のログインページの [パスワードをお忘れの場合] リンクは、登録済みの Apigee ユーザーにのみメールを送信します。
MGMT-2048 デプロイ権限を 1 つの環境に制限するカスタムロールを持つユーザーが他の環境にデプロイできる
MGMT-2041 デフォルトのアタッチメント テンプレートから FaultRules 要素を削除
ポリシーまたは API プロキシ ステップで使用されていない FaultRules 要素は、API プロキシの作成時やポリシーの追加時に自動的に追加されなくなりました。
MGMT-2034 WSDL の取得が失敗し、「Fetch WSDL Error: Error processing WSDL.」というエラーが返される。
MGMT-1986 デベロッパーの追加中に UI エラーが発生する
MGMT-1983 OAuth 2.0 認証コードを取得する API が間違ったステータスを返す
MGMT-1962 強力なパスワードで管理 UI にログインするとエラーが発生する
パーセント記号などの特定の特殊文字を使用して UI にログインしても、エラーが発生しなくなりました。
MGMT-1947 管理 UI の直感的でないロール
ユーザーにトランザクション記録ポリシーの作成または編集権限がない場合、トランザクション記録ポリシーの作成と編集を行う UI ボタンが無効になりました。
MGMT-1899 プロダクト設定の保存後にリソースパスが削除される
API プロダクトの編集時に、ユーザーが [保存] ボタンをダブルクリックすると、プロダクトのリソースパスが削除されることがありました。なお、本事象はすでに解決しております。
MGMT-1894 [Developer Apps] ページの [Developer] 列の読み込みが完了しない
MGMT-1882 WSDL からの新しい API プロキシに最後のパラメータの詳細のみが表示される
MGMT-1878 複数のリビジョンが環境にデプロイされている場合、Trace には 1 つのリビジョンのみが表示される
MGMT-1872 カスタム レポートをダウンロードできない
MGMT-1863 管理 UI で Node.js ログを表示できない
MGMT-1843 API プロキシが開かない
MGMT-1833 システム管理者ユーザーは 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 プロキシに「/」パスのリソースがある場合に、Management UI で API プロキシを API プロダクトに関連付ける問題を修正しました。
MGMT-1563 エラーが発生した場合、Trace の送信ボタンが無効のままになる
MGMT-1362 メールアドレスに「_」が含まれている場合、[パスワードをお忘れの場合] のメールが機能しない
アンダースコアを含むメールアドレスで OPDK のパスワード再設定の問題を修正します。
MGMT-1345 複数の Namespace を含む WSDL をインポートすると、Build SOAP Step が正しくない
MGMT-1193 プロキシを新しいリビジョンとして保存すると、ルートルールが予期せず変更される
MGMT-1061 SmartDocs: Swagger 定義の本文型パラメータの説明がドキュメント UI に表示されない
MGMT-800 名前が「default」のリソースを作成すると、UI が破損する
MGMT-787 UI アラートのユーザビリティの問題
管理 UI で [+ API Proxy] をクリックして [New API Proxy] ダイアログが表示されたら、Esc キーを押してダイアログを閉じることができます。
MGMT-619 API プロキシの UI ページでページネーションを有効にする
MGMT-602 API プロキシの [Develop] ビュー: エンドポイントに PreFlow/PostFlow がない場合に Response Cache ポリシーを追加するとエラーが発生する
MGMT-460 ポリシーの名前を変更すると、動作が不安定になり、削除できない重複したポリシーが作成される
DEVRT-1644 名前による通知の検索で誤ったメールが送信される
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 無料 Pod の分析パフォーマンスを向上させる
AXAPP-1690 カスタム レポートに「Invalid API Error」と表示される
AXAPP-1533 Analytics の Geomap で Invalid API Call エラーが発生する
AXAPP-1493 キャッシュ パフォーマンスの統計情報が正しくない
APIRT-1436 ハッシュ化されていないトークンをハッシュ化するツール/スクリプトを作成する
APIRT-1425 JavaCallout ポリシーで continueOnError 属性が「true」に設定されている場合、効果がない
APIRT-1346 OAuth2.0 - hash.oauth.tokens.enabled が true の場合、ハッシュ値がアクセス トークン レスポンスで返される
APIRT-1206 503 エラーとほとんどの 504 エラーについて、target_ip がファクト テーブルに記録されない
APIRT-1170 リソース ファイルがないため、MP が環境を読み込めない
APIRT-1148 Node.js ターゲットの場合、ResponseFlow で {message.version} 変数の GET が 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 にアップグレードし、アップグレード前に収益化を使用していなかった場合は、Edge の 4.15.07.00 バージョンに収益化をインストールできません。

回避策として、収益化をインストールする前に、apigee-env.sh ファイルで正しい収益化バージョンを設定します。4.15.07 で収益化のバージョンを取得するには(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
上記の手順を実行せずに収益化をインストールしようとすると、インストールが失敗し、共有ディレクトリに無効なシンボリック リンクが存在する可能性があります。シンボリック リンクを削除する必要があります。
> 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 sysadmin としてログインした後、BaaS UI に「Error getting roles」というメッセージが表示される
このエラー メッセージは、4.15.01 から 4.15.07 にアップグレードした後、sysadmin がシステムに初めてログインしたときに表示されます。このメッセージは無視できます。
DEVRT-1834 収益化を 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 の [Admin] > [Notifications] ページにある通知タイプに対応しています。
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
    
    <installation-root>/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-ui-schedulers.txt
  2. Management Server を再起動します。
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
    
    <installation-root>/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-system-schedulers.txt
  2. Management Server を再起動します。
OPDK-1878 複数データセンターのインストールで Pod 名を設定できない
Edge インストール ガイドでは、複数データセンターのインストール用のサイレント インストール ファイルで Pod 名を「gateway-1」と「gateway-2」に設定するように指定されています。ただし、Pod の名前を変更すると、Router と Message Processor が適切に登録されず、アクセスできなくなります。この問題により、setup-org.sh スクリプトが使用可能なメッセージ プロセッサを見つけることもできなくなります。

回避策として、両方のデータセンターのサイレント インストール ファイルで 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 にアクセスする必要があります
実行時には、Router、Message Processor、UI、Postgres、Qpid などのコンポーネントが Management Server のポート 8080 にアクセスする必要があります。ただし、アップグレード時には、Cassandra ノードと Zookeeper ノードを含むすべてのノードが Management Server のポート 8080 にアクセスする必要があります。
OPDK-1962 アップグレード後に Edge API の SSL を再構成する必要がある
4.15.07.00 にアップグレードする前に SSL を使用するように Edge API を構成している場合は、アップグレード後に SSL を再構成する必要があります。Edge API の SSL を構成する手順については、Edge のオペレーション ガイドをご覧ください。