RAML/OAS ベースの API の特性およびポリシーの概念

ユーザが参照しなければならない可能性がある RAML または OAS 定義を API が公開する場合、API 定義には、API へのコールで想定されるすべての要素が確実に記述されている必要があります。
たとえば、クライアント ID ベースのポリシーを適用すると、API に対するすべての要求にクライアント ID とクライアントシークレット (デフォルトでクエリパラメータとして想定される) が含まれていることを意味します。ユーザ要求が却下されることを防止するため、RAML ルートに特性を作成し、API のすべての操作でこの特性を参照します。特性は次のようになります。

traits:
  - client-id-required:
      queryParameters:
        client_id:
          type: string
        client_secret:
          type: string

次に、個々の操作で次のようにこの特性を適用できます。

/products:
  get:
    is: [client-id-required]
    description: Gets a list of all the inventory products.

ポリシー仕様スニペットの取得

  1. API ダッシュボードで、​[Policies (ポリシー)]​ をクリックします。

    ポリシーのリストの RAML スニペットリンクには、API 仕様に追加する必要がある RAML trait または OAS コンポーネントが含まれています。

    raml snippet
  2. [API Specification Snippet (API 仕様スニペット)]​ をクリックします。

  3. 仕様に適合する API タイプを選択します。

    • API RAM バージョンに適合する RAML 0.8 または RAML 1.0。

      snippet rate limiting
    • または API OAS バージョンに適合する OAS 2.0。

      prepare raml task 2b676

      OAS スニペットは、すべてのポリシーバージョンで表示されるわけではありません。
      次の表で、OAS スニペットが表示されるポリシーとバージョンを確認してください。

      ポリシー バージョン

      レート制限 - SLA ベース

      v1.1.2 以降

      Mule OAuth プロバイダを使用する OAuth 2.0 アクセストークン適用

      v1.1.3 以降

      OpenAM アクセストークン適用

      v1.1.3 以降

      OpenID Connect アクセストークン適用

      v1.1.3 以降

      PingFederate アクセストークン適用

      v1.1.3 以降

      クライアント ID 適用

      v1.1.3 以降

  4. API を編集してコードを追加します。

  5. API を再デプロイします。

Was this article helpful?

💙 Thanks for your feedback!