XML ファイルでのポリシーの接続と構成

このページの内容は ApigeeApigee ハイブリッドに該当します。

Apigee Edge のドキュメントを表示します。

任意のテキスト エディタ、XML 対応エディタまたは IDE を使用して、ポリシーをローカルで作成し、編集できます。このトピックでは、Quota ポリシータイプを例として、ポリシーの作成、構成、接続、デプロイ、テストを行う方法を説明します。

ほとんどの API プロキシで割り当てが使用されています。割り当てにより、クライアント アプリが一定の時間内に API を呼び出せる回数が制限されます。以下の例では、1 分間に 1 件のリクエストという制限をアプリに追加する Quota ポリシーを構成しています。この値は現実的ではありませんが、ポリシーの効果をわかりやすくするため、単純な例を使用しています。

API プロキシの構成では、Policy ファイルは XML ファイルとして /apiproxy/policies ディレクトリに保存されます。

たとえば、QuotaPolicy という Quota タイプのポリシーは、次の内容を含む QuotaPolicy.xml というファイルとして作成されます。

<Quota enabled="true" continueOnError="false" name="QuotaPolicy">
    <Allow count="1"/>
    <Interval>1</Interval>
    <TimeUnit>minute</TimeUnit>
</Quota>

手動でテキスト ファイルを作成することも、XML スキーマからポリシーを生成することもできます。どのポリシーにも、ポリシータイプに固有な設定もあれば、すべてのポリシーで共通の設定もあります。

管理 UI でポリシーを接続すると、API プロキシ ビルダーがそのポリシータイプのインスタンスを XML スキーマから生成します。ポリシー構成で要素が表示されることがありますが、その要素が常にドキュメントで説明されているとは限りません。

すべてのポリシーで次の属性が定義されます。

  • enabled: ポリシーがオンとオフのどちらであるかを示します。この設定を変更して、実行時にポリシーを有効または無効にできます。enabledfalse に設定されたポリシーは適用されません。
  • continueOnError: ポリシーの失敗時に、パイプラインでメッセージの処理を続行するかどうかを定義します。Quota ポリシーを適用すると、割り当て超過を通知するエラーが発生する可能性があります。その場合は、この属性を false に設定する必要があります。
  • name: このポリシーに付ける名前。この名前はポリシー インスタンスに対して一意で、処理ステップとしてポリシーをフローに接続する場合に使用します。

上記の例では、AllowIntervalTimeUnit の各要素は Quota ポリシーに固有のものです。これらの要素では、API Services が API の代わりに適用する設定を定義します。他のポリシータイプでは独自の設定を定義します。詳細については、ポリシー リファレンスをご覧ください。