---
schema_version: "1"
id: b6f9a9b067d3d07aee327ffca1cc6b403788f6167f7dba9d283cbb49eda0c7ea
title: Mule ゲートウェイの概要
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/mule-gateway/mule-gateway-capabilities-mule4.md
canonical_url: https://docs.mulesoft.com/jp/mule-gateway/mule-gateway-capabilities-mule4
source_site: docs.mulesoft.com
content_type: documentation
content_hash: daa817192a1f801a51a57f79393407d49ff2f0920d85edb4c95f83d399b27ea9
description: MuleSoft Documentation Site
latest: true
---
# Mule ゲートウェイの概要

Mule Runtime Engine には、埋め込み Mule ゲートウェイが含まれています。Mule ゲートウェイを使用すると、バックエンド API とサービスの上に専用のオーケストレーションレイヤーを追加できるため、実装からオーケストレーションを切り離すことができます。API Manager のガバナンス機能を使用して、調整、セキュリティ、キャッシュ、ログなどの機能を API に適用できます。

Mule ゲートウェイを使用すると、たとえば次のことを実行できます。

- 基本認証ポリシーを Mule アプリケーション上に適用する。
- 受信/送信メッセージを強化する。
- コードを記述することなく、他の複雑な機能を API に追加する。

![API クライアントとバックエンド API の間に配置された API ゲートウェイのアーキテクチャを示す図](/mulesoft/current/ja-jp/mule-gateway/_images/apigateway.png)

ポリシーを適用し、分析情報を生成する必要がある場合、次のいずれかを使用する必要があります。

- Mule アプリケーションで定義されている API。
- 既存のバックエンド実装をプロキシする Mule アプリケーション。

## [](#主要概念)主要概念

### [](#api)API

API は一連のコンポーネントの抽象化です。これは Mule アプリケーション開発の複雑さをカプセル化するものであり、アセットにアクセスするための簡単で再利用可能な方法を提供します。

自動検出要素を使用して API を API Manager にペアリングすることで、その API にポリシーを適用することができます。

詳細は、​[API 自動検出について](https://docs.mulesoft.com/jp/mule-gateway/mule-gateway-autodiscovery-overview)​を参照してください。

#### [](#httphttps-api)HTTP/HTTPS API

HTTP Exchange アセットを使用して作成する API。Mule ゲートウェイは、API Manager により追跡される関連付けられた Mule アプリケーションに、実装エンドポイントとして定義された HTTP または HTTPS リスナーがあることを前提とします。

**通常の使用方法**​: REST ベースの API。

[「API アセットの作成」](https://docs.mulesoft.com/jp/exchange/to-create-an-asset#creating-an-api-asset)​を参照してください。

#### [](#raml-api)RAML API

RAML/OAS Exchange アセットを使用して作成する API。Mule ゲートウェイは、API Manager により追跡される関連付けられた Mule アプリケーションに、実装エンドポイントとして定義された RAML/OAS ルーターを備えた HTTP または HTTPS リスナーがあることを前提とします。

このアセットを Exchange で使用できるようにするには、API Designer を使用して API を設定した後、API を Exchange にエクスポートすることができます。

**通常の使用方法**​: RAML/OAS ベースの API。

詳細は、​[Design Center でコードエディターを使用して API 仕様を作成およびパブリッシュする方法](https://docs.mulesoft.com/design-center/design-create-publish-api-raml-editor)​を参照してください。

#### [](#wsdl-api)WSDL API

WSDL Exchange アセットを使用して作成する API。Mule ゲートウェイは、API Manager により追跡される関連付けられた Mule アプリケーションに、実装エンドポイントとして定義された WSDL ルーターを備えた HTTP または HTTPS リスナーがあることを前提とします。

**通常の使用方法**​: WSDL ベースの API。

### [](#api-自動検出)API 自動検出

API 自動検出を使用すると、Mule アプリケーションの HTTP エンドポイントを表す API を API Manager で管理できます。

基本的に、これは HTTP リソースを API Manager 内のその API 定義にリンクするメカニズムです。

Mule ゲートウェイは API 自動検出を介して、API Manager 内の対応するペアリング済みの API で定義された設定を同期します。Mule Runtime で自動検出を使用するには、Anypoint Platform 組織のログイン情報が必要です。

詳細は、​[API 自動検出](https://docs.mulesoft.com/jp/mule-gateway/mule-gateway-autodiscovery-overview)​に関する記事を参照してください。

### [](#api-プロキシ)API プロキシ

「自動生成プロキシ」とも呼ばれる API プロキシにより、Mule アプリケーションでの API Manager の使いやすさが向上します。

**通常の使用方法**​: Mule ゲートウェイ機能を使用する必要があるがバックエンド API が Mule Runtime に基づいていない場合や、API は Mule Runtime に基づいているが閉じられたコードのために対応する自動検出要素を定義できない場合に使用します。

![バックエンド API へのクライアントとの接続における API Manager のロールを示すテクニカル図](/mulesoft/current/ja-jp/mule-gateway/_images/api-gateway-capabilities-mule4-62bf9.png)

プロキシエンドポイントとして API を設定した場合、Anypoint Platform を使用して、事前設定済みの Mule アプリケーションをダウンロードできます。アプリケーションが Mule Runtime にデプロイされており、正しい Anypoint Platform ログイン情報を使用している場合、API Manager で API が自動的に追跡されます。

Mule アプリケーションの作成方法の詳細を知らなくても、正しく設定された Mule Runtime にアプリケーションをデプロイできます。

<table><tbody><tr><td class="icon"><i class="fa icon-note" title="Note"></i></td><td class="content">Anypoint Platform は Runtime Manager を介して、Cloudhub にプロキシを直接デプロイしたり、Mule エージェントを使用してプロキシをデプロイしたりできます。</td></tr></tbody></table>

HTTP ではなく HTTPS を使用する場合は、次の手順を実行できます。

1. 自動生成プロキシを Anypoint Studio にインポートします。
2. 使用する証明書を指定します。
3. アプリケーションを Cloudhub またはランタイムインスタンスにデプロイします。

API プラットフォームからダウンロードできるプロキシは、アプリケーションネットワークのデプロイを高速化するための便利なツールです。ただし、これらの自動生成プロキシを使用することに制限されません。正しく設定された自動検出を備えた Mule アプリケーションを使用すれば、Mule ゲートウェイの機能を利用できます。

### [](#ポリシー)ポリシー

ポリシーは、直交する動作を API 全体またはそのリソースに適用するためのツールです。

ポリシーを作成して、受信/送信メッセージの強化、絞り込み、および制御ができるほか、たとえば、API へのトークンアクセスを適用したり、特定の IP アドレスをホワイトリストまたはブラックリストに登録したりすることでセキュリティレイヤーを API 上に適用できます。

Mule ゲートウェイは、標準 (OOTB) ポリシーだけでなく、独自のカスタムポリシーを作成するためのエンジンを提供します。

### [](#analytics)Analytics

Mule Manager に API ゲートウェイを接続すると、​**API Analytics**​ を使用して、登録済み API の使用状況を監視できます。

Mule ゲートウェイでは、検出されたポリシー違反を含め、API 使用状況が報告されます。

#### [](#ポイントカット)ポイントカット

Mule ゲートウェイでは、ポリシーがその適用先のリソースを参照するようにポイントカットが使用されます。

API Manager でポリシーを適用した場合、そのポリシーはポイントカットを使用して、適用先の Mule アプリケーションのエンドポイントを決定します。

Mule アプリケーションコードで API 自動検出要素を宣言する必要がありますが、これと同様に、ポリシー内でポイントカットを宣言します。

Mule 4 では、ポイントカットはユーザーに表示されず、Mule ゲートウェイと API Manager によって内部的に管理されるのみです。

ほとんどの場合、ポリシーを設定するときに、ポイントカットの粒度を選択できます。この設定は、ポリシーの ​**\[Method & Resource conditions (メソッドおよびリソースの条件)\]**​ の下にあります。

2 つの使用可能なオプションがあります。

- **Apply configurations to all API methods & resources (設定をすべての API メソッドおよびリソースに適用)**​。
    
    ![設定を API メソッドおよびリソースに適用するオプションが表示されたフォーム](/mulesoft/current/ja-jp/mule-gateway/_images/api-gateway-capabilities-mule4-40081.png)
    
    選択した場合、API ポイントカットは、API のすべてのリソースとメソッドに一致します。つまり、適用されるポリシーは、(自動検出を介して API にリンクされている) HTTP リスナーで受信された要求ごとに実行されます。
- **Apply configurations to specific methods & resources (設定を特定のメソッドおよびリソースに適用)**​。
    
    ![ユーザーが設定を API メソッドおよびリソースに適用できるフォーム](/mulesoft/current/ja-jp/mule-gateway/_images/api-gateway-capabilities-mule4-2ed4e.png)
    
    これは、API のリソースレベルのポイントカットを定義します。この例では、ポリシーは、要求メソッドが GET の場合にのみ API に適用されます。必要に応じて、リソースに一致する正規表現を定義し、粒度をさらに細かくすることができます。

## [](#mule-ゲートウェイ機能の有効化)Mule ゲートウェイ機能の有効化

Mule ゲートウェイの機能を利用するには、Mule Runtime と、コントロールプレーン (US または EU)、または Mule Private Cloud Edition で作成された組織との間で通信チャネルを確立します。

このように Mule Runtime を設定するには、Anypoint 組織のログイン情報を指定します。

実装に応じて、組織のログイン情報をランタイムに渡す方法がいくつかあります。

詳細は、​[「Mule Runtime 4 の組織のログイン情報の設定」](https://docs.mulesoft.com/jp/mule-gateway/mule-gateway-org-credentials-mule4)​または​[「Mule Runtime 3 の組織のログイン情報の設定」](https://docs.mulesoft.com/jp/mule-gateway/mule-gateway-org-credentials-mule3)​を参照してください。

## [](#mule-gateway-hyperforce)Hyperforce の Mule ゲートウェイ

Hyperforce では、Mule ゲートウェイのすべての機能がサポートされています。ただし、一部の API Manager の Hyperforce の制限は Mule ゲートウェイに影響します。詳細は、​[「API Manager on Hyperforce (Hyperforce での API Manager)」](https://docs.mulesoft.com/jp/api-manager/latest/latest-overview-concept#APIM-hyperforce)​を参照してください。

### [](#hyperforce-の-mule-ゲートウェイプロキシ)Hyperforce の Mule ゲートウェイプロキシ

Hyperforce では、すべての Mule ゲートウェイプロキシがサポートされています。次の表で、Hyperforce でサポートされているプロキシの最初のバージョンを確認してください。

<table class="tableblock frame-all grid-all fit-content spread">
<colgroup>
<col>
<col>
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">プロキシ</th>
<th class="tableblock halign-left valign-top">バージョン</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">HTTP および HTTPS プロキシ</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">2.1.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">REST プロキシ</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1 および 3.2.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">WSDL プロキシ</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1 および 3.1.1</p></td>
</tr>
</tbody>
</table>

### [](#hyperforce-の-mule-ゲートウェイポリシー)Hyperforce の Mule ゲートウェイポリシー

Hyperforce では、すべての Mule ゲートウェイポリシーがサポートされています。次の表で、Hyperforce でサポートされているポリシー定義および実装の最初のバージョンを確認してください。

<table class="tableblock frame-all grid-all fit-content spread">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">ポリシー</th>
<th class="tableblock halign-left valign-top">定義</th>
<th class="tableblock halign-left valign-top">実装</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">基本認証: LDAP</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">基本認証: シンプル</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.3.1</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">クライアント ID 適用</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.3.2</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">クロスオリジンリソース共有 (CORS)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.3.1</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ヘッダーの挿入</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.3.1</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ヘッダーの削除</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.1.1</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">HTTP キャッシュ</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.1.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.1.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">IP 許可リスト</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.1.1</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">IP ブロックリスト</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.1.1</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">JSON 脅威保護</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.3</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">JWT 検証</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">メッセージログ</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">2.0.1</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">2.1.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Mule OAuth プロバイダーを使用する OAuth 2.0 アクセストークン適用</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.6.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.6.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">OpenAM OAuth 2.0 トークン適用</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.6.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.6.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">OpenID Connect OAuth 2.0 アクセストークン適用</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.6.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.6.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">PingFederate OAuth 2.0 トークン適用</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.6.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.6.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">レート制限</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">レート制限: SLA ベース</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.3.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.3.0</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">スパイク制御</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.1</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.3.1</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">XML 脅威保護</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.0</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.0</p></td>
</tr>
</tbody>
</table>

## [](#関連情報)関連情報

- [Mule ゲートウェイの API 自動検出の概念の確認](https://docs.mulesoft.com/jp/mule-gateway/mule-gateway-autodiscovery-overview)