4.17.01 - Edge for Private Cloud リリースノート

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

2017 年 1 月 25 日(水)、Apigee Edge for Private Cloud の新しいバージョンをリリースしました。

以前の Edge for Private Cloud 機能リリース以降、次のリリースが行われ、この機能リリースに含まれています。

特定のクラウド リリースが Edge for Private Cloud のバージョンに含まれているかどうかを確認する方法については、リリース番号についてをご覧ください。

リリースの概要

このリリースには、API の制御と保護に役立つ重要な機能が含まれています。

共有フローとフローフックを使用すると、複数の API プロキシ間で再利用可能な一連のポリシーと動作を作成できます。

Key-Value ペアを長期にわたって永続化する Edge 機能として、すでに Key-Value マップ(KVM)を暗号化して、データ セキュリティを強化できるようになりました。

開発者による API へのアクセスをより柔軟に制御するために、Edge 管理 UI では、API キーとシークレット(認証情報)の作成と管理、デベロッパー アプリの取り消し、デベロッパーの無効化を行うためのさまざまなオプションが用意されています。これにより、API キーのローテーションなどの戦略をより簡単に実装できるようになります。また、デベロッパー アプリを取り消す(アプリのキーをすべて無効)またはデベロッパーを無効化(デベロッパーのアプリとキーがすべて無効)することで、複数の API キーを無効化できます。

収益化の上限機能は、サポート終了に伴い廃止されました。

このトピックの残りの部分では、リリースに含まれるすべての新機能、アップデート、バグ修正について詳しく説明します。

非推奨になった機能と廃止された機能

次の機能は、このリリースで非推奨になったか廃止されました。詳細については、Edge 非推奨ポリシーをご覧ください。

廃止: 収益化の上限(Cloud 16.10.26 UI)

管理 UI([管理] > [上限])から収益化の上限機能を削除しました。代わりに使用する内容など、詳細については、非推奨のお知らせをご覧ください。 http://docs.apigee.com/monetization/content/limit-feature-deprecation-notice (DEVRT-3259)

RedHat/CentOS バージョン 6.5 のサポートを終了

現在 RedHat/CentOS バージョン 6.5 を使用している場合は、Edge 4.17.01 に更新する前に、オペレーティング システムをバージョン 6.6 以降に更新する必要があります。

新機能とアップデート

このリリースでの新機能と機能強化は次のとおりです。このリリースでは、以下の機能強化に加え、ユーザビリティ、パフォーマンス、セキュリティ、安定性の機能も強化されています。

詳細と手順については、Edge for Private Cloud のドキュメントをご覧ください。

プライベート クラウド

ユーザーが初めて Edge UI にアクセスしたときに、同意バナーを表示できます。同意バナーには、HTML 形式のテキストと、ユーザーが選択してログイン画面に進むボタンが表示されます。詳しくは、同意バナーの有効化をご覧ください。

API BaaS で複数のデータセンターをサポート

API BaaS を複数のデータセンターにインストールできるようになりました。詳細については、API BaaS 用の複数のデータセンターのインストールをご覧ください。

新しい API BaaS インストール構成パラメータ

次の 2 つの新しい構成パラメータが API BaaS 構成ファイルに追加されました。

  • BAAS_CASS_DC_LIST - BaaS データセンターのリージョン名を指定します。データセンターが 1 つの場合は、BAAS_CASS_LOCALDC と同じ値を指定します。
  • BAAS_CLUSTER_SEEDS - BaaS クラスタのシードを定義するために使用される BaaS Stack ノードを指定します。

詳細については、Apigee Edge 4.16.09 を 4.17.01 に更新するをご覧ください。

API BaaS の apigee-service コマンドで「deploy」オプションを実行できなくなった

apigee-service コマンドの deploy オプションは、API BaaS スタックとポータルではサポートされなくなりました。代わりに、configureオプションとconfigureオプションを使用します。詳細については、API BaaS のインストールをご覧ください。

API BaaS の新しいポート要件

今後、すべての BaaS Stack ノードでは、他のすべての Stack ノードからアクセスするためにポート 2551 を開く必要があります。複数の BaaS データセンターがある場合は、すべてのデータセンター内のすべてのスタックノードからポートにアクセスできる必要があります。

詳細については、API BaaS のインストールインストール要件をご覧ください。

Developer Services ポータルでは、データベースとして Postgres、ウェブサーバーとして Nginx が使用されるようになりました

新規にインストールする場合、ポータルのデータベースは MySQL や MariaDB ではなく Postgres になります。以前のバージョンから 4.17.01 にアップグレードするお客様は、MySQL または MariaDB を引き続き使用できます。

4.17.01 の新規インストールでは、ウェブサーバーとして Nginx もインストールされます。以前のバージョンから 4.17.01 にアップグレードしたお客様は、Apache を引き続き使用します。

Developer Services ポータルで、デフォルトで SmartDocs が有効にならない

ポータルで SmartDocs を有効にする必要があります。SmartDocs の詳細については、SmartDocs を使用した API のドキュメント化をご覧ください。

RPM からインストールされた Developer Services ポータル

4.17.01 バージョンの Developer Services ポータルは、Edge や API BaaS と同じリポジトリとツールを使用して RPM からインストールされます。詳細については、デベロッパー サービス ポータルのインストールをご覧ください。

RPM ベースのインストールと .tar ベースのアップデータでは、使用するコンポーネントが異なります。

RPM ベースのインストール

.tar ベースのインストール

ウェブサーバー

Nginx

Apache

ウェブルート

/opt/apigee/apigee-drupal

/var/www/html

ポート

8079

80

データベース

PostgreSQL

MySQL

PHP

php-fpm(FastCGI)

mod_php(Apache でプロセス内)

Qpid がバージョン 1.35 にアップグレード

このリリースには Qpid バージョン 1.35 が含まれています。

Cassandra がバージョン 2.1.16 にアップグレードされました

このリリースには、Cassandra バージョン 2.1.16 が含まれています。

Google Play がバージョン 2.4 にアップグレードされました

このリリースには、Play 2.4 UI フレームワークが含まれています。

RedHat/CentOS バージョン 7.3 のサポートを追加

Edge で RedHat/CentOS バージョン 7.3 がサポートされるようになりました。

ベータ版モニタリング ダッシュボードの更新

Edge モニタリング ダッシュボードのベータ版が次のように更新されました。

  • Cassandra、Zookeeper、OpenLDAP、Postgres、Qpid の新しいダッシュボードを含めます。
  • 4.16.09 の Influx バージョンを 0.11 から 1.0.2 にアップグレードしました。
  • 安定性に関するいくつかの修正を追加しました。

詳細については、Apigee Monitoring ダッシュボード(ベータ版)の概要をご覧ください。

インストール構成ファイルに Postgres パスワードを設定できるようになりました

インストール構成ファイルで Postgres のパスワードを設定するには、PG_PWD プロパティを使用します。 詳細については、Edge 構成ファイルのリファレンスをご覧ください。

EPEL リポジトリを有効にする

Edge をインストールまたは更新するには、Extra Packages for Enterprise Linux(EPEL)を有効にする必要があります。詳細については、インストール要件をご覧ください。

使用するコマンドは、RedHat/CentOS のバージョンによって異なります。

  • RedHat/CentOS 7.x の場合:
    > wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm; rpm -ivh epel-release-latest-7.noarch.rpm
  • RedHat/CentOS 6.x の場合:
    wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm; rpm -ivh epel-release-latest-6.noarch.rpm

NSCD(ネームサービス キャッシュ デーモン)を使用する場合の IPv6 の DNS ルックアップを無効にする

NSCD(ネームサービス キャッシュ デーモン)をインストールして有効にしている場合、Message Processor は IPv4 と IPv6 の 2 つの DNS ルックアップを行います。NSCD を使用する場合は、IPv6 の DNS ルックアップを無効にする必要があります。詳細については、インストール要件をご覧ください。

IPv6 の DNS ルックアップを無効にするには:

  1. すべての Message Processor ノードで、/etc/nscd.conf を編集します。
  2. 次のプロパティを設定します。
    enable-cache hosts no

API サービス

API プロキシを運用化するための共有フローとフローフック(Cloud 16.09.21)

新しい「共有フロー」機能を使用すると、API プロキシで機能を運用できます。条件付きポリシーとリソースを共有フローに結合することで、任意の API プロキシからそれを参照し、単一ソースの再利用可能なロジックを実行できます。たとえば、共有フローは API キーを検証し、スパイク阻止から保護し、ログデータを保護できます。

管理 UI([APIs] > [Shared Flows])で共有フローを定義し、次の 2 つの方法で参照します。

  • API プロキシの新しい Flow Callout ポリシー
    または
  • 次の場所にある「フローフック」という新しいアーティファクト:

    これらのアタッチメント ポイントを使用すると、個々のプロキシのメインフロー ポイントの前または後にオペレーション ロジックを実行できます。管理 UI([APIs] > [Environment Configuration] > [Flow Hooks])でこれらのフローフックのロケーションに共有フローを割り当てます。

    • リクエスト: ProxyEndpoint PreFlow の前、TargetEndpoint PostFlow の後
    • レスポンス: TargetEndpoint PreFlow の前、ProxyEndpoint PostFlow の後

詳細については、再利用可能な共有フローフローフックを使用した共有フローの接続をご覧ください。

暗号化された Key-Value マップ(Cloud 16.09.21)

認証情報、PII/HIPAA データなどの機密情報を保存するための暗号化された Key-Value マップ(KVM)を作成できます。この機能は、既存の Edge セキュアストア(Vault)とは異なり、Vault の値にアクセスできるのは(管理 API に加えて)Node.js のみであるため、代替手段として設計されています。暗号化された KVM 値には、Node.js または Key-Value マップ オペレーション ポリシーを使用してアクセスできます。

暗号化された KVM の作成

  • 既存の KVM 管理 API を使用します。KVM の作成時にペイロード定義に “encrypted”: “true” を含めると、Edge は KVM と同じスコープを持つ暗号鍵を生成し、その鍵を使用して KVM を暗号化します。
  • Key Value Map Operations ポリシーを使用して、暗号化された KVM を作成することはできません。ポリシーで使用する前に、KVM 管理 API を使用して暗号化された KVM を作成する必要があります。
  • 既存の暗号化されていない KVM は暗号化できません。

暗号化された KVM の使用

  • Key Value Map Operations ポリシーを使用して、暗号化された KVM 値を取得および更新します。
  • 暗号化された鍵の値を取得する場合は、値を保持する変数の先頭にキーワード「private」を付加します。たとえば、<Get assignTo="private.secretVar"> となります。この private.secretVar 変数は復号された値を保持します。
  • ポリシーを使用して値を更新する場合、特別な操作は必要ありません。この値は、暗号化された KVM で自動的に暗号化されます。
  • Node.js コードの apigee-access モジュールを使用して、復号された値にアクセスすることもできます。getKeyValueMap() 関数を使用し、名前とスコープに基づいて KVM を取得します。返されたオブジェクトでは、キー名の配列を取得する getKeys(callback) と、特定のキーの値を取得する get(key, callback) の 2 つの関数を使用できます。たとえば、以下では VerySecureKVM という apiproxy スコープの KVM を取得し、key1 の暗号化された値を取得します。
    var apigee = require('apigee-access');
      var encryptedKVM = apigee.getKeyValueMap('VerySecureKVM', 'apiproxy'); 
      encryptedKVM.get('key1', function(err, secretValue) { 
      // use the secret value here 
    });
    

詳しくは、Key-Value マップの使い方Node.js での Key-Value マップへのアクセスをご覧ください。

(APIRT-1197)

UI で暗号化された Key-Value マップを作成する(16.10.26 UI)

管理 UI([APIs] > [Environment Configuration] > [Key Value Maps])で環境スコープの Key-Value マップ(KVM)を作成するときに、新しい [Encrypted] チェックボックスを使用すると、暗号化された KVM を作成できます。KVM にキーを追加すると、暗号化された値が管理 UI にアスタリスク(*****)として表示されます。暗号化されていない KVM の場合とまったく同じように、暗号化された KVM に Key-Value を追加します。暗号化された KVM のバックエンドの完全なサポートが Cloud リリース 160921 で利用可能になりました。(EDGEUI-764)

API プロキシ メタデータに含まれる OpenAPI 仕様の URL(Cloud 16.09.21)

OpenAPI 仕様に基づいて API プロキシを作成すると、OpenAPI 仕様の場所が API プロキシ メタデータに保存されます。たとえば、管理 API を使用してプロキシ リビジョンの詳細を取得する場合、メタデータには、次の形式で OpenAPI 仕様へのパスが含まれます。

"spec" : "https://raw.githubusercontent.com/apigee/api-platform-samples/master/default-proxies/helloworld/openapi/mocktarget.yaml"

これにより、次世代バージョンの Edge がサポートされるようになりました。これにより、新しいデベロッパー ポータルの API プロキシ、API プロダクト、API リファレンス ドキュメントに OpenAPI 仕様がリンクされます。(MGMT-2913)

SOAP プロキシの OpenAPI 仕様の生成(Cloud 16.10.05 UI)

WSDL に基づいて「REST to SOAP to REST」プロキシを作成すると、Edge は、プロキシ リソースに基づいてホストされた OpenAPI Spec を自動的に生成します。この仕様は http(s)://[edge_domain]/[proxy_base_path]/openapi.json で確認できます。ただし、XML スキーマのすべてのルールを OpenAPI 仕様(EDGEUI-718)で表現できるわけではないため、変換は必ずしも正確ではありません。

パススルー SOAP プロキシ用の Edge がホストする WSDL(Cloud 16.10.05 UI)

WSDL に基づく「Pass-Through SOAP」プロキシを作成すると、Edge は WSDL をホストし、そのプロキシ内にユーザーがアクセスできるようにフローを作成します。ホストされている WSDL には http(s)://[edge_domain]/[proxy_base_path]?wsdl からアクセスできます。これは、プロキシ経由で SOAP サービスを呼び出すクライアントの新しいサービス エンドポイント URL です。(EDGEUI-718)

API プロキシ ウィザードの新しいサンプル株価情報 WSDL(Cloud 16.08.24.01)

API プロキシ ウィザードで SOAP サービス API を作成する場合、代替株価情報 WSDL を例(https://ws.cdyne.com/delayedstock 引用/delayedstockquote.asmx?WSDL)で確認できます。(EDGEUI-655)

デベロッパー サービス

UI でのデベロッパー アプリ管理の良さ(Cloud 16.10.05 UI)

さまざまな機能強化により、Edge UI でのデベロッパー アプリ管理が強化されました。

  • 編集モードで、新しい [アプリのステータス] フィールドでアプリの取り消しと承認を行うことができます。表示モードでは、現在のアプリ ステータスもフィールドに表示されます。アプリが取り消された場合、そのアプリの API キーはいずれも API 呼び出しに対して有効になりません。鍵自体は取り消されず、デベロッパーが再承認されると再び使用できるようになります。アプリが取り消されている状態の間は、API キーの「承認済み」ラベルが取り消し線付きテキストで表示されます。
  • API キーの有効期限はデベロッパー アプリの詳細ページに表示され、キーは [認証情報] セクションに有効期限ごとに整理されています。たとえば、有効期限のないキーは、関連する API プロダクトとともに 1 つのグループに表示され、90 日間有効のキーは関連するプロダクトとともに別のグループに表示されます。既存の認証情報の有効期限は変更できません。
  • デベロッパー アプリの編集モードで新しい [認証情報を追加] ボタンを使用すると、特定の有効期限の時刻や日付を指定して(または有効期限なしに)API キーを生成できます。認証情報の作成後(または作成後)に、API プロダクトを追加できます。
    この機能は、デベロッパー アプリの詳細ページの [キーを再生成] ボタンに代わるものです。このボタンは削除されました。

今回の機能強化により、管理 API ですでに利用可能だった UI の機能が追加されました。 (EDGEUI-104)

UI でアプリ デベロッパーを有効化/無効化する(Cloud 16.10.05 UI)

Edge UI では、アプリ デベロッパーのステータスをアクティブと非アクティブの間で変更できます([デベロッパーの詳細] ページ、編集モード、[有効化/無効化] ボタン)。デベロッパーが非アクティブの場合、そのデベロッパー アプリの API キー、またはそれらのキーで生成された OAuth トークンは、API プロキシの呼び出しで有効になりません。(EDGEUI-304)

UI の非アクティブなデベロッパー インジケーター(16.10.26 UI)

アプリ デベロッパーが「無効」に設定されている場合、そのデベロッパーのアプリと認証情報は、「承認済み」ステータスのままでも無効になります。管理 UI で非アクティブなデベロッパーのアプリと認証情報を表示すると、アプリと認証情報の「承認済み」ステータス ラベルが取り消し線付きテキストで表示され、ラベル上にマウスオーバー ツールチップが表示され、デベロッパーが非アクティブであることを示します。デベロッパーが「アクティブ」に復元されると、承認済みのアプリと認証情報が再び有効になり、「承認済み」ラベルの取り消し線が取り除かれます。(EDGEUI-728)

分析サービス

「Error Code Analysis」ダッシュボードの名前を変更(16.10.26 UI)

「Error Analysis」ダッシュボードの名前が「Error Code Analysis」に変更されました。ダッシュボードには、HTTP ステータス コードが 4xx と 5xx の API 呼び出しが含まれています。(EDGEUI-738)

プロキシ ダッシュボードの TPS データ(16.10.26 UI)

1 秒あたりの平均トランザクション数(「平均 TPS」)のデータをメインの [Proxy Traffic] ダッシュボードに追加しました。また、プロキシ トラフィックとプロキシ パフォーマンスのグラフで個々のデータポイントにカーソルを合わせると、その時間間隔の TPS がツールチップに表示されます。(EDGEUI-668)

アナリティクスのエラー表示(16.10.26 UI)

分析ダッシュボードが 500 エラーを受信した場合、エラーに関係なく、管理 UI に「Report timed out」と表示される。トラブルシューティング機能を改善するため、UI に実際のエラーが表示されるようになりました。(EDGEUI-753)

修正済みのバグ

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

Edge for Private Cloud 4.17.01

問題 ID 説明
APIBAAS-1990 smtp.auth が false の場合に、API BaaS スタックが SMTP への認証を試行しなくなりました
APIRT-3032

「apigee-service baas-usergrid restart」コマンドを実行すると、「configure」も実行されるようになりました。

BaaS スタックに対して「apigee-service baas-usergridconfigure」を実行し、その後に「apigee-service baas-usergrid restart」を実行する必要がなくなりました。

APIRT-3032

ホスト名が IP アドレスの場合は DNS ルックアップを行わないでください。

DOS-4070

「apigee-all -version」に edge-mint-* RPM のバージョンが表示されるようになりました

DOS-4359

Postgres データベースのみをインストールする「pdb」オプションを追加しました。

Developer Services ポータルをインストールする場合にのみ使用します。デベロッパー サービス ポータルのインストールをご覧ください。

Cloud 16.10.26(UI)

問題 ID 説明
EDGEUI-768 StockQuote WSDL を使用したプロキシの作成に失敗する

Cloud 16.09.21_9

問題 ID 説明
MGMT-3674 HIPAA 対応の組織で暗号化された KVM または Vault を作成できない
MGMT-3647 大文字で始まるメールアドレスを持つユーザーのユーザー役割アクセスで 403 がスローされる

Cloud 2021 年 9 月 6 日

問題 ID 説明
APIRT-3507 JavaScript サービス コールアウトでの断続的なエラー(SNI エラーなど)
APIRT-3408 MP リリース 160817 apigee-access 分析モジュールで異なる方法でメッセージを処理する
APIRT-3390

更新アクセス トークン ポリシーによって返される障害レスポンスの変更

APIRT-3389
APIRT-3381 お客様の本番環境プロキシで高レイテンシ
APIRT-3366 すべての新しいトライアル組織で JavaScript ポリシーが失敗する
APIRT-3363 無効な URL を解析すると、ApplicationNotFound とともに 500 ステータスが返される
APIRT-3356 OAuth の無効なトークンに関するメッセージ
APIRT-3355 OAuth プロキシで断続的に 403 エラーが発生する
APIRT-3285
APIRT-3261 本番環境の別の開発用アプリに対して認証情報が検証される
APIRT-3234 Node.js アプリが NPE を返す
APIRT-3223 Apigee の古いキャッシュの問題
APIRT-3193 ASG への移行後に Node.js ターゲット サーバーがハングする
APIRT-3152 cachedlogs 管理呼び出しが原因でログメッセージが分割される
APIRT-3117 MP が CPU 使用率 100% に達し、トラフィックの処理を停止した
APIRT-3064 ルーター - ルーターのカスタム 503 エラー メッセージ
APIRT-2620 負荷処理を改善するために、一部のブロックステップに個別のスレッドプール
CORESERV-774 無効な apiproduct 参照を含む有効なキーを使用してアクセスすると内部サーバーエラーが発生する

Cloud 16.10.05(UI)

問題 ID 説明
EDGEUI-697 [レポート] ページのエクスポート ボタン
[カスタム レポート] ホームページから [エクスポート] ボタンが削除されました。レポートのエクスポートは、各カスタム レポートのページで行えます。

Cloud 16.08.24.01

問題 ID 説明
EDGEUI-663 Weather.wsdl の WeatherHttpGet ポート用に生成されたプロキシが、実行時に 500 エラーで失敗する
SOAP サービスの API プロキシを生成する際、SOAP プロトコル バインディングのない WSDL ポートが API プロキシ ウィザードに表示されなくなりました。ウィザードは SOAP リクエストのみを生成するため、これは設計によるものです。
EDGEUI-658 SOAP WSDL パススルー オペレーション名の問題
EDGEUI-653 [Cors を有効にする] オプションが選択されている場合の node.js API プロキシの作成エラー
EDGEUI-648 UI からの通話が 2 ~ 3 分タイムアウトする
EDGEUI-623 Firefox で [組織の履歴の変更履歴] ボタンが動作しない