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

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

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 など)のみが使用可能になりました。(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 は(SHA1 に加えて)OAuth トークンのハッシュ化に SHA2 アルゴリズムをサポートしています。新しい組織レベルのプロパティを使用すると、新しいトークンのハッシュ化を有効にして構成できるほか、この新機能の前に存在したトークンに対して従来のハッシュ化を保持することもできます。以前の Edge for Private Cloud では、(Management Server と Message Processor の)keymanagement.properties ファイルの 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)

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

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

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

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

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

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

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

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: target.basepath.with.queryrequest.url に置き換えられます。
  • TargetServer: targetserver.name に代わり loadbalancing.targetserver になりました。また、target.basepath は、TargetEndpoint の HTTPTargetConnection <LoadBalancer> 要素で <Path> 要素が使用されている場合にのみ入力されます。

Server Name Indication(SNI)のサポート

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

Java 1.7 が必要です。

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

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

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

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

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

SSL 証明書の詳細に新しい [署名アルゴリズム] フィールドが追加されました。このフィールドは、管理 UI([管理] > [SSL 証明書])と管理 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 サポートに連絡して組織のプロパティを設定する必要があります。この機能は、Private Cloud の次の四半期リリースで Edge Private Cloud のお客様が利用できるようになります。

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

リファレンス スキーマが、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] > アプリ名)には、アプリの内部名「Name」と「Display Name」が表示されます。これにより、トラブルシューティングや API 管理で内部名でアプリを視覚的に識別しやすくなります。


分析サービス

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

保持されるデータの有効期限

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

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

管理 UI では、カスタム アナリティクス レポートのオプションの従来バージョンを使用できなくなりました。

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

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


収益化

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

料金プランのメール通知

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

定期的な料金と集計ベースの期間の同期

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

  • 料金プランの [料金] タブで設定される定期料金の期間。デベロッパーに定期料金が請求されるタイミングを決定します。
  • 集計ベース期間: ボリューム制限付きプランまたはバンドル プランの料金表で定義され、デベロッパーのバンドル使用量がリセットされるタイミングを決定します。

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

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

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

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

トランザクション レコーディング ポリシーを使用すると、必要に応じてトランザクションからカスタム属性データをキャプチャできます。これらのカスタム トランザクション属性を収益概要レポートに含めることができるようになりました。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 サービス内に存在する 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 Enterprise をご利用で、アップグレード プロセスについてご不明な点やご懸念がある場合は、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 で OpenLDAP が停止していると報告される
OPDK-905 Smartdocs 製品がグループ 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 の取得が失敗し、「WSDL の取得エラー: WSDL の処理中にエラーが発生しました」と返される。
MGMT-1986 デベロッパーの追加中に UI エラーが発生する
MGMT-1983 Get an OAuth 2.0 authorization code API が間違ったステータスを返す
MGMT-1962 強力なパスワードで管理 UI にログインするとエラーになる
パーセント記号などの特定の特殊文字を使用して UI にログインしても、エラーは発生しなくなりました。
MGMT-1947 管理 UI のわかりにくいロール
ユーザーにトランザクション レコーディング ポリシーの作成または編集権限がない場合、トランザクション レコーディング ポリシーの作成と編集を行う UI ボタンが無効になります。
MGMT-1899 プロダクトの設定を保存した後にリソースパスが削除される
API プロダクトを編集する際に、ユーザーが [保存] ボタンをダブルクリックすると、プロダクトのリソースパスが削除される可能性があります。なお、本事象はすでに解決しております。
MGMT-1894 [Developer Apps] ページのデベロッパー列の読み込みが完了しない
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 と同様に、TargetEndpoint は、API プロキシのインポート時に条件で使用される適切なスキーマと式について検証されます。
MGMT-1804 Node.js API が場合によって無効な JSON を送信している
Node.js ログ画面では、json データに無効な文字が含まれている場合、フォーマットされていないログが表示されていました。この問題は今回のリリースで修正され、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 の送信ボタンが無効のままになる
MGMT-1362 メールアドレスに「_」が含まれている場合に、[パスワードをお忘れの場合] メールが機能しない
アンダースコアを含むメールアドレスで OPDK のパスワード再設定に関する問題を修正しました。
MGMT-1345 複数の Namespace を含む WSDL のインポートで、Build SOAP Step が正しく実行されない
MGMT-1193 プロキシを新しいリビジョンとして保存すると、ルートルールが予期せず変更される
MGMT-1061 SmartDocs: Swagger 定義の body タイプ パラメータの説明がドキュメント 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 に、現在の料金プランの「今後」バッジが表示される
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 アナリティクスの地図で「無効な 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 Portal が起動しない
回避策として、/<install-dir>/apigee4/conf/nginx/conf.d/loadbalancer.conf で次の IPV6 行をコメントアウトして API BaaS Portal を実行するか、IPV6 サポートを有効にします。

# listen [::]:8080;

OPDK-1785

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

回避策として、収益化のインストールを試みる前に、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 システム管理者としてログインすると、BaaS UI に「ロールの取得中にエラーが発生しました」というメッセージが表示される
このエラー メッセージは、4.15.01 から 4.15.07 にアップグレードした後に、システム管理者がシステムに初めてログインしたときに表示されます。このメッセージは無視できます。
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 の [管理] > [通知] ページの通知タイプに対応しています。
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 のオペレーション ガイドをご覧ください。