Flex Gateway新着情報
Governance新着情報
Monitoring API Manager「組織の管理者」または「環境管理者」のユーザー、あるいは環境内の「ポリシーの管理」ロールを持つユーザーは、自動ポリシーの作成、編集、削除ができます。
自動ポリシーを適用する前に、以下を確認してください。
Mule ゲートウェイ機能が有効化された状態で Mule Runtime Engine (Mule) がインストールされている。
基本エンドポイントまたはプロキシエンドポイントが設定された API が API Manager 内に存在する。
自動検出によって API にリンクされている HTTP(S) ベースフローで Mule アプリケーションがデプロイされている。
Mule アプリケーション内で自動検出が正しく設定されている場合、アプリケーションの API は API Manager によって追跡されている、または API Manager にペアリングされているとみなすことができます。
ほとんどの場合は、自動生成プロキシによってこれらの前提条件が処理されます。Mule ゲートウェイは、実行時に API Manager で API に適用される自動ポリシーを調整します。
自動ポリシーを適用する手順は次のとおりです。
[API Manager] の左ナビゲーションメニューで [Automated Policies (自動ポリシー)] を選択します。
[Apply new automated policy (新しい自動ポリシーを割り当て)] をクリックします。
提供ポリシーとして設定する提供ポリシーを選択します。
Mule 4 の任意の提供ポリシーを自動ポリシーとして設定できます。
各提供ポリシーの設定方法については、使用可能な提供ポリシーのリストを参照してください。カスタムポリシーの作成方法については、記事「カスタムポリシーの作成」を参照してください。
自動ポリシーを設定する場合、ポリシー設定ページの下部に [Rule of Applications (アプリケーションのルール)] サブセクションがあります。これにより、ポリシーの影響を受ける一連のランタイムを規定します。
All runtimes (すべてのランタイム): ランタイムに関係なくポリシーをすべての API インスタンスに適用します。
Flex Gateways only (Flex Gateway のみ): ポリシーをすべての Flex Gateway API インスタンスに適用します。
Mule Gateways only (Mule ゲートウェイのみ): ポリシーを Mule 4.1.1 以降で実行されているすべての Mule ゲートウェイ API インスタンスに適用します。Mule ゲートウェイのみに適用する場合は、次のパラメーターを設定します。
バージョン範囲
自動ポリシーを継承する Mule Runtime バージョンの範囲を設定できます。
たとえば、[From Version (最小バージョン)] の入力が「4.1.2」で、[To (最大バージョン)] が「4.1.4」の場合、自動ポリシーはこの範囲内のすべてのデプロイ済み API に適用されます。4.1.5 に基づいてデプロイされた API はポリシーの影響を受けません。
値は 4.1.x
のように含めることができます。たとえば、4.1.1 ~ 4.1.x の範囲を追加した場合、ランタイムのすべてのパッチリリースが対象になります。4.1.0 に基づく API プロキシは、4.1.1 よりも低いため、この範囲に含まれません。
設定しているポリシーの種別が、アプリケーションのルールの影響を受ける API プロキシに提供ポリシーとしても存在する場合、続行する前に競合を解決する必要があります。解決方法についての詳細は、以下の[Conflict Management]セクションを参照してください。
Java バージョン
ポリシーを [All Java versions (すべての Java バージョン)] に適用するか [Choose specific Java versions (特定の Java バージョンを選択)] するかを選択します。ポリシーを特定の Java バージョンに適用することを選択する場合は、Java 8、Java 17、またはその両方を選択します。
[Apply (適用)] をクリックします。
自動ポリシーを本番環境に適用する前に下位の環境に適用し、自動ポリシーが既存の API コントラクトに影響しないことを確認することをお勧めします。 |
自動ポリシーは API レベルのポリシーよりも優先されるため、API レベルのポリシーとしてすでに適用されている自動ポリシーを追加すると、選択されたランタイム範囲を使用してデプロイされた API では、競合が検出されます。これを、続行する前に解決する必要があります。
競合が検出された場合、競合する API のリストを含むポップアップが表示されます。メッセージが表示され、競合する最初の 10 個の API と合計数が示されます。次のエンドポイントを使用して、すべての API のリストにアクセスできます。
curl -X GET \
https://anypoint.mulesoft.com/xapi/v1/automated-policies/{groupId}/{assetId}/conflicting-apis \
-H 'Authorization: Bearer {token}'
競合を解決するには、設定済みの API のリストから API を選択し、競合するポリシーを手動で無効化または削除するか、設定済みの API に対してすべての競合するポリシーを上書きするように選択します。この最後のオプションを選択した場合、API の競合するポリシーは無効化されます。自動ポリシーを削除すると、API のポリシーは自動的に再有効化されます。
新しい API を管理する場合、環境に適用された自動ポリシーの状況に関する情報を [Policies (ポリシー)] タブで参照できます。自動ポリシーは、アプリケーションが [Active (アクティブ)] の状況になるまで表示されません。
アプリケーションがデプロイされると、適用された自動ポリシーのリストが API の [Policies (ポリシー)] タブに表示されます。
環境に対する「ポリシーの参照」ロールを持つユーザーは、適用された自動ポリシーのリストを参照できます。
アプリケーションをデプロイした環境に、デプロイしたランタイムを対象としない自動ポリシー、たとえば、4.1.2 ~ 4.1.4 のランタイム範囲に影響する自動ポリシーがある場合、ユーザーが 4.1.5 ランタイムにデプロイすると、通知が組織と環境の管理者に送信され、このアクティビティが通知されます。
自動ポリシーで API インスタンスがカバーされるかどうか、またはなぜカバーされないかを確認するには、API インスタンスの [Coverage status (カバー率の状況)] を参照します。通常、インスタンスがカバーされない原因はランタイム種別またはランタイムバージョンです。
自動ポリシーでカバーされる API インスタンスを表示する手順は、次のとおりです。
[Anypoint Platform] > [API Manager] に移動します。
[API Administration (API 管理)] で、[Automated Policies (自動ポリシー)] をクリックします。
カバー率を表示するポリシーのその他のオプションボタン () をクリックし、[See covered APIs (カバーされる API を確認)] をクリックします。
[Coverage status (カバー率の状況)] 列で API インスタンスのカバー率の状況を参照します。
カバー率の状況で絞り込むには、カバー率の状況ドロップダウンをクリックして、カバー率の状況オプションを選択します。 |
自動ポリシーの影響を受けたすべての API のリストを監査し、取得することができます。レポートはランタイムバージョンおよび操作により絞り込むことができます。
環境内のすべての自動ポリシーのリストを取得する方法
curl -X GET \
https://anypoint.mulesoft.com/apimanager/api/v1/organizations/{organizationId}/automated-policies?environmentId={envId} \
-H 'Authorization: Bearer {token}'
自動ポリシーの範囲に含まれる API、または自動ポリシーが適用されない API のリストを取得する方法。
curl -X GET \
https://anypoint.mulesoft.com/apimanager/api/v1/organizations/{organizationId}/automated-policies/{automatedPolicyId}/apis \
-H 'Authorization: Bearer {token}'