スタートガイド

Red Hat 3scale API Management 2.5

3scale API Management システムのスタートガイド

概要

本ガイドは、3scale の初期操作に関する情報を提供します。

はじめに

このガイドは、Red Hat 3scale API Management の使用を開始するのに役立ちます。

第1章 API の起動

このガイドは、3scale で API のブーストを開始するのに役立ちます。

ここでは、API を公開するための以下の主要手順について説明します。

  1. API を 保護 する。
  2. アプリケーションプランにより API へのアクセスポリシーを 設定する
  3. デベロッパーポータルを通じて開発者を 参加させる
  4. 実稼働環境に移行する

以下に示す 3 つのオプションから、API 公開のパスを選択することができます。

  • プロトタイプ

    所要時間: 1 時間以内

    目的*: 3scale とシンプルなパブリック API のインテグレーションをエンドツーエンドで完了する。

    対象: プロトタイプパスは、最短の時間で 3scale とのインテグレーション方法の概要を把握し、3scale のエンドツーエンドの機能を理解する場合に推奨されます次に説明するベーシックパスの手順を実施する前に、このパスを実施する必要があります。管理ポータルの導入ウィザードを正常に完了している場合には、このパスを省略して次のパスに進むことができます。

  • ベーシック

    所要時間: 1 週間以内

    目的: API を実稼働環境で公開するための操作手順をすべて完了する。

    対象: API を実稼働環境で公開したいが時間が限られている場合には、このベーシックパスにより必要な操作のほとんどがカバーされます。

  • アドバンスト

    所要時間: 数週間

    目的: ベーシックパスを完了した後のオプション操作。API の高度なコントロールおよびデベロッパーポータルの複雑なカスタマイズが可能。

    対象: 要求がより複雑である、またはベーシックパスをすでに完了している場合には、アドバンストのオプションの検討が必要な場合があります。カスタムドメインおよび電子メール (SaaS の場合) を使用する場合には、リードタイムが長いので、実稼働環境への移行セクションの手順に従って早期に準備する必要があります。

期間のガイドラインは、API の複雑さや作業に割くことのできるリソースにより異なります。ほとんどの時間は、API の調整およびデベロッパーポータルコンテンツの準備に費やされます。安定した API およびドキュメントのコンテンツがすでに用意されている場合には、1 週間で実稼働環境に移行することができます。

1.1. API の保護、管理、およびプロモート

プロトタイプベーシック、および アドバンスト パスの手順を個別にエンドツーエンドで実施することもできますし、必要に応じて異なる 3 つのパスから部分的に手順を抜き出して実施することもできます。それぞれのパスは互いに独立していますが、パスを順に積み上げて高度な設定を行うことが可能です。

1.1.1. プロトタイプ

1.1.1.1. API の保護

API が一般に公開されている (Saas の場合)、あるいは 3scale AMP システムからアクセス可能である (オンプレミスの場合) なら、数分でプロトタイプの 3scale アクセス制御レイヤーを設定することができます。

ここでは、パブリック API の例として Echo API を使用します。これは、任意のパスを受け入れてレスポンスのボディーでリクエストに関する情報 (パス、リクエストパラメーター、ヘッダー等) を返すシンプルな API です。Echo API には https://echo-api.3scale.net の URL からアクセスすることができます。

  1. API にアクセス可能であることを確認します (セキュリティーレイヤー実装後は、バックエンドホストを隠したりアクセスを制限したりすることができます)。たとえば、https://echo-api.3scale.net/v1/fast/track
  2. [Your_API_name] > Integration > Configuration の順に移動します。
  3. ご自分の API を設定する前に、デフォルトパラメーターを使用してテストコールが可能であることを確認します。
  4. 検証後、プライベートベース URL を入力します。例: https://echo-api.3scale.net:443
  5. テストコールを行うには、有効な GET リクエストの URL パスを入力し (例: /v1/fast/track)、続いて Update & Test Staging Environment をクリックします。
  6. デフォルトクレデンシャルとして user_key が含まれる cURL ステートメントをコピーして、コマンドラインから呼び出しを行います。

    curl "https://api-2445581407825.staging.apicast.io:443/v1/fast/track?user_key=287d64924e6120d215b1000ac07c063b"

    異なる呼び出しを行うことができます。たとえば、同じ user_key を追加して、別のエンドポイントに対する呼び出しを行います。

    注記

    いずれかの開発者アカウントのアプリケーションの詳細ページから、API キーを取得することができます。

    3scale のアクセス制御レイヤーにより、認証された呼び出しだけがご自分のバックエンド API にアクセスできるようになります。

1.1.1.2. アプリケーションプランによる API アクセスポリシーの設定

前項の手順で、認証された呼び出しだけがご自分の API にアクセスできるようにしました。本セクションでは、ポリシーを適用して流量制御を変更します。

3scale では、アプリケーション により API にアクセスするためのクレデンシャルが定義されます。アプリケーションには必ず 1 つ アプリケーションプラン が関連付けられ、アクセスポリシーが定義されます。アプリケーションは、開発者アカウント 内に保管されます。3scale の Basic プランで許可されるアプリケーションは 1 つだけですが、より高度なプランではアカウントごとに複数のアプリケーションが許可されます。

以下の例では、前項で使用した Echo API にポリシーを追加します。

  1. [Your_API_name] > Applications > Application Plans の順に移動します。
  2. Application Plans セクションで Basic アプリケーションプランに進み、3scale のインストールまたはサインアップ後にサンプルデータから生成されたプランのいずれかを編集します。
  3. Hits 行で Limits を選択し、1 時間あたり 3 回の新しい使用限度を作成します。
  4. [Your_API_name] > Applications > Listing の順に移動し、サンプルアプリケーションを 1 つ選択します。アプリケーションが Basic プランに設定されていることを確認します。設定されていなければ、アプリケーションの詳細ページで プランを変更します
  5. このアプリケーションのクレデンシャルを使用して、上記のサンプルコールを少なくとも 3 回繰り返します。

これで、基本プランのすべてのアプリケーションに対して、より制限の厳しいアクセスポリシーが正しく定義されました。

1.1.1.3. デベロッパーポータルを通じた開発者の参加

プロトタイプでは、何らかのドキュメントコンテンツを作成する必要はありません。通常は、ワークフローが要求に適合していることを確認するだけで十分です。たとえば、API が開発/テスト段階の間は、完全なセルフサービスワークフローを無効にすることができます。

  1. 管理ポータルから Audience セクションに移動し、Developer Portal メニューの Visit Portal のリンクをクリックします。
  2. テストサインアップを作成し、すべての手順を実施します。
  3. 通常、セルフサービスはデフォルトで有効になっています。この設定を変更するには、Audience > Accounts > Usage Rules の順に移動し、Account approval required のチェックボックスをクリックします。
  4. テストサインアップの手順をすべて繰り返し、ユーザーがログインするには管理ポータルでアカウントを承認しなければならないことを確認します。

これで、デベロッパーポータルのワークフローをカスタマイズできるようになりました。

1.1.2. ベーシック

1.1.2.1. API の保護

実稼働環境向けの完全な実装のためには、API の設定および 3scale とのインテグレーション方法に関して、基本方針を決定する必要があります。

API トラフィックの認証モードには、いくつかの選択肢があります。利用可能なオプションに関するガイド を確認し、設定を行ってください。

重要

設定を行ったら、再度認証モードを切り替えないでください。既存のクレデンシャルが無効になってしまうためです。

API トラフィックマネージャーレイヤーのデプロイメントにも、いくつかのオプションがあります。設定の容易さとパフォーマンスのバランスから、3scale ユーザーの間では APIcast (NGINX ベースの API ゲートウェイ) が好まれています。Hosted APIcast を使用すればすぐに運用を開始することができますが、ボリュームの制約やレイテンシー増加の問題が生じます。一方、APIcast を専用のサーバーにデプロイすれば、最高のパフォーマンスが得られ、トラフィックボリュームの制約から完全に解放されます。

Hosted APIcast

  1. 管理ポータルへの初回ログイン後に、導入ウィザードの手順に従います。
  2. 実稼働環境用として適切なバージョンが得られるまで、API 設定を繰り返します (アクセスポリシーの調整など)。
  3. APIcast 設定を実稼働環境用ゲートウェイにプロモートします。

Self-managed APIcast

  1. OpenShift サーバー上に、API ゲートウェイのテスト用システムを設定します。
  2. 実稼働環境用として適切なバージョンが得られるまで、API 設定を繰り返します (アクセスポリシーの調整など)。
  3. APIcast 設定を実稼働環境用ゲートウェイにプロモートします。
  4. Self-managed APIcast の詳細な情報は、APIcast のインストール を参照してください。また、APIcast policies には、API のアクセスポリシーを設定する際の概念が記載されています。
1.1.2.1.1. アプリケーションプランによる API アクセスポリシーの設定

前項の操作で、認証された呼び出しだけがご自分の API にアクセスできるようにしました。本セクションでは、ポリシーを適用して流量制御を変更します。

3scale では、アプリケーション により API にアクセスするためのクレデンシャルが定義されます。アプリケーションには必ず 1 つ アプリケーションプラン が関連付けられ、アクセスポリシーが定義されます。アプリケーションは、開発者アカウント 内に保管されます。3scale の Basic プランでは、1 つのアプリケーションしか許可されません。より高度なプランでは、アカウントごとに複数のアプリケーションが許可されます。

プロトタイプ では、API の総ヒット数に基づいてアクセスを制御することしかできません。カスタムメソッドおよびメトリクスを使用して初めて、3scale の柔軟性を体感することができます。カスタムメソッドおよびメトリクスを使用することで、アプリケーションプランおよび API の分析をより高度化することができます。詳細は、解析に関するガイド を参照してください。

重要
  • API の構造と 3scale のメソッドまたはメトリクスとの間のマッピングは論理的です。整合性のとれたルールを定義すれば、3scale から API の使用状況に関するレポートを受け取ることができます。詳細さのレベルを決める必要があります。一般的には、5 - 20 メソッド/メトリクスを目標とすれば良いでしょう。
  • 3scale に報告される値は、増加するだけです。絶対値を設定したりカウンターを減らしたりすることはできません。
  • 新たなメソッドまたはメトリクスを 3scale に追加したら、インテグレーションポイント (API ゲートウェイまたはコードプラグイン) に新しいシステム名を追加することが重要です。
  • 実行時に、再デプロイせずに流量制御などに変更を加えることができます。

この例では、Echo API のアプリケーションプランにポリシーを追加するには、次の手順を実行します。

  1. 対象の API を選択します。
  2. Application Plans セクションで Basic を選択し、3scale へのサインアップまたはインスタンスのデプロイ後に自動的に生成されたプランのいずれかを編集します。
  3. Hits に流量制御を設定している場合には、その設定を削除します。
  4. プランの Hits メトリックに 新規メソッド を追加し、システム名を test に設定します。
  5. test メソッドの流量制御を 1 時間あたり 5 回に設定します。
  6. 2 つの 新規メトリクス を追加し、システム名を v1 および v2 に設定します。
  7. v2 メトリックの Enabled 列をクリックし、アクセスを無効にします。これは、流量制御をゼロに設定するのと同じ効果を持ちます。

APIcast のデプロイメント

  1. [Your_API_name] > Integration > Configuration の順に移動します。
  2. MAPPING RULES セクションを展開し、以下のマッピングを追加します。

    マッピングルール
    注記

    /のデフォルトのマッピングは削除されています。引き続き使用すると、ヒット数が二重にカウントされます。

コードプラグインのデプロイメント

  1. プラグインライブラリーの手順および例に従って、3scale の承認およびレポート呼び出しにカスタムメソッドおよびメトリクスの使用状況を追加します。
  2. URL 構造からカスタムメソッド test へのマッピングを確認します。
  3. URL からカスタムメトリクス v1 および v2 へのマッピングを確認します。
  4. 基本プランに関連付けられたアプリケーションのクレデンシャルを使用して、呼び出しをテストします。

    • 呼び出しは許可されます。

      curl "https://api-2445581407825.staging.apicast.io:443/v1/test?user_key=287d64924e6120d215b1000ac07c063b"

      5 回目以降は、呼び出しが拒否されます。これは、test メソッドに設定した制限のためです。

    • Basic プランでは v2 は許可されないので、呼び出しは拒否されます。

      curl "https://api-2445581407825.staging.apicast.io:443/v2/test?user_key=287d64924e6120d215b1000ac07c063b"
    • missing に設定されたマッピングルールがないので、呼び出しは拒否されます。

      curl "https://api-2445581407825.staging.apicast.io:443/missing?user_key=287d64924e6120d215b1000ac07c063b"
    • 以下の呼び出しは、NGINX に対して許可されます (プラグインのマッピングの実装状態によります)。以下の呼び出しで 404 not found のレスポンスが返されるかどうかは、お使いのアプリケーションによります。これを避けるには、マッピングを調整してください。

      curl "https://api-2445581407825.staging.apicast.io:443/noversion/test?user_key=287d64924e6120d215b1000ac07c063b"

この基本概念により、きわめて柔軟に API レイヤーを定義することができます。カスタムメソッドおよびメトリクスに何を使うかについて、早期に決定しておくことが重要です。システム名に変更を加えた場合には、API の保護セクションで説明したように、必ず変更を再デプロイする必要があります。

1.1.2.2. デベロッパーポータルを通じた開発者の参加

デベロッパーポータルの 作成 および 使用 については、関連のドキュメントを参照してください。コンテンツを Textile または Markdown で記述することを検討してください。オプションとして考慮すべき項目を以下に示します。

1.1.3. アドバンスト

1.1.3.1. API の保護

高度な認証モード: OpenID Connect

OpenID Connect とのインテグレーション を通じた APIcast と Red Hat Single Sign-On (RH-SSO) の組み合わせにより、API を保護します。Red Hat 3scale API Management Platform のアプリケーションは、アイデンティティープロバイダー (IdP) (この場合は RH-SSO) と同期されます。現在、これはエンドツーエンドでサポートされるソリューションです。メインの OAuth 2.0 フロー (認可コード、リソースオーナーパスワード、クライアントクレデンシャル、およびインプリシット付与) に対応します。

コードプラグインのデプロイメント

3scale ユーザーのほとんどは、パフォーマンスに問題はないと感じています。ただし、API の処理を高速化したい場合には、好みのキャッシングライブラリーを使用して 3scale への承認コールをキャッシュすることができます。

1.1.3.2. アプリケーションプランによる API アクセスポリシーの設定

前項の操作で、認証された呼び出しだけがご自分の API にアクセスできるようにしました。本セクションでは、ポリシーを適用して流量制御を変更します。

3scale では、アプリケーション により API にアクセスするためのクレデンシャルが定義されます。アプリケーションには必ず 1 つ アプリケーションプラン が関連付けられ、アクセスポリシーが定義されます。アプリケーションは、開発者アカウント 内に保管されます。3scale の Basic プランでは、1 つのアプリケーションしか許可されません。より高度なプランでは、アカウントごとに複数のアプリケーションが許可されます。

アラートを設定して、通知を電子メールで送付したり Web コンソールに表示したりすることができます。API Settings のページに移動します ([Your_API_name] > Integration > Settings)。ページの ALERTS セクションに移動します。ここで、必要なアラートを流量制御値のパーセンテージで設定することができます。

3scale では、流量制御をソフト制御 (上限を超えた呼び出しでも許容する) とするかハード制御 (アプリケーションにアクセスする前に呼び出しを拒否する) とするか、柔軟に設定することができます。コードプラグインでは、実装するタイプを意識的に決める必要があります。一方 APIcast の場合は、デフォルトではハード制御が定義されます。上限を超えた呼び出しが拒否されるのを防ぐために、Lua ファイルでこれらの制御をカスタマイズすることができます。

1.1.3.3. デベロッパーポータルを通じた開発者の参加

ベーシックパスの設定を完了している場合、以下の 2 つの項目についてデベロッパーポータルの高度な使用方法を検討することができます。

  • Liquid マークアップ のタグおよびドロップにより、システムオブジェクトに直接アクセスすることができ、デベロッパーポータルページのダイナミックレンダリングが可能になります。
  • 3scale のシステムページはすべてカスタマイズが可能です。ただし、HTML が複雑になるため、カスタマイズは熟達したユーザー向けです。極端に言えば、デベロッパーポータルのほとんどすべてのページをカスタマイズすることができます。しかしながら、一部の CSS を変更すれば、通常はデフォルトのページでまったく問題ありません。

1.2. 実稼働環境への移行

以下は、API の一般公開前の最終チェックリストです。

注記

カスタムドメインおよびメールアドレスのリードタイムは長いので、できるだけ早く要求します。

  1. カスタムドメインを準備する。詳細な情報は、SaaS 版ドキュメントの カスタムドメインの設定 を参照してください。
  2. オプションとして、発信用のカスタムメールアドレスを準備する。この手順の実施方法は、メールドメインの設定 を参照してください。
  3. Audience > Developer Portal > Domains & Access からデベロッパーポータルのアクセスコードを削除する。

追加の検討事項を以下に示します。

  • 課金ルールを追加して、API から直接収益を得る (SaaS アカウントでのみ利用可能)。
  • API 分析 (管理ポータルの Analytics セクション) からの知見を活用して、アプリケーションプランを調整する。

第2章 3scale における API トラフィック

本ガイドの手順を完了すると、API トラフィックを API キーで保護し、追跡し、3scale に実装された基本的な流量制御および管理機能で監視することができます。例として使用した架空の Echo API を、実際の API に置き換えてください。

以下の手順に従えば、3scale でご自分の API を公開して運用する操作は分かり易く簡単です。API トラフィックのフローを監視し、さらに流量を制御した開発者キーを発行することができます。

実稼働環境用の API がある場合には、既存 API ユーザーへのサービス障害を避けるために、まずステージング/非実稼働環境でこの手順を実施する必要があります。

2.1. 前提条件

このチュートリアルは、3scale SaaS アカウントを使用していること、および管理ポータルにアクセスできることを前提としています。

https://echo-api.3scale.net にホストされたシンプルなテスト API (Echo API) を使用して、以下に示す例を実行します。

API を呼び出す簡単なアプリケーション (例: CCurious echo) が必要です。例としては、コマンドラインコール、モバイルアプリ、またはリモートサーバーを呼び出すことのできる何らかのコード等のシンプルなアプリケーションが挙げられます。

Echo API の図

2.2. 3scale への Echo API の接続

Echo API を 3scale に接続するには、次の 3 つの簡単な手順に従う必要があります。

  1. 3scale 管理ポータルにアクセスし、最初のプランとメトリクス、および最初の API キーを設定します。
  2. ステージング環境で API ゲートウェイを使用して API を 3scale と統合します (開発のみ)。
  3. API エンドポイントを 3scale のメソッドとメトリクスにマッピングします。

2.2.1. API の定義と最初の API キーの作成

3scale 管理ポータル (http://YOURDOMAIN-admin.3scale.net) から、さまざまな設定機能にアクセスすることができます。ここでは、API をデプロイするのに必要な最低限の設定にフォーカスします。

  1. API の定義: メトリクスおよびメソッドを追加する。
  2. API の使用に適用する制御を設定する。
  3. Audience > Accounts > Listing の順に移動し、新たな開発者アカウントおよび API クレデンシャルを作成する。

2.2.1.1. API の定義: メトリクスおよびメソッドの追加

ここでは、メソッドおよびメトリクスを必要なだけ追加することができます。デフォルトでは、お使いのサービスのすべてのプランで使用することができます。

新しいメソッドを作成

メソッドおよびメトリクスの追加方法に関する詳細は、3scale での API の定義 に関するドキュメントを参照してください。

ここでのシンプルなテストでは、hits にメソッドを 2 つだけ追加し、システム名を以下のように設定します。

  • gethello
  • getgoodbye
Hello world の例

2.2.1.2. API の使用に対する制御の設定

メトリクス/メソッドを作成するのに加えて、それぞれのプランで API の使用メトリクスに制御を追加することもできます。この API の例に、新たなアプリケーションプランを作成します。[your_API_name] > Overview > Create Application Plan の順に移動してください。

Create application plan

表示されるフォームで、希望の名前 (例: HelloEchoTest) およびシステム名を指定します。続いて Create Application Plan ボタンをクリックします。

Echo API 適用プラン

上記の手順を実施すると、アプリケーションプランのリストが表示されるはずです。プラン HelloEchoTest をクリックし、メトリクスおよびメソッドの制御を作成します。前項の手順で定義したすべてのメトリクスおよびメソッドが表示されているはずです。いずれかのメトリクスまたはメソッドの Limits アイコンをクリックします。Hits メトリクスに制御を追加すると、Hits の全メソッドにルールが適用されます。メソッドに制御を追加した場合には、ルールはそのメソッドにしか適用されません。別途、さまざまな制御を設定した異なるプランを作成することができます。

テスト計画の制限

制御により、このプランのアプリケーションが呼び出すことのできる 1 分/時間/日あたりの API コール数が制限されます。

2.2.1.3. 新たな開発者アカウントおよび API クレデンシャルの作成

Audience > Accounts > Listing の順に移動し、Create ボタンをクリックします。

新しいアカウントの作成

API にアクセスする新しい開発者の情報を入力します。

入力情報

Create をクリックしたら、リストから新しいアカウントを選択してホームページに移動します。

Accounts エリアには、API の使用をサインアップしたすべての企業および開発者のリストが表示されます。新しい企業は、管理ポータルから、API から、またはデベロッパーポータルのセルフサービスサインアップにより追加することができます。

新たな開発者アカウントを作成すると、そのアカウントに新しいアプリケーションも作成されます。

See application name

それぞれのアプリケーションは、API にアクセスするための固有のキーを持ちます。そのキーを知るには、アプリケーション名をクリックして API Credentials セクションを確認します。

API キーと変更計画

これらが、Echo API を呼び出すために Curious Echo アプリが使用するキーです。最後のステップとして、アプリケーションの詳細ページの右側の Change Plan のドロップダウンを使用し (上記のスクリーンショットを参照)、前のステップで作成して名前を設定したプラン (この例では Echo Test) を選択して変更を確認します。これにより、新しいプランがこのアプリケーションに適用されます。

これで、最初のアプリケーションの管理システムの設定が完了しました。

2.2.2. ステージング環境での API ゲートウェイを使用したインテグレーション

ご自分の 3scale アカウントにサインインしたら、[your_API_name] > Integration > Configuration の順に移動します。

API ゲートウェイのステージング設定

ステージング環境での API バックエンドのアドレスを設定します。これは、API を実行中のサーバーのアドレスです。次に、API の有効なリソースパスを入力することができます。このパスは、ステージング環境での API ゲートウェイを検証するのに使用されます。その後、Update & test in Staging Environment をクリックします。すべての設定が適切であれば、ステージング領域に緑色の縦線が表示され、接続を確認するために行った完全なテストコールが表示されます。以下に例を示します。

curl "https://api-xxx.staging.apicast.io/hello?user_key=USER_KEY"

USER_KEY は、3scale アカウントへの初回ログイン時に作成されたいずれかのサンプルアプリケーションのキーです。その手順を実施していない場合には、開発者アカウントを作成し、そのアカウント内にアプリケーションを作成します。

アプリケーションのクレデンシャルを使用せずに統合した API の呼び出しを試み、次に無効なクレデンシャルを使用してみます。認証されたら、定義した流量制御の範囲内および範囲外で、API コールを送信します。

2.2.3. 特定メソッドのトラフィックの把握

デフォルトでは、非常にシンプルなマッピングルールから作業を開始します。

Mapping Rules

このルールは、/ (スラッシュ) で始まるすべての GET リクエストが、メトリクス hits の値を 1 つ増やすという意味です。このルールは一般的すぎるので、通常は削除されます。マッピングルールの管理方法について詳しく知るには、ドキュメントの関連ページ を参照してください。

マッピングルールでは、API に対するリクエストに応じてどのメトリクス (およびメソッド) を報告するかを定義します。以下の例は、Echo API のルールです。

プロキシーマッピング Echo API

API エンドポイントを、以前のアプリケーションプランのセクションで定義したメソッドとマッチングさせます。

  • /hello
  • /goodbye

これで、マッピングされたメソッドに対してトラフィックのテストを繰り返し、管理ポータルの Analytics セクションでそのトラフィックを確認することができます。

2.3. 結果

これで、ご自分の API が 3scale に接続されました。API 管理機能を適用して、API のトラフィックを管理したり追跡したりできるようになりました。

2.4. 終わりに

本ガイドの例では、簡素化のために管理ポータルから新しい API クレデンシャルを生成しています。デベロッパーポータルを設定したら、新たな開発者はこれを使用して自動的にアカウントを作成し、クレデンシャルを受け取ることができます。

2.5. ヘルプ

API の設定でトラブルが生じたら、トラブルシューティングのチュートリアル を確認してください。

関連情報

ステージング環境で 3scale とのインテグレーションをテストしたので、実稼働環境にデプロイするオプションを選択することができます。APIcast ゲートウェイに関する詳しい情報は、以下のドキュメントを参照してください。