---
schema_version: "1"
id: 057854cdf9cf041575d6089c6e0a3e710ad8b398918a0e0ebe1a376b5e7b3618
title: ポリシーと SLA 層の適用方法
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/mule-gateway/policies-mule3-tutorial-manage-an-api.md
canonical_url: https://docs.mulesoft.com/jp/mule-gateway/policies-mule3-tutorial-manage-an-api
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 810c2d8dc38d6480d02a5ebdaa554d93cf981d30eb8a9d97ec5ba4bbc3b9c8fa
description: MuleSoft Documentation Site
latest: true
---
# ポリシーと SLA 層の適用方法

この手順では、ポリシーを設定して API に適用します。必要に応じて SLA 層をセットアップできます。 この手順では、ポリシーを設定して適用する方法を説明します (例: レート制限 SLA ベースのポリシー)。

## [](#sla-層について)SLA 層について

アプリケーションの SLA レベルに応じてアプリケーションから API へのコールを 3 要求または 5 要求に制限する、次のようなアクセス層を作成します。

- 要求を 3 回/分に制限する層。承認を必要としない。
- 要求を 5 回/分に制限する層。API にアクセスするアプリケーションの API バージョンオーナーの承認を必要とする。

この手順では、アクセスを 1 つの API リソースに制限します。その他のリソースへのアクセスは無制限です。アプリケーションが保護されたリソースをコンシュームしようとすると、ポリシーが適用されます。要求には、期待されるユーザー名とパスワードが含まれている必要があります。アプリケーションから API への SLA 制限内で繰り返されるコールは成功しますが、それ以外は失敗します。

## [](#必要な-raml-スニペットの追加方法)必要な RAML スニペットの追加方法

API のタイプが RAML なのか HTTP なのかを確認します (不明な場合)。API バージョンの詳細ページの \[Status (状況)\] で \[Configure Endpoint (エンドポイントの設定)\] をクリックし、\[Type (タイプ)\] が RAML であることを確認します。

SLA ベースのレート制限やその他の特定のポリシーを使用する場合は、RAML API に特定の RAML スニペットを追加する必要があります。API インスタンスの適用済みポリシーのリストに、ポリシーに必要な RAML スニペットへのリンクが表示されます。

レート制限ポリシーはクライアント ID ベースなので、クライアント ID とシークレットをクエリパラメーターとしてセットアップします。ポリシーを適用するための traits (特性) を RAML に追加します。RAML を次のように編集します。

1. ルートレベルに ​`traits:`​ というセクションを追加し、クエリパラメーターを定義します。
    
    ```yaml
    traits:
      - client-id-required:
          queryParameters:
           client_id:
            type: string
          client_secret:
            type: string
    ```
2. 各メソッドの trait を参照し、各メソッドに次のクエリパラメーターが必要であることを指定します。RAML ファイル内の各メソッドの後に、​`is: [client-id-required]`​ を追加します。次に例を示します。
    
    ```yaml
    /users:
      get:
        is: [client-id-required]
        description: Gets a list of JSONPlaceholder users.
    ```

## [](#層の追加方法)層の追加方法

1. API Manager の \[API Administration (API 管理)\] で、バージョンをクリックします。
2. API がリソースレベルのポリシーをサポートすることを確認します。API バージョンの詳細ページの \[Status (状況)\] で \[Configure Endpoint (エンドポイントの設定)\] をクリックし、\[Type (タイプ)\] が RAML であることを確認します。
3. \[SLA Tiers (SLA 層)\] を選択し、\[Add SLA Tier (SLA 層を追加)\] をクリックします。次のように層に制限をセットアップします。
    
    - Name (名前): Free (無料)
    - Approval (承認): Automatic (自動)
    - 制限
        
        - \# of Reqs (要求数): 3
        - Time Period (期間): 1
        - Time Unit (時間単位): Minute (分)
4. \[Add SLA Tier (SLA 層を追加)\] を再度クリックし、次のように層に制限をセットアップします。
    
    - Name (名前): Premium (プレミアム)
    - Approval (承認): Manual (手動)
    - 制限
        
        - \# of Reqs (要求数): 5
        - Time Period (期間): 1
        - Time Unit (時間単位): Minute (分)

## [](#ポリシーの適用方法)ポリシーの適用方法

この手順では、上記のとおり SLA 層を追加し終わったところか、API Manager > \[API Administration (API 管理)\] に移動したことを前提とします。後者の場合は、API インスタンスをクリックし、次の手順に従ってポリシーを適用します。

1. \[Policies (ポリシー)\] を選択します。
2. \[Apply New Policy (新規ポリシーを適用)\] をクリックし、\[Select Policy (ポリシーを選択)\] で \[Rate Limiting - SLA-based policy (レート制限 - SLA ベースのポリシー)\] を選択して \[Configure (設定)\] をクリックします。または、\[Rate Limiting (レート制限)\] > \[Configure Policy (ポリシーを設定)\] を選択します。
3. \[Limits (制限)\] で、要求数、期間、測定単位を設定します。
4. API の ​`/users`​ リソースでポリシーを設定します。
    
    - \[Method & Resource Conditions (メソッドとリソースの条件)\] で、\[Apply Configurations to Specific Methods & Resources (特定のメソッドとリソースに設定を適用)\] を選択します。
    - \[Method (メソッド)\] で \[GET\] を選択します。
    - \[URI Template Regex (URI テンプレート正規表現)\] に ​`/users`​ と入力して ​`/users`​ リソースのみにレート制限を適用するか、​`.*`​ と入力して API のすべてのリソース URI にレート制限を適用します。
    - Mule 4 の場合は、\[Expose Headers (ヘッダーを公開)\] チェックボックスをオンにして、トークン適用およびレート制限ポリシーのヘッダー伝播を設定します。
    - \[Apply (適用)\] をクリックします。
        
        API に RAML 仕様が添付されている場合、\[Preview Resource Matching (リソース一致をプレビュー)\] をクリックして、検索条件が適用されるリソースを確認します。

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

- [RAML スニペットへのリンク](https://docs.mulesoft.com/jp/api-manager/latest/prepare-raml-task)
- [レート制限および調整](https://docs.mulesoft.com/jp/mule-gateway/policies-mule3-rate-limiting-and-throttling)
- [Rate Limiting and Throttling - SLA-Based Policies (レート制限および調整 - SLA ベースのポリシー)](https://docs.mulesoft.com/jp/mule-gateway/policies-mule3-rate-limiting-and-throttling-sla-based-policies)
- [SLA 層の削除方法](https://docs.mulesoft.com/jp/api-manager/latest/defining-sla-tiers)