IP 許可リストポリシー

ポリシー名

IP 許可リスト

概要

IP アドレスのリストまたは範囲からのアクセス要求を許可する

カテゴリ

セキュリティ

使用可能な最小 Flex Gateway バージョン

v1.0.0

返される状況コード

403 - IP は拒否されました

概要

IP 許可リストポリシーは、ソース IP (ポリシーの設定時に指定します) が個別 IP のリストまたは IP 範囲と一致した場合に、指定された IP アドレスのリストまたは範囲に保護対象のリソースへのアクセスを許可します。

DataWeave 2.0 の式により、IP がポリシーの制約 IP リストに含まれているかどうかを確認するためにポリシーで使用されるソース IP を定義します。

ポリシーのパラメーターの設定

Flex Gateway のローカルモード

ローカルモードでは、宣言型の設定ファイルを使用して IP 許可リストポリシーを API に適用します。以下のポリシー定義とパラメーターの表を参照してください。

- policyRef:
    name: ip-allowlist-flex
  config:
    ips: <array> // REQUIRED
    ipExpression: <string> // OPTIONAL, default: "#[attributes.headers['x-forwarded-for']]"
パラメーター 必須または省略可能 デフォルト値 説明

ips

必須

なし

API へのアクセスを許可する IP アドレスのリスト。IP または IP 範囲は一度に 1 つずつ、必要なだけ何度も定義できます。 詳細は、​「ポリシーで許可リスト登録する IP アドレスの指定」​を参照してください。

ipExpression

省略可能

#[attributes.headers['x-forwarded-for']]

この API 要求から IP アドレスを抽出するために使用する DataWeave 2.0 式。

リソースの設定例

- policyRef:
    name: ip-allowlist-flex
  config:
    ips:
      - "192.168.1.1"
      - "192.168.3.1/30"
      - "192.168.2"
      - "192.160"

Flex Gateway の接続モード

UI から IP 許可リストポリシーを API に適用する場合は、以下のパラメーターを設定します。

パラメーター 説明

IP 式

この API 要求から IP アドレスを抽出するために使用する DataWeave 2.0。

許可リスト

API へのアクセスを許可する IP アドレスのリスト。IP または IP 範囲は一度に 1 つずつ、必要なだけ何度も定義できます。 詳細は、​「ポリシーで許可リスト登録する IP アドレスの指定」​を参照してください。

Method & Resource conditions (メソッドとリソースの条件)

API の一部またはすべてのメソッドおよびリソースに設定を追加するオプション。

ポリシーで許可リスト登録する IP アドレスの指定

次の情報に基づいてポリシーへのアクセスを許可する IP アドレスを指定します。

  • 要求の IP アドレス。

  • 特定の DataWeave 式を解決することで決定される発生元 IP アドレス ( x-Forwarded-For​ ヘッダーなど)

  • その他のすべての発生元。

要求の IP アドレスに基づいてアクセスを許可リストに登録する

次のいずれかの方法で、要求の IP アドレスに基づいて許可リストにアクセスします。

  • 特定の IP アドレスを定義するには、そのアドレスのみを [Allowlist (許可リスト)] 項目に指定します (例: 192.168.1.1​)。

  • アドレスのサブセットを定義するには、サブセットマスクを指定します。たとえば、​192.168.3.1/30​ など (これには、統合範囲 ​192.168.3.01​ ~ ​192.168.3.3​ が含まれます)。

  • IP アドレスの範囲全体を定義するには、許可する IP アドレスの関連オクテットを指定します。たとえば、「​192.168​>」と設定すると、​192.168.0.0​ ~ ​192.168.255.255​ の IP アドレスが含まれます。

x-Forwarded-For ヘッダーの発生元 IP アドレスに基づいてアクセスを許可リスト登録する

クライアントが HTTP プロキシまたはロードバランサーを介して API に接続している場合、要求に含まれるアドレスではなく、クライアントの特定の IP アドレス (要求の発生元 IP アドレス) を許可リスト登録できます。

たとえば、​192.168.2.3​ (非公開 IP) を許可リスト登録して、HTTP プロキシを介して接続しているクライアントのアドレスが ​92.40.1.255​ (公開 IP) である場合、クライアントの要求は、プロキシを使用した公開アドレスで表示されます。

通常、アプリケーションは ​X-Forwarded-For​ ヘッダーを使用して、エンドポイントにリダイレクトされた要求の発生元 IP アドレスを識別します。

ポリシーで DataWeave 2.0 式を使用してサービスに ​x-Forwarded-For​ ヘッダー内の IP アドレスを探すように指示できます。

ポリシーパラメーターの [IP expression (IP 式)] 項目で IP アドレスを指定すると、Anypoint Platform は要求の ​x-Forwarded-For​ ヘッダーの連結値に含まれる最初の IP アドレスを参照するように指示されます。