現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご確認ください。 情報
2016 年 10 月 13 日(木)、Apigee Edge for Public Cloud の新バージョンのリリースを開始しました。
新機能とアップデート
このリリースにおける新機能とアップデートは次のとおりです。
API プロキシを運用化するための共有フローとフローフック(ベータ版リクエストのみ)
新しい「共有フロー」機能を使用すると、API プロキシで機能を運用できます。条件付きポリシーとリソースを共有フローに結合することで、任意の API プロキシからそれを参照し、単一ソースの再利用可能なロジックを実行できます。たとえば、共有フローは API キーを検証し、スパイク阻止から保護し、ログデータを保護できます。
管理 UI([APIs] > [Shared Flows])で共有フローを定義し、次の 2 つの方法で参照します。
- API プロキシの新しい Flow Callout ポリシー
または -
次の場所にある「フローフック」という新しいアーティファクト:
- リクエスト: ProxyEndpoint PreFlow の前、TargetEndpoint PostFlow の後
- レスポンス: TargetEndpoint PreFlow の前、ProxyEndpoint PostFlow の後
これらのアタッチメント ポイントを使用すると、個々のプロキシのメインフロー ポイントの前または後にオペレーション ロジックを実行できます。管理 UI([APIs] > [Environment Configuration] > [Flow Hooks])でこれらのフローフックのロケーションに共有フローを割り当てます。
暗号化された Key-Value マップ
認証情報、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 は暗号化できません。
暗号化された 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 つの関数を使用できます。次に例を示します。var apigee = require('apigee-access'); var encryptedKVM = apigee.getKeyValueMap('VerySecureKVM', 'apiproxy'); encryptedKVM.get('secret1', function(err, secretValue) { // use the secret value here });
(APIRT-1197)
API プロキシ メタデータに含まれる OpenAPI 仕様の URL
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)
Sense によるクライアント IP の制御
Akamai などのルーティング プロダクトを使用する際に、Sense bot 検出用の IP アドレスの場所をより正確に制御するために、Sense では additionalIPVars
変数を使用してクライアント IP の場所を定義できます。たとえば、true-client-ip
ヘッダーを使用するように additionalIPVars
を設定できます。このヘッダーには、bot ルールで評価するための Akamai の正しい IP が含まれています。(APIRT-3332)
修正済みのバグ
このリリースでは以下のバグが修正されています。このリストは、サポート チケットの修正状況を確認するユーザーを対象としています。すべてのユーザーに詳細情報を提供することを目的としたものではありません。
問題 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 参照を含む有効なキーを使用してアクセスすると内部サーバーエラーが発生する |